POST·BUILDY

Dein erstes Agent Plugin erstellen: Eine Schritt-für-Schritt-Anleitung

AIMCP Teamon 22 days ago · 2 min read

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:

  1. $schema muss auf die offizielle Schema-URL verweisen: https://agent-plugins.org/schemas/1.0.0/plugin.schema.json.
  2. name muss vorhanden und nicht leer sein — ein fehlendes Pflichtfeld macht das gesamte Plugin ungültig und Clients müssen es ablehnen.
  3. Überprüfe, ob deine SKILL.md-Frontmatter mindestens name und description enthält.
  4. Validiere mcp.json gegen 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