wirebookOpen the editor

Connect Claude Code to your wirebooks

Wirebook runs an MCP server as an AWS Lambda Function URL, so Claude Code (or any MCP-compatible client that supports HTTP transport + a bearer header) can read your wirebooks for context and propose changes to them.

1. Mint a key

In the app: File menu → “MCP access…” (or Cmd+K → “MCP access”). Click Generate key. The key is shown once — copy it now, since the app never displays it again (only a dmk_… prefix and creation date afterward).

Tick Read-only first for a key that can only read wirebooks. The write tools return an error for it. Use one wherever an agent only needs your wirebooks as context.

2. Add the server to Claude Code

The dialog builds this command for you, with your key already filled in:

$ claude mcp add wirebook --transport http https://wirebook.app/mcp --header "Authorization: Bearer <your-key>" -s user

-s user registers the server at the user scope — available in every Claude Code session on this machine, not just the current project. Drop -s user (or use -s project/-s local) if you'd rather scope it to one project instead.

3. Verify

Inside a Claude Code session:

  • Run /mcp — wirebook should show as connected with 6 tools available.
  • Try a prompt like “list my wirebooks” — it should call list_maps and return your actual wirebooks.

4. What each tool does

ToolDoes
list_mapsLists your wirebooks (name, mode, containing folder). Call this first — you need a flowId for every other tool except create_map.
get_mapReads a wirebook’s full context: every node (label, status, url, notes, code) and edge, plus any sequence diagrams as Mermaid text.
create_mapCreates a brand-new wirebook. Writes immediately — there’s nothing existing to conflict with.
propose_changesProposes changes to an existing wirebook: add nodes/edges, edit an existing node’s label/status/url/icon/code/notes, remove existing nodes/edges, relayout the whole wirebook, and/or add new sequence diagrams. Never writes directly — creates a proposal you review and accept or reject in the app.
get_node_contentReads one node’s code and notes.
set_node_contentWrites code/notes directly to a node, but only if it currently has none. If it already has content, errors and tells the agent to use propose_changes instead.

Writes to a wirebook you already have never happen silently. Anything beyond a brand-new wirebook goes through propose_changes, which shows up in the app as a badge on that wirebook in the drawer and a banner when you open it — review the diff, then Accept or Reject. Additions/updates/removals are reviewed element by element; a relayout (recomputing every node's position — e.g. “turn this into a top-to-bottom flow”) is reviewed as a single all-or-nothing item, since accepting only part of a relayout would leave nodes overlapping. There's no way to reposition just one existing node without relaying out the whole wirebook.

5. Key rotation and revocation

Regenerating or revoking a key in the dialog takes effect immediately — the old key 401s on its very next MCP call. To keep using MCP after rotating, re-run the claude mcp add command with the new key (it overwrites the old registration).

6. claude.ai, Claude Desktop and mobile

These connect by signing in rather than with a key. In claude.ai: Customize → Connectors → Add custom connector, name it Wirebook, URL https://wirebook.app/mcp. Claude sends you to a Wirebook page to sign in and allow access, and the connector then works in all three apps. Claude Code can do the same: register the server without --header and run /mcp to sign in.

Signed-in apps are listed under File → MCP access → Connected apps, where you can disconnect each one. API keys keep working and remain the right choice for scripts and CI.