Install
$ agentstack add mcp-h4sht-bookstack-mcp ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README — it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming — see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps — measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
@h4sht/bookstack-mcp
MCP server for BookStack — connect Claude Code, Codex, OpenCode and any AI assistant to your BookStack wiki. One command, zero config files, instant setup.
=18">
🚀 Claude Code
claude mcp add bookstack -- npx github:h4sht/bookstack-mcp
Claude Code will prompt you for:
BOOKSTACK_BASE_URL— your BookStack API URL (e.g.https://wiki.example.com/api)BOOKSTACK_API_TOKEN— your API token (token_id:token_secret)
Or pass them directly:
claude mcp add bookstack \
--env BOOKSTACK_BASE_URL=https://wiki.example.com/api \
--env BOOKSTACK_API_TOKEN=token_id:token_secret \
-- npx github:h4sht/bookstack-mcp
Then use /mcp inside Claude Code to verify it's connected ✔
🛠️ What you get (25 tools)
| Category | Tools | |----------|-------| | 📚 Books (6) | list, get, create, update, delete, export | | 📑 Chapters (6) | list, get, create, update, delete, export | | 📄 Pages (6) | list, get, create, update, delete, export | | 📚 Shelves (5) | list, get, create, update, delete | | 🔍 Search (1) | search across all content | | ⚙️ System (1) | instance info |
All export_* tools support markdown, html, pdf, plaintext.
✍️ Markdown-powered
BookStack stores pages as HTML but accepts Markdown input through its API. This means Claude can create and edit wiki pages in its native format:
"Create a page about async Python in book 3"
→ bookstack_create_page({
book_id: 3,
name: "Async Python Guide",
markdown: "# Async Python\n\n`asyncio` is Python's standard library..."
})
Pages are also exported as Markdown, so Claude can read, analyze, and improve existing content.
📦 Setup for other AI assistants
OpenAI Codex
codex mcp add bookstack \
--env BOOKSTACK_BASE_URL=https://wiki.example.com/api \
--env BOOKSTACK_API_TOKEN=id:secret \
-- npx github:h4sht/bookstack-mcp
Or add this to ~/.codex/config.toml:
[mcp_servers.bookstack]
command = "npx"
args = ["github:h4sht/bookstack-mcp"]
[mcp_servers.bookstack.env]
BOOKSTACK_BASE_URL = "https://wiki.example.com/api"
BOOKSTACK_API_TOKEN = "id:secret"
Verify with: codex mcp list
OpenCode
opencode mcp add
# Select "local", then enter: npx github:h4sht/bookstack-mcp
Or add to opencode.json:
{
"mcp": {
"bookstack": {
"type": "local",
"command": ["npx", "github:h4sht/bookstack-mcp"],
"enabled": true,
"environment": {
"BOOKSTACK_BASE_URL": "https://wiki.example.com/api",
"BOOKSTACK_API_TOKEN": "id:secret"
}
}
}
}
Cline (VS Code)
Add to Cline MCP settings file:
{
"mcpServers": {
"bookstack": {
"command": "npx",
"args": ["github:h4sht/bookstack-mcp"],
"env": {
"BOOKSTACK_BASE_URL": "https://wiki.example.com/api",
"BOOKSTACK_API_TOKEN": "id:secret"
}
}
}
}
Any MCP-compatible assistant (stdio)
The server command is always the same:
npx github:h4sht/bookstack-mcp
Set BOOKSTACK_BASE_URL and BOOKSTACK_API_TOKEN as environment variables.
🔧 Config reference
| Variable | Required | Description | |----------|----------|-------------| | BOOKSTACK_BASE_URL | Yes | Full URL including /api | | BOOKSTACK_API_TOKEN | Yes | Format: token_id:token_secret | | BOOKSTACK_TIMEOUT | No | Request timeout ms (default: 30000) |
🔒 Security
- 4 auditable files — read the whole source in 10 minutes
- One dependency — only
@modelcontextprotocol/sdk(official Anthropic) - Native fetch() — no HTTP libraries, no hidden requests
- Stdio only — no open ports, no network surface
- Zero telemetry — no analytics, no tracking, no calls home
- Stderr logging — never writes to stdout (MCP protocol integrity)
🧪 Tests
npm test # 32 tests, all passing ✅
📁 Structure
@h4sht/bookstack-mcp/
├── src/
│ ├── index.ts # MCP server, stdio transport, config
│ ├── client.ts # BookStack REST client (native fetch)
│ ├── tools.ts # 25 MCP tool definitions + handlers
│ └── types.ts # TypeScript types
├── dist/ # Compiled JS (ready to run)
├── tests/ # 32 unit + integration tests
├── package.json
└── README.md
📝 License
MIT © h4sht
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: h4sht
- Source: h4sht/bookstack-mcp
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.