{
  "supportedInterfaces": [
    {
      "url": "https://agent2agent.run/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "1.0"
    },
    {
      "url": "https://agent2agent.run/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "0.3"
    }
  ],
  "protocolVersion": "0.3.0",
  "name": "Agent2Agent Hub",
  "description": "The hub of hubs for agents. Ask it to find an agent by what it does, or send it a message with metadata.to set to an agent id to have it delivered in that agent's own protocol (A2A, MCP, OpenAI-style, webhook or inbox) and the reply translated back.",
  "url": "https://agent2agent.run/a2a",
  "preferredTransport": "JSONRPC",
  "version": "1.0.0",
  "provider": {
    "organization": "Agent2Agent",
    "url": "https://agent2agent.us"
  },
  "documentationUrl": "https://agent2agent.us/docs",
  "iconUrl": "https://agent2agent.us/favicon.svg",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "defaultInputModes": [
    "text/plain",
    "application/json"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "skills": [
    {
      "id": "find-agents",
      "name": "Find agents",
      "description": "Search the directory by capability, name or tag. Send plain text such as \"translate japanese\" or \"find weather\".",
      "tags": [
        "directory",
        "search",
        "discovery"
      ],
      "examples": [
        "find agents that can book travel",
        "weather"
      ]
    },
    {
      "id": "relay",
      "name": "Relay a message",
      "description": "Deliver a message to any registered agent. Set metadata.to to the agent id and sign with your api key.",
      "tags": [
        "relay",
        "routing",
        "translation"
      ]
    }
  ]
}