Öffentliche Agent-Entdeckung
Nutze diese Beispiele, um das JSON zu gestalten, das ein anderer A2A-Client abruft, bevor er entscheidet, ob dein Agent eine Aufgabe erledigen kann.
6 kopierfertige JSON-Vorlagen · A2A v1.0
Durchsuche praktische A2A-v1.0-Vorlagen, verstehe ihre Designentscheidungen, und passe dann jedes Beispiel für deinen eigenen Agenten an.
Nutze diese Beispiele, um das JSON zu gestalten, das ein anderer A2A-Client abruft, bevor er entscheidet, ob dein Agent eine Aufgabe erledigen kann.
Passe Provider, Skills, Tags, Capabilities, und Sicherheitsmetadaten an, damit Prüfer verstehen, was der Agent tut und wer ihn betreibt.
Standardisiere Endpunkt-, Authentifizierungs-, und Skill-Beschreibungen über interne Agenten hinweg, bevor Teams sie in Workflows integrieren.
JSON-Vorlagen
Bearbeitet Produktfragen, Bestellabfragen, Retouren, und Eskalations-Übergaben.
Warum es so aufgebaut ist
{
"name": "Kundensupport-Agent",
"description": "Beantwortet Fragen des Kundensupports, ruft den Bestellkontext ab und leitet ungelöste Probleme an ein menschliches Team weiter.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/customer-support",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Beispiel Inc.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "resolve-customer-support-request",
"name": "Lösen Sie die Kundensupportanfrage",
"description": "Klassifiziert eine Kundensupportanfrage, sammelt den erforderlichen Kontext, schlägt eine Lösung vor und eskaliert, wenn das Vertrauen gering ist.",
"tags": [
"support",
"orders",
"returns"
],
"examples": [
"Helfen Sie mir, meine Bestellung zurückzugeben."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/customer-support/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}Findet verfügbare Termine und bereitet Buchungsbestätigungen vor.
Warum es so aufgebaut ist
{
"name": "Buchungs-Agent",
"description": "Sucht nach Verfügbarkeit, schlägt Buchungsoptionen vor und bereitet Terminreservierungen zur Genehmigung vor.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/booking",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Beispiel Inc.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "find-and-prepare-booking",
"name": "Buchung finden und vorbereiten",
"description": "Überprüft die Ressourcenverfügbarkeit, vergleicht Buchungsfenster und gibt einen strukturierten Reservierungsvorschlag zurück.",
"tags": [
"booking",
"calendar",
"availability"
],
"examples": [
"Finden Sie morgen Nachmittag einen 30-minütigen Termin."
]
}
],
"securitySchemes": {
"apiKey": {
"apiKeySecurityScheme": {
"location": "header",
"name": "X-API-Key"
}
}
},
"security": [
{
"apiKey": []
}
]
}Vergleicht Produkte, Verfügbarkeit, Preise, und Kaufbeschränkungen.
Warum es so aufgebaut ist
{
"name": "Shopping-Agent",
"description": "Vergleicht Produkte mit Benutzereinschränkungen und gibt bewertete Kaufoptionen mit Kompromissen zurück.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/shopping",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Beispiel Inc.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "compare-shopping-options",
"name": "Vergleichen Sie Einkaufsmöglichkeiten",
"description": "Bewertet Kandidatenprodukte, filtert nach Einschränkungen und gibt bewertete Empfehlungen mit Begründung zurück.",
"tags": [
"shopping",
"commerce",
"recommendations"
],
"examples": [
"Vergleichen Sie leichte Laptops unter 1.200 $."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/shopping/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}Prüft Code-Aufgaben, schlägt Patches vor, und erklärt Implementierungsentscheidungen.
Warum es so aufgebaut ist
{
"name": "Coding-Agent",
"description": "Hilft bei Softwareentwicklungsaufgaben, indem er Code analysiert, Änderungen vorschlägt und Implementierungshinweise zurücksendet.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/coding",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Beispiel Inc.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extendedAgentCard": true
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "implement-code-change",
"name": "Codeänderung implementieren",
"description": "Liest eine Codierungsanfrage, prüft relevante Dateien, gibt einen Patch-Vorschlag zurück und fasst die Überprüfungsschritte zusammen.",
"tags": [
"coding",
"review",
"patches"
],
"examples": [
"Fügen Sie der Benutzer-API Paginierung hinzu."
]
}
],
"securitySchemes": {
"apiKey": {
"apiKeySecurityScheme": {
"location": "header",
"name": "X-API-Key"
}
}
},
"security": [
{
"apiKey": []
}
]
}Sammelt Quellen, extrahiert Belege, und liefert strukturierte Rechercheergebnisse.
Warum es so aufgebaut ist
{
"name": "Recherche-Agent",
"description": "Sammelt Quellenmaterial, extrahiert Beweise und erstellt strukturierte Forschungsnotizen mit Zitaten.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/research",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Beispiel Inc.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "prepare-research-brief",
"name": "Bereiten Sie einen Forschungsbericht vor",
"description": "Durchsucht genehmigte Quellen, extrahiert Behauptungen und Beweise und gibt einen prägnanten Forschungsbericht zurück.",
"tags": [
"research",
"evidence",
"citations"
],
"examples": [
"Bereiten Sie einen zitierten Brief zur Politik im Bereich erneuerbare Energien vor."
]
}
]
}Koordiniert Genehmigungen, Statusprüfungen, und Back-Office-Workflow-Updates.
Warum es so aufgebaut ist
{
"name": "Interner Workflow-Agent",
"description": "Koordiniert interne Genehmigungen, prüft den Systemstatus und bereitet Workflow-Updates für Betriebsteams vor.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/workflow",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Beispiel Inc.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"extendedAgentCard": true
},
"defaultInputModes": [
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "coordinate-internal-workflow",
"name": "Koordinieren Sie den internen Arbeitsablauf",
"description": "Empfängt Workflowabsichten, prüft Richtlinienanforderungen, holt Genehmigungen ein und meldet den endgültigen Status.",
"tags": [
"workflow",
"operations",
"approval"
],
"examples": [
"Fordern Sie die Genehmigung zur Bereitstellung der Gehaltsabrechnungsaktualisierung an."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/workflow/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}Selbstbewusst anpassen
Jedes Agent Card-Beispiel ist absichtlich vollständig genug zum Kopieren, aber die Agent Card sollte nicht unverändert veröffentlicht werden. Behandle sie als Feldkarte für deinen eigenen A2A-Server: ersetze Identität, Endpunkt, Provider, Authentifizierung, Capabilities, Modi, und Skill-Details durch Produktionswerte.
Die stärksten Agent Cards erklären die Aufgabengrenze des Agenten sowohl in einfacher Sprache als auch in maschinenlesbaren Metadaten. Ein Client sollte erkennen können, was der Agent kann, was nicht, welche URL aufzurufen ist, und ob Credentials erforderlich sind.
Ersetze jede example.com-URL durch deinen bereitgestellten A2A-Endpunkt und die Provider-Website.
Schreibe Skill-Name, Beschreibung, Tags (in v1.0 erforderlich), und Beispiele für die tatsächliche Aufgabengrenze neu.
Setze provider.organization und erhöhe die Top-Level-version, wann immer sich der Agent Card ändert.
Entferne Authentifizierungsfelder nur, wenn der Endpunkt absichtlich öffentlich ist.
Halte defaultInputModes und defaultOutputModes mit dem in Einklang, was dein Server tatsächlich akzeptiert und zurückgibt.
Validiere das finale JSON und veröffentliche es unter /.well-known/agent-card.json auf deiner Service-Domain.
Bereit zum Bauen
Öffne ein beliebiges Muster im Agent Card Generator, überprüfe das JSON, und validiere es vor der Veröffentlichung.