MCP Integration
Tools & resources
The exact, source-verified tool and resource lists for both the local stdio and remote HTTP MCP servers — and how they currently differ.
These two servers expose different tool sets. The local server (
packages/cli/src/mcp/server.ts, started byintent mcp) and the remote server (src/lib/mcp-server.ts, served at/api/mcp) are two separate implementations that have drifted apart — the remote server has a newer, larger tool set (including batch operations and astart_story/complete_storypair) that the local server doesn't have yet. Build against whichever one you're actually pointed at; don't assume tool names are interchangeable between them.
Local server (intent mcp) — 13 tools
Tools are gated by --mode (core, standard, or all) — each mode includes everything from the tiers below it.
Core
| Tool | Description |
|---|---|
list_stories | List all stories from the story map with status, priority, effort, and acceptance criteria |
mark_done | Mark a story as done. Blocks if a must acceptance criterion is failing or unreported, unless force: true |
report_criteria | Report pass/fail/blocked results for one or more acceptance criteria on a story |
raise_blocker | Raise a blocker on a story after repeated failed fix attempts |
mark_in_progress | Mark a story as in progress |
get_status | Progress summary — total, done, in progress, todo counts |
add_note | Add implementation notes to a story |
Standard (adds)
| Tool | Description |
|---|---|
create_story | Create a new story — title, activity, priority, effort |
get_context | Get the full INTENT.md context — personas, stories, acceptance criteria |
log_decision | Log an architectural or product decision |
All (adds)
| Tool | Description |
|---|---|
analyze_complexity | AI complexity scoring — 1–10 score, risks, suggested effort |
research | AI research using your project context |
import_prd | Parse a PRD or spec into structured stories |
Resources (always available, regardless of mode)
| Resource | URI | MIME type |
|---|---|---|
| Story Map | intentdocs://project/storymap | text/markdown |
| Stories | intentdocs://project/stories | application/json |
| Status | intentdocs://project/status | application/json |
| Decisions | intentdocs://project/decisions | application/json |
| Data Model | intentdocs://project/data-model | application/json |
| Build Order | intentdocs://project/build-order | application/json |
Resources are read-only and auto-discoverable — an agent can read intentdocs://project/data-model directly without calling a tool first.
One more behavior worth knowing: if a story's cancelled_at is set (via intent stop), the local server refuses every tool call on it except list_stories and get_status — a cancellation guard that stops an agent mid-flight from continuing to work a story a human just pulled the plug on.
Remote server (/api/mcp) — 20 tools, always all-on
No mode gating — every tool below is always available to an authenticated caller. There are no resources on this server; everything is a tool call.
| Tool | Description |
|---|---|
list_projects | List all your IntentDocs projects |
get_context | Get the full INTENT.md context for a project's story map |
list_stories | List all stories in a project's story map with status, criteria, and build order |
update_stories | Update story fields — status, notes, implementation details, or user-story text (as_a/i_want/so_that) |
create_stories | Create new user stories in a project's story map |
report_criteria | Report acceptance criteria test results for a story |
add_criteria | Append acceptance criteria to a story — returns new criterion IDs for use with report_criteria |
replace_criteria | Replace all acceptance criteria on a story — returns new criterion IDs |
check_release_readiness | Pre-flight check before building a release — scans for missing ACs, missing implementation plans, missing test criteria |
start_story | Begin work on one story — sets in_progress, returns its acceptance criteria, implementation plan, and context |
complete_story | Finish a story: mark done, record what was built, get the next story. Enforces the must-criteria gate unless force: true |
link_pr | Link a GitHub pull request to a story — the PR number appears on the story card in the UI |
get_status | Progress summary for a project |
raise_blocker | Raise a blocker on a story after repeated failed attempts |
add_note | Add implementation notes to a story |
log_decision | Log an architectural or product decision |
analyze_complexity | AI complexity scoring for stories |
research | AI research using your project context |
import_prd | Parse a PRD or spec into stories |
get_build_order | Get the recommended build order for stories in a project |
update_stories/create_stories are batch operations (arrays of stories), unlike the local server's singular create_story. start_story/complete_story replace the local server's mark_in_progress/mark_done with a workflow that also hands back the next story to work on.