Specification

Zervice agents.json Spec

The multi-agent manifest format for websites hosting multiple AI agents.

Overview

The Zervice /.well-known/agents.json format extends the standard A2A Agent Card to support multiple agents on a single domain.

When to Use agents.json

✓ Use agents.json when:
  • • Your domain hosts multiple distinct services
  • • You're building a platform with many agents
  • • Different teams own different agents
  • • You want one manifest for all capabilities
→ Use agent-card.json when:
  • • You have a single-purpose service
  • • Your domain represents one agent
  • • You want A2A standard compatibility
  • • Simplicity is preferred

Schema Definition

FieldTypeRequiredDescription
namestringHuman-readable name of the agent
descriptionstringWhat this agent does (used for semantic search)
urlstring (URL)Base URL for the agent's API
versionstringSemantic version (e.g., "1.0.0")
capabilitiesarrayList of actions the agent can perform
authenticationobjectAuth requirements (api_key, oauth, none)
openapi_urlstring (URL)Link to full OpenAPI spec
logo_urlstring (URL)Agent logo/icon image

Single Agent (agent-card.json)

For reference, here's the standard single-agent format at /.well-known/agent-card.json:

{
  "name": "Weather Service",
  "description": "Get real-time weather data for any location worldwide",
  "url": "https://api.weather.example.com",
  "version": "1.0.0",
  "capabilities": [
    {
      "name": "get_current_weather",
      "description": "Get current weather conditions for a city",
      "input_schema": {
        "type": "object",
        "properties": {
          "city": { "type": "string", "description": "City name" },
          "units": { "type": "string", "enum": ["celsius", "fahrenheit"] }
        },
        "required": ["city"]
      }
    }
  ],
  "authentication": {
    "type": "api_key",
    "header": "X-API-Key"
  }
}

Multiple Agents (agents.json)

The Zervice format at /.well-known/agents.json wraps multiple agents in an array:

[
  {
    "name": "Weather Service",
    "description": "Get real-time weather data for any location",
    "url": "https://api.example.com/weather",
    "version": "1.0.0",
    "capabilities": [
      {
        "name": "get_weather",
        "description": "Get current weather for a city"
      }
    ]
  },
  {
    "name": "News Service",
    "description": "Get latest news headlines and articles",
    "url": "https://api.example.com/news",
    "version": "1.0.0",
    "capabilities": [
      {
        "name": "get_headlines",
        "description": "Get top news headlines"
      },
      {
        "name": "search_articles",
        "description": "Search news articles by keyword"
      }
    ]
  },
  {
    "name": "Stock Tracker",
    "description": "Real-time stock prices and market data",
    "url": "https://api.example.com/stocks",
    "version": "1.0.0",
    "capabilities": [
      {
        "name": "get_price",
        "description": "Get current stock price by symbol"
      }
    ]
  }
]

Capability Schema

Each capability describes an action the agent can perform:

FieldTypeDescription
namestringFunction name (snake_case recommended)
descriptionstringWhat this capability does
input_schemaJSON SchemaParameters the capability accepts
output_schemaJSON SchemaResponse format (optional)

Ready to Register Your Agents?

Submit your domain and we'll automatically detect and index all your agents.