README.md•3.2 kB
# MCP Documentation Server
A customized version of the MCP documentation server that enables integration between LLM applications (like Cursor, Claude Desktop, Windsurf) and documentation sources via the Model Context Protocol.
## Overview
This server provides MCP host applications with:
1. Access to specific documentation files (langgraph.txt and mcp.txt)
2. Tools to fetch documentation from URLs within those files
## Supported Documentation
Currently set up for:
- LangGraph Documentation (from https://raw.githubusercontent.com/esakrissa/mcp-doc/main/docs/langgraph.txt)
- MCP Documentation (from https://raw.githubusercontent.com/esakrissa/mcp-doc/main/docs/mcp.txt)
## Quick Start
### Setup and Run
```bash
# Clone the repository
git clone https://github.com/esakrissa/mcp-doc.git
cd mcp-doc
# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install the package in development mode
pip install -e .
```
### Running the Server
You can run the server using the installed command:
```bash
# Run the server with the config file
mcpdoc \
--json config.json \
--transport sse \
--port 8082 \
--host localhost
```
Or if you prefer using UV:
```bash
# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Run the server with UV
uvx --from mcpdoc mcpdoc \
--json config.json \
--transport sse \
--port 8082 \
--host localhost
```
### IDE Integration
#### Cursor
Add to `~/.cursor/mcp.json`
```json
{
"mcpServers": {
"mcp-doc": {
"command": "uvx",
"args": [
"--from",
"mcpdoc",
"mcpdoc",
"--urls",
"LangGraph:https://raw.githubusercontent.com/esakrissa/mcp-doc/main/docs/langgraph.txt",
"ModelContextProtocol:https://raw.githubusercontent.com/esakrissa/mcp-doc/main/docs/mcp.txt",
"--allowed-domains",
"*",
"--transport",
"stdio"
]
}
}
}
```
Then add these instructions to Cursor's Custom Instructions:
```
for ANY question about LangGraph and Model Context Protocol (MCP), use the mcp-doc server to help answer --
+ call list_doc_sources tool to get the available documentation files
+ call fetch_docs tool to read the langgraph.txt or mcp.txt file
+ reflect on the urls in langgraph.txt or mcp.txt
+ reflect on the input question
+ call fetch_docs on any urls relevant to the question
+ use this to answer the question
```
To test if the integration is working, ask Cursor a question about LangGraph or MCP, and check if it uses the documentation server tools to fetch information.
## Security Note
For security reasons, strict domain access controls are implemented:
- Remote documentation files: Only the specific domain is automatically allowed
- Local documentation files: No domains are automatically allowed
- Use `--allowed-domains` to explicitly add domains or `--allowed-domains '*'` to allow all (use with caution)
## References
This project is based on the original [mcpdoc by LangChain AI](https://github.com/langchain-ai/mcpdoc), modified to provide focused documentation access for LangGraph and MCP.