Skip to main content
Glama
Docsbook-io

docsbook-mcp

Official
by Docsbook-io
README.md
# docsbook-mcp

A thin open-source proxy to the hosted Docsbook MCP server.

[Docsbook](https://docsbook.io) is an AI-native documentation platform — hosting, AI chat over your docs, analytics, SEO/GEO/AEO optimization, translations, and webhooks, all driven from a GitHub repo. This package is a small stdio [MCP](https://modelcontextprotocol.io) server that forwards requests to Docsbook's hosted MCP endpoint, giving any MCP client (Claude Desktop, Claude Code, Cursor, etc.) access to ~40 tools for managing a Docsbook workspace: branding, navigation, SEO/GEO/AEO, the AI chat system prompt, translations, analytics, webhooks, and the doc source-of-truth graph.

The actual tool implementations live in Docsbook's hosted backend (`https://docsbook.io/api/mcp/server`) — this repo contains no proprietary code, no database access, and no secrets. It is ~150 lines that speak stdio to your MCP client on one side and Streamable HTTP to the hosted endpoint on the other.

## Install & configure

### Claude Code

```bash
claude mcp add docsbook -- npx -y docsbook-mcp
```

Then set your token as an environment variable, or pass it via `claude mcp add --env`:

```bash
claude mcp add docsbook --env DOCSBOOK_MCP_TOKEN=your-token-here -- npx -y docsbook-mcp
```

### Claude Desktop (or any JSON-config MCP client)

Add to your MCP client config (e.g. `claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "docsbook": {
      "command": "npx",
      "args": ["-y", "docsbook-mcp"],
      "env": {
        "DOCSBOOK_MCP_TOKEN": "..."
      }
    }
  }
}
```

Get a token from your workspace's MCP settings at `https://docsbook.io/settings/mcp`.

## Environment variables

| Variable | Required | Description |
|---|---|---|
| `DOCSBOOK_MCP_TOKEN` | For real tool calls | Bearer token used to authenticate against the hosted Docsbook MCP server. Without it, the server still starts and lists tools (see below), but `tools/call` returns an error telling you where to get one. |
| `DOCSBOOK_MCP_URL` | No | Overrides the upstream endpoint. Defaults to `https://docsbook.io/api/mcp/server`. Can be pointed at a scoped endpoint, e.g. `https://docsbook.io/{owner}/{repo}/api/mcp/server`, which Docsbook serves anonymously (no token) for read-only access to PRO+ public workspaces. |

## How it works

- On `tools/list`, this proxy forwards to the hosted endpoint (with your `DOCSBOOK_MCP_TOKEN` as a Bearer token, if set) and returns whatever tools the server currently exposes — the tool list is never hardcoded here.
- If the upstream is unreachable, or no token is configured, it falls back to a bundled static tool manifest (`src/tools-manifest.json`) so the server can still respond to `initialize`/`tools/list` (useful for sandboxed registry introspection, e.g. Glama). This fallback list may lag behind the live tool set — see the `_comment` field in that file for how it was assembled.
- On `tools/call`, it forwards the call to the hosted endpoint. If no token is configured, it returns a clear MCP error pointing you to `https://docsbook.io/settings/mcp`.

## Development

```bash
npm install
npm run build
node dist/index.js
```

## Learn more

- [Docsbook](https://docsbook.io)
- [Model Context Protocol](https://modelcontextprotocol.io)

## License

MIT

TDQS

C2.4/5.0

Scored across 62 tools

Disambiguation3/5

Most tools are clearly distinct, but the doc_search_* family (doc_search_text, doc_grep, doc_search_paths, doc_search_by_anchor) and the general search_docs overlap in function, which could cause misselection. The analytics and workspace tools are well-separated.

Naming Consistency4/5

The majority of tools follow a clear verb_noun pattern (get_, list_, update_, create_, delete_, set_, test_). However, the doc_* tools (doc_outline, doc_breadcrumbs, doc_neighbors) deviate by using a prefix instead of a leading verb, though they remain readable and predictable.

Tool Count1/5

62 tools is extreme for an MCP server. Even for a feature-rich documentation platform, this exceeds reasonable scope and will overwhelm agents with too many options, making selection harder.

Completeness2/5

The tool set covers many features but has significant gaps: no delete_workspace, no delete_doc, no register_webhook (only unregister), and no general list_translations (only pending). These missing lifecycle operations create dead ends and prevent full workflows.

Maintenance

ActivitySlowing
ResponsivenessNo issues