Dein erstes Agent Plugin erstellen: Eine Schritt-für-Schritt-Anleitung
Dein erstes Agent Plugin erstellen: Eine Schritt-für-Schritt-Anleitung
Agent Plugins (v1.0.0) ist der portable Verpackungsstandard für Agenten-Komponenten — Skills und MCP-Server — der über kompatible Clients hinweg funktioniert. In dieser Anleitung erstellst du ein echtes, spezifikationskonformes Plugin von Grund auf: ein Plugin, das einen Skill und einen MCP-Server bereitstellt, und validierst es anschließend gegen das offizielle Schema.
Schritt 1: Das Paket-Layout erstellen
Ein Plugin ist einfach ein Verzeichnis. Erstelle es mit den beiden erforderlichen Bestandteilen:
my-plugin/
├── plugin.json
├── skills/
│ └── summarize/
│ └── SKILL.md
└── mcp.json
Schritt 2: Das Manifest schreiben
plugin.json ist die einzige erforderliche Datei. Das Manifest-Schema ist geschlossen — portable Felder auf oberster Ebene sind auf einen festen Satz beschränkt:
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "summarize.tools",
"version": "1.0.0",
"description": "Skills und Server zum Zusammenfassen von Dokumenten.",
"author": {
"name": "Dein Name",
"url": "https://example.com"
},
"homepage": "https://example.com/summarize-tools",
"repository": "https://github.com/you/summarize-tools",
"license": "MIT",
"keywords": ["summarization", "documents", "llm"]
}
Nur $schema und name sind erforderlich. Alles andere ist optional, aber empfohlen: version (SemVer), description, author, homepage, repository, license (SPDX) und keywords für die Auffindbarkeit.
Hinweis: Das Schema ist absichtlich geschlossen. Clientspezifische Einstellungen gehören in Erweiterungs-Namespaces, nicht in Felder auf oberster Ebene.
Schritt 3: Einen Skill hinzufügen
Skills befinden sich in skills/ und folgen der Agent Skills-Spezifikation. Jedes direkte Unterverzeichnis, das eine SKILL.md-Datei enthält, ist ein Skill:
skills/
└── summarize/
├── SKILL.md
├── scripts/
│ └── summarize.py
└── references/
└── guidelines.md
Eine minimale SKILL.md:
---
name: summarize
description: Fasse ein Dokument in Kernpunkten zusammen. Verwende dies, wenn der Nutzer bittet, einen langen Text zu komprimieren.
---
# Zusammenfassen
1. Lies das Dokument aus der Nutzereingabe.
2. Extrahiere die Hauptargumente, unterstützende Punkte und Aktionspunkte.
3. Schreibe die Zusammenfassung als Markdown, maximal 10 Aufzählungspunkte.
## Skripte
- `scripts/summarize.py` — CLI, die einen Dateipfad entgegennimmt und eine Zusammenfassung ausgibt.
Clients entdecken Skills, indem sie skills/*/SKILL.md durchsuchen; sie gehen nicht tiefer, also behalte einen Skill pro direktem Unterverzeichnis bei.
Schritt 4: Einen MCP-Server hinzufügen
Wenn dein Plugin einen MCP-Server bereitstellt, beschreibe ihn in mcp.json. Das Format unterstützt stdio, Streamable HTTP und Legacy HTTP+SSE-Transports:
{
"servers": {
"summarize": {
"command": "python",
"args": ["scripts/mcp_server.py"],
"env": {}
}
}
}
Clients mappen dieses portable Format auf ihre native Konfiguration — die Feldnamen müssen nicht mit dem internen Format eines Clients übereinstimmen.
Schritt 5: (Optional) Client-Erweiterungen hinzufügen
Möchtest du Verhalten für einen bestimmten Client hinzufügen, ohne den Kern zu forken? Verwende ein Reverse-Domain-Namespace-Verzeichnis, das nach deinem Client benannt ist, z.B. com.example.client/hooks/hooks.json. Clients suchen nach ihrem Namespace-Verzeichnis im Plugin-Root; unbekannte Namespaces werden ignoriert.
Schritt 6: Validieren
Vor der Verteilung validiere dein Manifest:
$schemamuss auf die offizielle Schema-URL verweisen:https://agent-plugins.org/schemas/1.0.0/plugin.schema.json.namemuss vorhanden und nicht leer sein — ein fehlendes Pflichtfeld macht das gesamte Plugin ungültig und Clients müssen es ablehnen.- Überprüfe, ob deine
SKILL.md-Frontmatter mindestensnameunddescriptionenthält. - Validiere
mcp.jsongegen das JSON-Schema der Spezifikation (veröffentlicht auf agent-plugins.org/schemas).
Du kannst auch das Beispiel-Plugin aus dem Spezifikations-Repository (agentplugins/agent-plugins-example) als kanonische Referenz verwenden oder dein Plugin durch die Verzeichniseinreichung von AIMCP laufen lassen — es validiert gegen das offizielle Schema und meldet Komponentenanzahlen.
Schritt 7: Verteilen
Ein Agent Plugin ist ein Verzeichnis, daher ist die Verteilung flexibel: Übertrage es in ein GitHub-Repository, veröffentliche es in einem Marketplace oder teile es direkt. Kompatible Clients entdecken und laden Plugins konsistent, unabhängig vom Transport.
Nächste Schritte
- Lese die vollständige Agent Plugins-Spezifikation für Konformitätsdetails.
- Erkunde die Anleitungen zum Erstellen von Skills und MCP-Servern.
- Durchsuche AIMCPs Agent Plugins-Verzeichnis, um Beispiele aus der Praxis zu sehen — und füge dann dein eigenes hinzu.
