{
  "@context": "https://schema.org",
  "@type": "WebAPI",
  "name": "Keyspoken MCP server",
  "description": "A Model Context Protocol server with read-only facts about Keyspoken. Send JSON-RPC 2.0 by POST to this URL. No authentication.",
  "url": "https://keyspoken.com/api/mcp",
  "documentation": "https://keyspoken.com/ai",
  "termsOfService": "https://keyspoken.com/terms",
  "provider": {
    "@type": "Organization",
    "name": "Kymata Labs LLC",
    "url": "https://www.kymatalabs.com"
  },
  "transport": "streamable-http",
  "protocolVersions": [
    "2025-11-25",
    "2025-06-18",
    "2025-03-26",
    "2024-11-05"
  ],
  "authentication": "none",
  "serverCard": "https://keyspoken.com/.well-known/mcp.json",
  "tools": [
    {
      "name": "search_keyspoken",
      "description": "Search every fact, question and guide on keyspoken.com. Returns the best matches with a source URL for each.",
      "restEquivalent": "GET /api/ask?q={query}&limit={limit}"
    },
    {
      "name": "get_product_facts",
      "description": "The verified facts about Keyspoken: what it is, who makes it, its status, the voice models, the languages, and what has not been published.",
      "restEquivalent": "GET /ai.json"
    },
    {
      "name": "list_pages",
      "description": "Every public page on keyspoken.com with its title, URL and description.",
      "restEquivalent": "GET /feed.json"
    }
  ],
  "example": {
    "method": "POST",
    "headers": {
      "Content-Type": "application/json",
      "Accept": "application/json, text/event-stream"
    },
    "body": {
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/call",
      "params": {
        "name": "search_keyspoken",
        "arguments": {
          "query": "does it work offline"
        }
      }
    }
  }
}
