loading…
Search for a command to run...
loading…
Enables AI assistants to manage BookStack knowledge bases with tools for creating, reading, updating, and deleting pages, books, and shelves, as well as searchi
Enables AI assistants to manage BookStack knowledge bases with tools for creating, reading, updating, and deleting pages, books, and shelves, as well as searching content.
TypeScript Node.js Docker License
A professional-grade Model Context Protocol (MCP) server that seamlessly bridges AI assistants with BookStack knowledge management systems. Transform your documentation workflows with intelligent automation.
Created by Derron Knox | Showcasing enterprise-level software architecture and best practices
This TypeScript-based MCP server provides a robust, production-ready interface for AI assistants to interact with BookStack instances. Designed with enterprise scalability, security, and maintainability in mind, it demonstrates advanced software engineering principles and modern development practices.
create_page - Create new pages with HTML/Markdown contentget_page_content - Retrieve page content by ID or nameupdate_page - Modify existing pages (content, location, metadata)delete_page - Remove pages from BookStacksearch_items - Search across shelves, books, chapters, and pageslist_books - Enumerate books with filtering and paginationlist_shelves - Browse shelf collections with advanced optionsread_book - Get details of a specific book by ID or namecreate_book - Create a new bookupdate_book - Modify existing books (content, metadata)delete_book - Remove books from BookStack# Clone and configure
git clone <repository-url>
cd bookstack/
cp .env.example .env
# Configure your BookStack credentials
cat > .env << EOF
BOOKSTACK_URL="https://your-bookstack-instance.com"
BOOKSTACK_API_TOKEN_ID="your_token_id_here"
BOOKSTACK_API_TOKEN_SECRET="your_token_secret_here"
EOF
# Production-ready containerized deployment
docker-compose up --build -d
# Monitor logs
docker-compose logs -f bookstack-mcp-server
# Install dependencies
npm install
# Development with hot reload
npm run watch
# Production build
npm run build
npm start
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"bookstack-mcp-server": {
"command": "node",
"args": ["/path/to/bookstack/build/index.js"],
"env": {
"BOOKSTACK_URL": "https://your-bookstack-instance.com",
"BOOKSTACK_API_TOKEN_ID": "your_token_id",
"BOOKSTACK_API_TOKEN_SECRET": "your_token_secret"
}
}
}
}
bookstack/
├── src/
│ ├── types.ts # TypeScript interface definitions
│ ├── utils/
│ │ ├── validation.ts # Input validation & sanitization
│ │ └── api.ts # API utilities & helper functions
│ ├── tools/
│ │ ├── definitions.ts # Tool schema definitions
│ │ └── handlers.ts # Business logic implementations
│ └── index.ts # Main server & orchestration
├── build/ # Compiled JavaScript output
├── Dockerfile # Multi-stage container build
├── docker-compose.yml # Production deployment config
└── package.json # Dependencies & scripts
| Variable | Description | Required | Example |
|---|---|---|---|
BOOKSTACK_URL |
BookStack instance URL | ✅ | https://wiki.company.com |
BOOKSTACK_API_TOKEN_ID |
API Token ID from BookStack | ✅ | abc123def456 |
BOOKSTACK_API_TOKEN_SECRET |
API Token Secret from BookStack | ✅ | xyz789uvw012 |
// Create a page in a specific book
await createPage({
name: "API Documentation",
markdown: "# API Guide\n\nComprehensive API documentation...",
book_name: "Development Guides",
tags: [
{ name: "category", value: "api" },
{ name: "priority", value: "high" }
]
});
// Search across all content types
await searchItems({
query: "kubernetes deployment",
count: 20
});
// Find pages by context
await getPageContent({
page_name: "Deployment Guide",
book_name: "Infrastructure Documentation"
});
// Update page with new content
await updatePage({
page_name: "Getting Started",
book_name: "User Manual",
markdown: "# Updated Getting Started Guide\n...",
tags: [{ name: "status", value: "updated" }]
});
# Scale across multiple nodes
docker stack deploy -c docker-compose.yml bookstack-mcp
apiVersion: apps/v1
kind: Deployment
metadata:
name: bookstack-mcp-server
spec:
replicas: 3
selector:
matchLabels:
app: bookstack-mcp-server
template:
metadata:
labels:
app: bookstack-mcp-server
spec:
containers:
- name: bookstack-mcp-server
image: bookstack-mcp-server:latest
env:
- name: BOOKSTACK_URL
valueFrom:
secretKeyRef:
name: bookstack-credentials
key: url
# Development with auto-reload
npm run watch
# Type checking
npx tsc --noEmit
# Debug with MCP Inspector
npm run inspector
# Launch debugging interface
npm run inspector
# Access via browser at provided URL
# Verify BookStack accessibility
curl -H "Authorization: Token $BOOKSTACK_API_TOKEN_ID:$BOOKSTACK_API_TOKEN_SECRET" \
"$BOOKSTACK_URL/api/books"
# Check container health
docker-compose ps
docker-compose logs bookstack-mcp-server
# Restart with fresh build
docker-compose down && docker-compose up --build
This project demonstrates expertise in:
This project welcomes contributions! Areas for enhancement:
Derron Knox - Software Engineer & Solutions Architect
This project exemplifies enterprise-grade software development practices, demonstrating proficiency in modern web technologies, cloud-native development, and scalable system architecture.
Выполни в терминале:
claude mcp add bookstack-mcp-server -- npx Web content fetching and conversion for efficient LLM usage.
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolProvides auto-configuration for setting up an MCP server in Spring Boot applications.
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzНе уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai