Developer Docs

MCP

Connect Claude, Codex, and other MCP clients to your Alt notes.

Alt ships a hosted MCP (Model Context Protocol) server. OAuth-capable clients can connect with browser sign-in; API keys remain available as a fallback. Both methods enforce the same read-only scopes and workspace boundary.

Start here

Run the interactive setup wizard to store your API key, connect MCP, and hand off to your agent:

npx
npx altalt --mcp-only

1. Connect with OAuth (recommended)

Add the endpoint without headers. Your client discovers Alt's authorization server, registers itself, and opens the browser consent screen.

  • Alt supports Dynamic Client Registration and PKCE, so compatible clients configure OAuth automatically.
  • Review the requested read-only scopes and workspace in the browser before approving access.
  • OAuth is currently available only to Alt administrators. If an older Alt OAuth connection no longer authenticates after this upgrade, remove it from the client and add it again once.

2. Connect your client

Use the URL-only setup for OAuth. No OAuth client ID or secret is required; use an API key only when your client cannot complete OAuth.

MCP URL
https://mcp.altalt.io/mcp

Claude / Claude Desktop / Cowork

Open Customize โ†’ Connectors โ†’ Add custom connector, enter the endpoint above, leave OAuth client credentials empty, then select Connect.

Claude Code

shell
claude mcp add --transport http alt https://mcp.altalt.io/mcp

After adding the server, open /mcp in Claude Code, select Alt, and complete browser authentication.

Codex CLI

shell
codex mcp add alt --url https://mcp.altalt.io/mcp
codex mcp login alt
config.toml
# ~/.codex/config.toml
[mcp_servers.alt]
url = "https://mcp.altalt.io/mcp"

Adding the server normally completes browser authentication. If authentication does not start, run codex mcp login alt.

Cursor

Add to Cursor

One-click URL-only install. In Cursor's MCP settings, select Connect or Needs authentication and approve the browser consent screen.

Other clients and API-key fallback

Start with the URL-only OAuth config. If a client does not support MCP OAuth, use the Bearer API-key config instead.

OAuth
{
  "mcpServers": {
    "alt": {
      "url": "https://mcp.altalt.io/mcp"
    }
  }
}
API key
{
  "mcpServers": {
    "alt": {
      "url": "https://mcp.altalt.io/mcp",
      "headers": { "Authorization": "Bearer alt_live_..." }
    }
  }
}

API keys remain supported for automation and older clients. Create one in the account console, grant only the scopes you need, keep it out of shared config, and see Security for key handling.

3. Tools

Four read-only tools, mirroring the REST API and enforcing the same scopes.

  • list_notes โ€” List the notes visible to the key, with cursor pagination and an updated_after filter (notes:read).
  • get_note โ€” Fetch one note's metadata: title, transcript/summary readiness, timestamps (notes:read).
  • get_note_transcript โ€” Fetch the full transcript as timed, speaker-labeled segments (transcripts:read).
  • get_note_summary โ€” Fetch the AI summary as Markdown (summaries:read).

Notes appear once a recording has ended or a summary has been generated โ€” memo-only notes are not exported. Before content is ready the tools return transcript_not_ready / summary_not_ready, so agents know to retry later.