EmDash Docs MCP

On this page

The EmDash documentation site exposes a Model Context Protocol server at https://docs.emdashcms.com/mcp. Connect your coding assistant to it and the assistant can search the docs as you work, instead of guessing from training data that may be out of date.

This is separate from your site’s MCP server (covered in the AI Tools guide). The docs MCP only knows about EmDash’s documentation — it cannot read or modify your content. Most developers want both: the docs MCP to look things up, and the site MCP to manage content.

What it does

The docs MCP exposes a single tool:

ToolPurpose
search_docsSearch the EmDash documentation. Returns relevant chunks with source URLs and match scores.

Behind the scenes it uses Cloudflare AI Search over an index built from docs.emdashcms.com. The crawler keeps the index in sync with the published site, so answers reflect the docs you’re reading.

Connect it

The server is reachable at the following endpoint, with no authentication or API key. It is public and read-only.

https://docs.emdashcms.com/mcp

Auto-discovery in EmDash templates

If you started your project from an EmDash template (npm create emdash), three config files are already in place and will be picked up automatically:

FileUsed by
.mcp.jsonClaude Code
.cursor/mcp.jsonCursor
.vscode/mcp.jsonVS Code

Open the project and accept the workspace-trust prompt the tool shows on first run. No further setup is required.

Manual setup

If you’re not using a template, or you use a different tool, add it once with the snippet for your client:

Claude Code

The following command adds the server with the Claude Code CLI:

claude mcp add --transport http emdash-docs https://docs.emdashcms.com/mcp

Alternatively, commit a .mcp.json file at the project root with the following contents:

{
  "mcpServers": {
    "emdash-docs": {
      "type": "http",
      "url": "https://docs.emdashcms.com/mcp"
    }
  }
}

OpenCode

Add the following entry to opencode.jsonc:

{
  "mcp": {
    "emdash-docs": {
      "type": "remote",
      "url": "https://docs.emdashcms.com/mcp"
    }
  }
}

Cursor

Commit a .cursor/mcp.json file at the project root with the following contents, or add the server via Cursor Settings -> MCP -> Add new MCP server:

{
  "mcpServers": {
    "emdash-docs": {
      "type": "http",
      "url": "https://docs.emdashcms.com/mcp"
    }
  }
}

VS Code

Add the following entry to .vscode/mcp.json in the project, or to user settings:

{
  "servers": {
    "emdash-docs": {
      "type": "http",
      "url": "https://docs.emdashcms.com/mcp"
    }
  }
}

Claude Desktop

Claude Desktop only supports stdio MCP servers natively, so use mcp-remote as a bridge. Add the following entry to claude_desktop_config.json:

{
  "mcpServers": {
    "emdash-docs": {
      "command": "npx",
      "args": ["mcp-remote", "https://docs.emdashcms.com/mcp"]
    }
  }
}

When to use it

  • You’re building an EmDash site and want your AI assistant to look up the correct API, hook name, or config option from current docs rather than half-remembered training data.
  • You’re writing a plugin and want to find which hooks fire in what order.
  • You’re porting a WordPress theme and want examples of seed file patterns.
  • You’re stuck on an error and want to search release notes and concepts.

Recommend it in your AGENTS.md

If your project uses AGENTS.md (or CLAUDE.md, .cursorrules, etc.) to instruct AI tools, point them at the docs MCP so they prefer real documentation over assumptions:

## Documentation

Look up EmDash documentation via the `emdash-docs` MCP server when you need to
verify an API, hook, config option, or pattern. Prefer the docs MCP over
assumptions from training data -- the docs reflect the current published
behaviour.

The EmDash starter templates ship with this snippet pre-included.