A2A agent card JSON templates with schema validation and examples for different agent types. Use when creating agent cards, implementing A2A protocol discovery, setting up agent metadata, configuring authentication schemes, defining agent capabilities, or when user mentions agent card, agent discovery, A2A metadata, service endpoint configuration, or agent authentication setup.
This skill is limited to using the following tools:
examples/calculator-agent.mdexamples/data-analysis-agent.mdexamples/translation-agent.mdscripts/generate-agent-card.shscripts/validate-agent-card.shtemplates/authenticated-agent-card.jsontemplates/basic-agent-card.jsontemplates/multi-capability-agent-card.jsontemplates/schema.jsontemplates/streaming-agent-card.jsonPurpose: Provide reusable JSON templates for creating A2A (Agent-to-Agent) protocol agent cards following the official specification.
Activation Triggers:
Key Resources:
templates/schema.json - Complete JSON schema for validationtemplates/basic-agent-card.json - Simple agent card templatetemplates/multi-capability-agent-card.json - Agent with multiple skillstemplates/authenticated-agent-card.json - Agent with auth requirementstemplates/streaming-agent-card.json - Agent with streaming supportexamples/ - Real-world agent card examplesscripts/validate-agent-card.sh - Schema validation scriptscripts/generate-agent-card.sh - Interactive card generatorscripts/test-agent-card.sh - Format and structure testingCRITICAL: When generating any configuration files or code:
❌ NEVER hardcode actual API keys or secrets ❌ NEVER include real credentials in examples ❌ NEVER commit sensitive values to git
✅ ALWAYS use placeholders: your_service_key_here
✅ ALWAYS create .env.example with placeholders only
✅ ALWAYS add .env* to .gitignore (except .env.example)
✅ ALWAYS read from environment variables in code
✅ ALWAYS document where to obtain keys
Placeholder format: {service}_{env}_your_key_here
Basic Identity:
id - Unique identifier (URI or UUID)name - Human-readable display nameprotocolVersion - A2A protocol version (e.g., "0.3")serviceEndpoint - Base URL for agent's A2A serviceprovider - Organization information (name, contactEmail, url)Security:
securitySchemes - Authentication scheme definitionssecurity - Required auth combinationsCapabilities:
capabilities - Feature flags (streaming, pushNotifications)description - Detailed agent purpose explanationlogo - URL to logo imageversion - Agent implementation versionskills - Array of agent capabilities with schemasextensions - Extension support declarationsmetadata - Custom key-value pairsUse for: Simple agents with minimal configuration
Template: templates/basic-agent-card.json
Features:
Use for: Agents with multiple skills and capabilities
Template: templates/multi-capability-agent-card.json
Features:
Use for: Agents with complex authentication requirements
Template: templates/authenticated-agent-card.json
Features:
Use for: Agents supporting real-time updates
Template: templates/streaming-agent-card.json
Features:
API Key:
{
"type": "apiKey",
"name": "X-API-Key",
"in": "header"
}
Bearer Token:
{
"type": "http",
"scheme": "bearer"
}
OAuth 2.0:
{
"type": "oauth2",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://provider.example/oauth/authorize",
"tokenUrl": "https://provider.example/oauth/token",
"scopes": {
"read": "Read access",
"write": "Write access"
}
}
}
}
Basic Auth:
{
"type": "http",
"scheme": "basic"
}
Choose template based on agent requirements:
# List available templates
ls templates/
# View template content
cat templates/basic-agent-card.json
Use interactive generator:
./scripts/generate-agent-card.sh
# Or specify template directly
./scripts/generate-agent-card.sh --template basic
Generator prompts for:
Validate against schema:
# Validate structure and required fields
./scripts/validate-agent-card.sh agent-card.json
# Test format and completeness
./scripts/test-agent-card.sh agent-card.json
Validation checks:
Host at standard location:
https://<base_url>/.well-known/agent.json
Or alternative:
https://<base_url>/.well-known/agent-card.json
Each skill in the agent card includes:
{
"name": "skill-identifier",
"description": "What the skill does",
"inputSchema": {
"type": "object",
"properties": {
"param1": {"type": "string"}
},
"required": ["param1"]
},
"outputSchema": {
"type": "object",
"properties": {
"result": {"type": "string"}
}
},
"inputModes": ["text/plain", "application/json"],
"outputModes": ["application/json"],
"tags": ["category", "feature"],
"examples": [
{
"input": {"param1": "example"},
"output": {"result": "example output"}
}
]
}
Purpose: Validate agent card against JSON schema Usage:
./scripts/validate-agent-card.sh <agent-card.json>
Checks:
Purpose: Interactive agent card generator Usage:
./scripts/generate-agent-card.sh [--template TEMPLATE]
Options:
--template basic|multi|authenticated|streaming--output FILE - Output file path--interactive - Prompt for all valuesPurpose: Test agent card format and structure Usage:
./scripts/test-agent-card.sh <agent-card.json>
Tests:
examples/calculator-agent.md - Simple math calculation agent
examples/translation-agent.md - Multi-language translation service
examples/data-analysis-agent.md - Complex data processing agent
Each example includes:
✓ Use standard well-known URI - /.well-known/agent.json
✓ Include comprehensive descriptions - Help with discovery
✓ Define clear input/output schemas - Enable validation
✓ Specify authentication requirements - Security first
✓ Version your agent cards - Track changes
✓ Test card accessibility - Ensure HTTP GET works
✓ Document all skills - Include examples
✓ Use placeholder credentials - Never hardcode secrets
Issue: Agent card not discovered
Fix: Verify /.well-known/agent.json is accessible via HTTP GET
Issue: Authentication failures
Fix: Check securitySchemes and security match implementation
Issue: Schema validation errors
Fix: Run validate-agent-card.sh to identify missing/invalid fields
Issue: Skills not recognized Fix: Ensure input/output schemas are valid JSON Schema format
A2A Protocol Specification: https://a2a-protocol.org/latest/specification/ Agent Card Concepts: https://agent2agent.info/docs/concepts/agentcard/ JSON Schema Reference: https://json-schema.org/
Supported A2A Protocol Version: 0.3+ Template Version: 1.0.0 Last Updated: 2025-12-20