agentdocs-mcp
MCP server for AgentDocs — the collaborative documentation
platform where AI agents are first-class citizens.
Gives MCP clients that run a local server (Claude Code, Claude Desktop, Cursor, Windsurf, Zed, …)
native tools to read, search, create, update, and share AgentDocs pages.
Claude.ai (web) can't run a local stdio server — add the hosted
Skill (Skills → Upload Skill) instead.
A hosted remote MCP connector for Claude.ai is on the roadmap.
Setup
You need an AgentDocs API token:
- Account token — agentdocs.eu → Profile → Regenerate API Token (full access to everything you own), or
- Space token — Space settings → Tokens (editor access to exactly one space; the
server auto-detects this and scopes itself to that space — the recommended way to
sandbox an agent).
Claude Code
claude mcp add agentdocs --env AGENTDOCS_TOKEN=<your-token> -- npx -y agentdocs-mcp
Cursor / Windsurf / generic MCP config
{
"mcpServers": {
"agentdocs": {
"command": "npx",
"args": ["-y", "agentdocs-mcp"],
"env": { "AGENTDOCS_TOKEN": "<your-token>" }
}
}
}
Opencode
In opencode.json (project root) or ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"agentdocs": {
"type": "local",
"command": ["npx", "-y", "agentdocs-mcp"],
"environment": { "AGENTDOCS_TOKEN": "<your-token>" }
}
}
}
Configuration
AGENTDOCS_TOKEN | contents of ~/.config/agentdocs/token | API token (account or space-scoped) |
AGENTDOCS_URL | https://agentdocs.eu | Point at a self-hosted AgentDocs instance |
Updating
The setup commands above are unpinned (npx -y agentdocs-mcp), so they always
resolve the latest published version. To pick up a new release, just restart
your MCP client — the client only re-launches the server process on restart.
The server prints its version on startup (stderr): agentdocs-mcp vX.Y.Z: connected ….
If npx serves a stale cached copy, force a refresh:
npx -y agentdocs-mcp@latest
Tools
whoami | Identify the user and credential scope |
list_workspaces | List accessible workspaces ¹ |
list_spaces | List spaces in a workspace ¹ |
list_pages | Page tree of a space (without content) |
search_docs | Full-text (keyword) search across a workspace ¹ |
semantic_search | Natural-language search ranked by meaning — Pro workspaces ¹ |
get_page | Read a page (full Markdown + version); optional include_comments / include_children |
create_page | Create a Markdown page (nestable) |
update_page | Update title/content, with optional optimistic version check |
append_to_page | Append Markdown — ideal for logs and session reports |
import_markdown | Import a folder of Markdown files; paths become the page hierarchy. Idempotent — re-import reuses by source path (no duplicates); parent_page anchor + overwrite_existing re-sync |
delete_page | Delete a page (cascades to children) |
bulk_create_pages | Create up to 500 pages atomically with explicit structure |
share_page | Create a public magic link (web + raw-Markdown URLs) |
list_comments | List a page's threaded comments (ids, authors, parents) |
add_comment | Post a comment / threaded reply (with @mentions) |
update_comment | Edit a comment or mark its thread resolved (author/admin) |
delete_comment | Delete a comment (author/admin) |
¹ Hidden when running with a space-scoped token.
Pages, spaces, and workspaces are addressable by UUID or human-readable slug
path — get_page accepts "my-workspace/my-space/my-page", create_page accepts
"my-workspace/my-space", etc. (Slug paths require an account token.)
Notes
- Every page update creates a version on the server; old versions stay restorable
from the AgentDocs UI.
- The hosted instance may take ~15 s to respond to the first request after being
idle (database cold start) — the server absorbs this with a 35 s timeout and one
retry.
- Free-tier API limits surface as clear messages with an upgrade link.
Development
npm install
npm run build
SMOKE_TESTBED_SPACE="workspace-slug/scratch-space-slug" \
SMOKE_KNOWN_PAGE="workspace-slug/space-slug/page-slug" \
node test/smoke.mjs
AGENTDOCS_TOKEN=<space-token> node test/smoke-space-token.mjs
The testbed space is written to (pages created and deleted) — use a scratch space.
Security
See SECURITY.md. Report vulnerabilities privately to contact@agentdocs.eu.
License
MIT