Skip to main content
The SuperDoc MCP server lets AI agents open, read, edit, and save .docx files. It exposes the same operations as the Document API through the Model Context Protocol: the open standard for connecting AI tools to agents.

How it works

Your MCP client spawns the server as a local subprocess and talks to it over stdio. The server embeds the SuperDoc document engine — the same engine the browser editor uses — and manages documents as in-memory sessions: superdoc_open loads a file and returns a session_id, every tool call targets that session, and nothing touches disk until superdoc_save. A typical conversation, end to end: Everything runs locally — SuperDoc never uploads your files. The AI agent you connect still sends document content to its own model provider as tool results.

Setup

Install once. Your MCP client spawns the server automatically on each conversation.
claude mcp add superdoc -- npx @superdoc-dev/mcp

Tools

The server registers one of two tool surfaces, selected by the MCP_PRESET environment variable. All tools except superdoc_open take a session_id from superdoc_open.
Default (legacy)MCP_PRESET=core — recommended
Tools13: lifecycle + 10 grouped intent tools5: lifecycle + superdoc_inspect + superdoc_perform_action (40 named actions)
StyleLow-level: search for handles, edit by addressHigh-level verbs with deterministic targeting and verifiable receipts
Referencetables belowcore preset reference
To use the core surface, add the env to your client config:
{
  "mcpServers": {
    "superdoc": {
      "command": "npx",
      "args": ["@superdoc-dev/mcp"],
      "env": { "MCP_PRESET": "core" }
    }
  }
}

Lifecycle

ToolInputDescription
superdoc_openpathOpen a .docx file. Returns session_id and file path
superdoc_savesession_id, out?Save to the original path, or to out if specified
superdoc_closesession_idClose the session. Unsaved changes are lost

Intent tools

These are the legacy preset’s tools (the default surface). With MCP_PRESET=core the server registers superdoc_inspect and superdoc_perform_action instead — see the core preset reference for its 40 actions, selectors, and receipts.
ToolActionsDescription
superdoc_get_contenttext, markdown, html, blocks, extract, infoRead document content in different formats
superdoc_search(single action)Find text or nodes and return handles or addresses for later edits
superdoc_editinsert, replace, delete, undo, redoPerform text edits and history actions
superdoc_formatinline, set_style, set_alignment, set_indentation, set_spacing, set_direction, set_flow_optionsApply inline or paragraph formatting
superdoc_createparagraph, heading, tableCreate structural block elements
superdoc_listinsert, create, attach, detach, delete, merge, split, indent, outdent, set_level, set_type, set_value, continue_previousCreate and manipulate lists
superdoc_commentcreate, update, delete, get, listManage comment threads
superdoc_track_changeslist, decideReview and resolve tracked changes
superdoc_mutationspreview, applyExecute multi-step atomic edits as a batch
superdoc_tabledelete, delete_column, delete_row, insert_column, insert_row, merge_cells, set_borders, set_cell, set_cell_text, set_column, set_layout, set_options, set_row, set_row_options, set_shading, set_style_options, unmerge_cellsModify table structure, content, and styling
Multi-action tools use an action argument to select the underlying operation. superdoc_search is a single-action tool and does not require action.
  • How to use: workflow patterns, targeting, and common operations
  • Debugging: inspect and troubleshoot MCP tool calls
  • LLM Tools: build custom LLM integrations with the SDK
  • CLI: edit documents from the terminal