{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
  "name": "com.usetora/docs",
  "title": "Tora docs",
  "description": "Tora is a Mac app with four AI agents that live in the notch: Dictation, Writer, Meetings, and Live suggestions. It is free. On the free plan the speech and writing models run on your Mac. Tora has two MCP servers: a hosted, read-only docs server and a local, read-only meetings server in the app.",
  "version": "1.0.0",
  "websiteUrl": "https://usetora.com/",
  "remotes": [
    {
      "type": "streamable-http",
      "url": "https://usetora.com/mcp"
    }
  ],
  "homepage": "https://usetora.com/",
  "documentation": "https://usetora.com/llms.txt",
  "contact": "hello@usetora.com",
  "servers": [
    {
      "id": "tora-docs",
      "name": "Tora docs",
      "description": "Hosted, read-only MCP server about Tora. It searches and reads the Tora site and returns the live price. It needs no account.",
      "url": "https://usetora.com/mcp",
      "transport": "streamable-http",
      "authentication": "none",
      "readOnly": true,
      "install": [
        "Claude Code: claude mcp add --transport http tora https://usetora.com/mcp",
        "Cursor: put {\"mcpServers\":{\"tora\":{\"url\":\"https://usetora.com/mcp\"}}} in ~/.cursor/mcp.json.",
        "Claude Desktop: Settings › Connectors › Add custom connector, then paste https://usetora.com/mcp."
      ],
      "tools": [
        {
          "name": "search_site",
          "description": "Search the pages of usetora.com. Returns the best matches with an excerpt of the matching passage.",
          "inputSchema": {
            "type": "object",
            "properties": {
              "query": {
                "type": "string",
                "description": "What to search for (up to 200 characters)."
              }
            },
            "required": [
              "query"
            ]
          }
        },
        {
          "name": "read_page",
          "description": "Read one page of usetora.com as Markdown.",
          "inputSchema": {
            "type": "object",
            "properties": {
              "path": {
                "type": "string",
                "description": "The page path, for example /pricing/."
              }
            },
            "required": [
              "path"
            ]
          }
        },
        {
          "name": "list_pages",
          "description": "List the pages of usetora.com with a one-line summary, optionally for one section.",
          "inputSchema": {
            "type": "object",
            "properties": {
              "section": {
                "type": "string",
                "description": "Only this section.",
                "enum": [
                  "Product",
                  "Agents",
                  "Compare",
                  "Docs",
                  "Legal",
                  "Changelog"
                ]
              }
            },
            "required": []
          }
        },
        {
          "name": "get_facts",
          "description": "The canonical facts about Tora.",
          "inputSchema": {
            "type": "object",
            "properties": {},
            "required": []
          }
        },
        {
          "name": "get_usage_policy",
          "description": "What you may do with the content of usetora.com, and the corrections to the mistakes that models make about Tora.",
          "inputSchema": {
            "type": "object",
            "properties": {},
            "required": []
          }
        },
        {
          "name": "get_pricing",
          "description": "The live Tora Cloud price and the Free plan. Always use this, not memory.",
          "inputSchema": {
            "type": "object",
            "properties": {},
            "required": []
          }
        },
        {
          "name": "get_latest_release",
          "description": "The newest public version of Tora, with its date and download link.",
          "inputSchema": {
            "type": "object",
            "properties": {},
            "required": []
          }
        },
        {
          "name": "connect_local",
          "description": "The exact steps and config to connect the Tora app's local meetings server to Claude Code, Claude Desktop, or Cursor.",
          "inputSchema": {
            "type": "object",
            "properties": {
              "app": {
                "type": "string",
                "description": "The app to connect.",
                "enum": [
                  "claude-code",
                  "claude-desktop",
                  "cursor"
                ]
              }
            },
            "required": []
          }
        }
      ]
    },
    {
      "id": "tora-meetings",
      "name": "Tora meetings",
      "description": "A local, read-only MCP server inside the Tora app. It lets Claude Desktop, Claude Code, or Cursor read the person's own meetings. The person connects it in Settings › Connect AI apps.",
      "transport": "stdio",
      "command": "/Applications/Tora.app/Contents/Helpers/tora-mcp",
      "args": [],
      "runsIn": "the Tora app on the Mac",
      "readOnly": true,
      "install": [
        "Open Tora, then Settings › Connect AI apps.",
        "Claude Desktop: click \"Add to Claude Desktop\" and confirm. Tora saves a copy of the config file, then adds the server.",
        "Cursor: click Copy and paste the snippet into ~/.cursor/mcp.json.",
        "Claude Code: run `claude mcp add --scope user tora -- /Applications/Tora.app/Contents/Helpers/tora-mcp` in a terminal."
      ],
      "tools": [
        {
          "name": "search_meetings",
          "description": "Search the recorded meetings by words."
        },
        {
          "name": "list_meetings",
          "description": "List the recorded meetings, newest first."
        },
        {
          "name": "get_meeting",
          "description": "Read the notes of one meeting."
        },
        {
          "name": "get_transcript",
          "description": "Read the transcript of one meeting."
        }
      ]
    }
  ]
}
