MCP Integration
MCP overview
Two ways to give an agent native access to your story map — a local stdio server via the CLI, and a remote HTTP server with OAuth.
The Model Context Protocol (MCP) is how Claude Code, Cursor, and other agents get native tool and resource access to your story map — instead of an agent having to read a pasted-in CLAUDE.md and hope it stays current, it can call list_stories or read intentdocs://project/status directly.
IntentDocs ships two separate MCP servers, for two different deployment shapes:
| Local (stdio) | Remote (HTTP) | |
|---|---|---|
| Started by | intent mcp (usually via intent setup) | Already running at intentdocs.com/api/mcp |
| Transport | stdio, spawned as a subprocess | Streamable HTTP |
| Auth | Whatever intent login already stored locally | Bearer token, pb_cli_* prefix, via OAuth 2.1 |
| Setup | Requires Node.js + the intentdocs package installed | No local install — point your agent's MCP config at the URL |
| Tool set | Smaller, mode-gated (core/standard/all) | Full set, always on |
| Resources | Yes — 6 read-only intentdocs:// resources | No — tools only |
Use local (stdio) if: you're already using the CLI, want the smallest possible tool footprint via --mode core, or want the read-only resources (data model, build order, etc.) available without a tool call.
Use remote (HTTP) if: you don't want a local Node dependency, you're integrating from an environment where spawning subprocesses is awkward, or you want the full tool set without picking a mode.
Continue to Claude Code setup or Cursor & remote setup for exact configuration, or skip to Tools & resources for the complete, source-verified list of what each server exposes — the two lists are not identical, which is worth knowing before you build a workflow against one and switch to the other.