Skip to content

pnocera/bookstack-mcp-server

Repository files navigation

BookStack MCP Server

Connect BookStack to Claude and other AI assistants through the Model Context Protocol (MCP). This server provides complete access to your BookStack knowledge base with 47+ tools covering all API endpoints.

This server supports two transport modes: Streamable HTTP and Stdio.

  • Streamable HTTP (Default): A stateless HTTP transport. Authentication parameters can be overridden per-request using HTTP headers (x-bookstack-url and x-bookstack-token).
  • Stdio Mode: Standard input/output for local integration (e.g., with Claude Desktop). Set MCP_TRANSPORT=stdio to enable.

✨ What You Get

  • Complete BookStack Integration - Access all your books, pages, chapters, and content
  • 47+ MCP Tools - Full CRUD operations for every BookStack feature
  • Search & Export - Find content and export in multiple formats
  • User Management - Handle users, roles, and permissions
  • Production Ready - Rate limiting, validation, error handling, and logging

🚀 Quick Start

# Install globally
npm install -g bookstack-mcp-server

# Or run directly (starts HTTP server by default)
npx bookstack-mcp-server

Add to Claude

To use with Claude Desktop (requires Stdio mode):

# For Claude Code
claude mcp add bookstack npx bookstack-mcp-server \
  --env BOOKSTACK_BASE_URL=https://your-bookstack.com/api \
  --env BOOKSTACK_API_TOKEN=token_id:token_secret \
  --env MCP_TRANSPORT=stdio

Configuration

Set these environment variables:

export BOOKSTACK_BASE_URL="https://your-bookstack.com/api"
export BOOKSTACK_API_TOKEN="token_id:token_secret"
# Optional: Set transport mode (http or stdio)
export MCP_TRANSPORT="http" 

💡 Token Format: Combine your BookStack Token ID and Token Secret as token_id:token_secret

💡 Need detailed setup? See the complete Setup Guide

🛠️ Available Tools

47+ tools across 13 categories:

  • 📚 Books - Create, read, update, delete, and export books
  • 📄 Pages - Manage pages with HTML/Markdown content
  • 📑 Chapters - Organize pages within books
  • 📚 Shelves - Group books into collections
  • 👥 Users & Roles - Complete user management
  • 🔍 Search - Advanced search across all content
  • 📎 Attachments & Images - File management
  • 🔐 Permissions - Content access control
  • 🗑️ Recycle Bin - Deleted item recovery
  • 📊 Audit Log - Activity tracking
  • ⚙️ System Info - Instance health and information

📖 See the complete Tools Overview for detailed documentation

📚 Documentation

Find comprehensive guides in the docs/ folder:

⚡ Quick Examples

List all books:

bookstack_books_list({ count: 10, sort: "updated_at" })

Create a new page:

bookstack_pages_create({
  name: "Getting Started",
  book_id: 1,
  markdown: "# Welcome\nYour content here..."
})

Search for content:

bookstack_search({ query: "API documentation", count: 20 })

🛠️ Development

git clone <repository-url>
cd bookstack-mcp-server
npm install
npm run dev

🔧 See the Setup Guide for development, Docker, and production deployment

📝 License

MIT License - see LICENSE file for details.

🌟 Community

This project is part of the BookStack ecosystem! Check out other API-based tools and scripts in the BookStack API Scripts repository.

🆘 Support


Built with ❤️ for the BookStack community

About

A Model Context Protocol (MCP) server providing full access to BookStack's knowledge management capabilities

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors