Provides access to Dash/Kapeli docsets for searching official API documentation across programming languages, frameworks, and libraries. Supports installing docsets from URLs or local files, managing installed docsets, and exploring API references.
doc-bot
An intelligent MCP (Model Context Protocol) server that gives AI assistants like Claude and Cursor deep understanding of your project through smart documentation management.
What is doc-bot?
doc-bot is a documentation server that enhances AI coding assistants by providing:
š§ Smart search through your project documentation
š Contextual rules that apply based on what you're working on
š Live updates as your documentation changes
š API references from official documentation (via Docsets)
š¤ MCP tools for AI agents to query and understand your project
Why doc-bot?
Traditional AI assistants have limited context windows and no understanding of your specific project. doc-bot solves this by:
Providing project-specific knowledge - Your conventions, patterns, and rules
Searching intelligently - AI finds exactly what it needs without cluttering context
Scaling infinitely - Thousands of docs without token limits
Staying current - Live reload ensures AI always has latest information
How It Works
doc-bot acts as a bridge between your documentation and AI assistants:
When you ask your AI assistant to write code, it can:
Check your project's coding standards
Search for relevant documentation
Find API references and examples
Follow your team's specific patterns
Quick Start
1. Install doc-bot
Add doc-bot to your AI assistant's configuration:
For Claude Desktop or Claude Code:
Location of config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
For Cursor:
Add an
mcp.jsonfile with the contents above to your.cursorfolder
2. Create Your Documentation
Create a doc-bot folder in your project root and add markdown files:
3. Add the custom Agent Rule
Replace all rules and instructions for your Agent (cursor.mdc, CLAUDE.md, etc) with Doc Bot Core Rule AGENT INTEGRATION RULE.
4. Test it!
Ask your AI assistant: "What are the coding standards for this project?"
Project Documentation
doc-bot treats your project documentation as a searchable knowledge base for AI assistants.
Documentation Format
Create markdown files with frontmatter metadata:
Frontmatter Options
Field | Type | Description | Example |
| string | Document title (required) | "API Guidelines" |
| string | Brief description | "REST API design patterns" |
| array | Search keywords | ["api", "rest", "http"] |
| boolean | Apply to all queries | true/false |
| array | Apply to specific files | [".test.js", "**/.spec.ts"] |
How Search Works
Intelligent Parsing - Queries are parsed, stop words removed
Multi-field Matching - Searches title, description, keywords, and content
Relevance Scoring - Results ranked by relevance (exact matches score highest)
Context Extraction - Returns snippets showing matched content
Types of Documentation
Global Rules (Always Apply)
Contextual Documentation
Searchable References
Docsets (API Documentation)
doc-bot can also search official API documentation from Docsets, giving your AI assistant access to comprehensive framework and library references.
What are Docsets?
Docsets are pre-built documentation databases containing official docs for:
Programming languages (Python, JavaScript, Go, etc.)
Frameworks (React, Vue, Django, Rails, etc.)
Libraries (NumPy, Express, jQuery, etc.)
Platforms (iOS, Android, AWS, etc.)
Setting Up Docsets
Option A: Ask your AI assistant to install directly:
From a URL:
Use the add_docset tool to install Swift documentation from https://kapeli.com/feeds/Swift.tgzFrom a local file:
Use the add_docset tool to install the docset at /Users/me/Downloads/React.docsetManage your docsets:
List all installed docsets Remove docset with ID abc123Docsets are automatically stored in
~/Developer/DocSetsby default.
Docset Sources
User Contributed Docsets: https://github.com/Kapeli/Dash-User-Contributions
Docset Generation Tools: https://github.com/Kapeli/docset-generator
Popular docsets available:
Programming Languages: Python, JavaScript, Go, Rust, Swift
Web Frameworks: React, Vue, Angular, Django, Rails
Mobile: iOS, Android, React Native, Flutter
Databases: PostgreSQL, MySQL, MongoDB, Redis
Cloud: AWS, Google Cloud, Azure
Configure custom path (optional):
{ "mcpServers": { "doc-bot": { "command": "npx", "args": ["@afterxleep/doc-bot@latest", "--docsets", "/path/to/docsets"] } } }
How Docset Search Works
Unified Search: One query searches both your docs and API docs
Smart Prioritization: Your project docs are boosted 5x in relevance
API Exploration: Use
explore_apitool to discover related classes, methodsPerformance: Parallel search across multiple docsets with caching
Available Tools
doc-bot provides these tools to AI assistants:
Tool | Purpose | Example Use |
| Get rules before writing code | "What patterns should I follow?" |
| Search all documentation | "How do I implement auth?" |
| Get always-apply rules | "What are the coding standards?" |
| Get file-specific docs | "Rules for Button.test.jsx" |
| Explore API documentation | "Show me URLSession methods" |
| Install new docset | "Add Swift docs from URL" |
| Remove installed docset | "Remove docset abc123" |
| List all docsets | "Show installed docsets" |
Configuration Options
CLI Options
Advanced Configuration
Documentation
API Reference - Complete reference for all MCP tools
Architecture Guide - Technical architecture and components
Configuration Guide - All configuration options
Troubleshooting Guide - Common issues and solutions
Examples & Best Practices - Real-world usage examples
Contributing Guide - How to contribute to doc-bot
Best Practices
Writing Effective Documentation
Use descriptive titles and keywords
--- title: "Authentication Flow" keywords: ["auth", "login", "jwt", "security", "authentication"] ---Apply rules contextually
--- filePatterns: ["**/auth/**", "*.auth.js"] ---Keep docs focused - One topic per file
Include examples - Show, don't just tell
Optimizing Search
Include synonyms in keywords:
["test", "testing", "spec", "jest"]Use clear section headers for better snippet extraction
Add descriptions to improve search relevance
Why MCP over Static Rules?
Unlike static .cursorrules or .github/copilot-instructions.md files:
Dynamic: AI searches for what it needs instead of reading everything
Scalable: Unlimited docs without token limits
Intelligent: Context-aware documentation based on current file
Unified: Works with any MCP-compatible AI tool
Live: Hot reload on documentation changes
Contributing
See our Contributing Guide for development setup and guidelines.
License
MIT - See LICENSE for details.
Support
Issues: GitHub Issues
Discussions: GitHub Discussions
Built with ā¤ļø in Spain