An open-source MCP implementation designed to provide robust document management and search capabilities. 中文文档
This project replicates Cursor's @Docs functionality by providing:
1. Document Indexing:
- Crawl and index documentation from various sources
- Support for multiple document formats (HTML, Markdown, etc.)
- Automatic re-indexing to keep docs up-to-date
2. Document Access:
- Search across all indexed documentation
- Integration with MCP protocol for AI context
3. Custom Docs Management:
- Add new documentation sources via enable_doc
tool
- Manage enabled docs via list_enabled_docs
tool
- Force re-crawl with crawl_docs
tool
┌───────────────────────────────────────────────────────┐
│ open-docs-mcp Server │
├───────────────────┬───────────────────┬───────────────┤
│ Crawler Module │ Search Engine │ MCP Server │
├───────────────────┼───────────────────┼───────────────┤
│ - Web crawling │ - Full-text index │ - Resources │
│ - Doc conversion │ - Relevance score │ - Tools │
│ - Storage │ - Query parsing │ - Prompts │
└───────────────────┴───────────────────┴───────────────┘
npx -y open-docs-mcp --docsDir ./docs
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"open-docs-mcp": {
"command": "npx",
"args": [
"-y",
"open-docs-mcp",
"--docsDir",
"/path/to/docs"
]
}
}
}
Configuration Options:
- command
: Node.js executable
- args
: Array of arguments to pass to the script
- --docsDir
: Required, specifies docs directory path
- disabled
: Set to true to temporarily disable the server
- alwaysAllow
: Array of tool names that can be used without confirmation
npm run watch # Auto-rebuild on changes
npm run inspector # Debug with MCP Inspector
Full documentation is available in the docs directory.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.