doc-bot

doc-bot

Provides AI assistants with intelligent access to project documentation and API references through smart search, contextual rules, and Docset integration. Enables AI to understand project-specific conventions, patterns, and official framework documentation without token limits.

Category
Visit Server

README

doc-bot

npm version License: MIT

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:

  1. Providing project-specific knowledge - Your conventions, patterns, and rules
  2. Searching intelligently - AI finds exactly what it needs without cluttering context
  3. Scaling infinitely - Thousands of docs without token limits
  4. 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:

Your Project Documentation → doc-bot → MCP Protocol → AI Assistant (Claude, Cursor, etc.)

When you ask your AI assistant to write code, it can:

  1. Check your project's coding standards
  2. Search for relevant documentation
  3. Find API references and examples
  4. 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:

{
  "mcpServers": {
    "doc-bot": {
      "command": "npx",
      "args": ["@afterxleep/doc-bot@latest"]
    }
  }
}

Location of config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

For Cursor:

  • Add an mcp.json file with the contents above to your .cursor folder

2. Create Your Documentation

Create a doc-bot folder in your project root and add markdown files:

your-project/
ā”œā”€ā”€ doc-bot/
│   ā”œā”€ā”€ coding-standards.md
│   ā”œā”€ā”€ api-patterns.md
│   ā”œā”€ā”€ testing-guide.md
│   └── architecture.md
ā”œā”€ā”€ src/
└── package.json

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:

---
title: "React Component Guidelines"
description: "Standards for building React components"
keywords: ["react", "components", "frontend", "jsx"]
---

# React Component Guidelines

- Use functional components with hooks
- Follow PascalCase naming
- Keep components under 200 lines
- Write tests for all components

Frontmatter Options

Field Type Description Example
title string Document title (required) "API Guidelines"
description string Brief description "REST API design patterns"
keywords array Search keywords ["api", "rest", "http"]
alwaysApply boolean Apply to all queries true/false
filePatterns array Apply to specific files [".test.js", "**/.spec.ts"]

How Search Works

  1. Intelligent Parsing - Queries are parsed, stop words removed
  2. Multi-field Matching - Searches title, description, keywords, and content
  3. Relevance Scoring - Results ranked by relevance (exact matches score highest)
  4. Context Extraction - Returns snippets showing matched content

Types of Documentation

Global Rules (Always Apply)

---
title: "Coding Standards"
alwaysApply: true
---
Rules that apply to every file in your project

Contextual Documentation

---
title: "Testing Guide"
filePatterns: ["*.test.js", "*.spec.ts"]
---
Documentation that only applies to test files

Searchable References

---
title: "Database Schema"
keywords: ["database", "postgres", "schema", "migrations"]
---
Documentation found through search queries

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

  1. 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.tgz
    

    From a local file:

    Use the add_docset tool to install the docset at /Users/me/Downloads/React.docset
    
  2. Manage your docsets:

    List all installed docsets
    Remove docset with ID abc123
    

    Docsets are automatically stored in ~/Developer/DocSets by 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
  1. 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_api tool to discover related classes, methods
  • Performance: Parallel search across multiple docsets with caching

Available Tools

doc-bot provides these tools to AI assistants:

Tool Purpose Example Use
check_project_rules Get rules before writing code "What patterns should I follow?"
search_documentation Search all documentation "How do I implement auth?"
get_global_rules Get always-apply rules "What are the coding standards?"
get_file_docs Get file-specific docs "Rules for Button.test.jsx"
explore_api Explore API documentation "Show me URLSession methods"
add_docset Install new docset "Add Swift docs from URL"
remove_docset Remove installed docset "Remove docset abc123"
list_docsets List all docsets "Show installed docsets"

Configuration Options

CLI Options

doc-bot [options]

Options:
  -d, --docs <path>        Path to docs folder (default: ./doc-bot)
  -s, --docsets <path>     Path to docsets folder (default: ~/Developer/DocSets)
  -v, --verbose           Enable verbose logging
  -w, --watch             Watch for file changes
  -h, --help              Display help

Advanced Configuration

{
  "mcpServers": {
    "doc-bot": {
      "command": "npx",
      "args": [
        "@afterxleep/doc-bot@latest",
        "--docs", "./documentation",
        "--docsets", "/Library/Application Support/Dash/DocSets",
        "--verbose",
        "--watch"
      ]
    }
  }
}

Documentation

Best Practices

Writing Effective Documentation

  1. Use descriptive titles and keywords

    ---
    title: "Authentication Flow"
    keywords: ["auth", "login", "jwt", "security", "authentication"]
    ---
    
  2. Apply rules contextually

    ---
    filePatterns: ["**/auth/**", "*.auth.js"]
    ---
    
  3. Keep docs focused - One topic per file

  4. 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


Built with ā¤ļø in Spain

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured