MCP-Server

A powerful MCP server that supercharges Claude with documentation search capabilities

Visit Server
Added on 3/28/2025

๐Ÿค– Claude AI Documentation Assistant ๐Ÿ“š

Claude + MCP Integration

A powerful MCP server that supercharges Claude with documentation search capabilities

Python 3.8+ License: MIT PRs Welcome

โœจ Features

  • ๐Ÿ” Smart Documentation Search - Search across multiple AI/ML library documentation
  • ๐Ÿง  Claude Integration - Seamless connection with Claude's advanced reasoning capabilities
  • ๐ŸŒ Intelligent Web Search - Leverages Serper API for targeted documentation lookup
  • ๐Ÿ’จ Fast Response Times - Optimized for quick retrieval and processing
  • ๐Ÿงฉ Extendable Architecture - Easily add more documentation sources

๐Ÿ“‹ Prerequisites

  • ๐Ÿ Python 3.8 or higher
  • ๐Ÿ”‘ Claude Pro subscription
  • ๐Ÿ” Serper API key (Get one here)
  • ๐Ÿ’ป Claude Desktop application

๐Ÿš€ Quick Start

1๏ธโƒฃ Installation

# Clone the repository
git clone https://github.com/your-username/claude-docs-assistant.git
cd claude-docs-assistant

# Create a virtual environment (recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

2๏ธโƒฃ Configuration

Create a .env file in the project root with your API keys:

SERPER_API_KEY=your_serper_api_key_here

3๏ธโƒฃ Start the MCP Server

python main.py

You should see output indicating the server is running and waiting for Claude to connect.

4๏ธโƒฃ Connect Claude Desktop App

  1. ๐Ÿ“ฑ Open the Claude Desktop App
  2. โš™๏ธ Click on your profile icon and select "Settings"
  3. ๐Ÿงฐ Navigate to the "Tools" section
  4. โž• Click "Add Tool"
  5. ๐Ÿ”— Select "Connect to a local tool"
  6. ๐Ÿ–ฅ๏ธ Follow the prompts to connect to your running MCP server
  7. โœ… Confirm the connection is successful

๐ŸŽฎ Using Your Claude Documentation Assistant

Once connected, you can start asking Claude questions that will trigger the documentation search. For example:

Could you explain how to use FAISS with LangChain? Please search the langchain documentation to help me.

Claude will automatically use your MCP server to:

  1. ๐Ÿ” Search for relevant documentation
  2. ๐Ÿ“ฅ Retrieve the content
  3. ๐Ÿง  Process and explain the information

๐Ÿ”ง Under the Hood

๐Ÿ“„ Code Structure

claude-docs-assistant/
โ”œโ”€โ”€ main.py           # MCP server implementation
โ”œโ”€โ”€ requirements.txt  # Project dependencies
โ”œโ”€โ”€ .env              # Environment variables (API keys)
โ””โ”€โ”€ README.md         # This documentation

๐Ÿ”Œ Supported Libraries

The assistant currently supports searching documentation for:

  • ๐Ÿฆœ LangChain: python.langchain.com/docs
  • ๐Ÿฆ™ LlamaIndex: docs.llamaindex.ai/en/stable
  • ๐Ÿง  OpenAI: platform.openai.com/docs

๐Ÿงฉ How It Works

  1. ๐Ÿ“ก The MCP server exposes a get_docs tool to Claude
  2. ๐Ÿ” When invoked, the tool searches for documentation using Serper API
  3. ๐Ÿ“š Results are scraped for their content
  4. ๐Ÿ”„ Content is returned to Claude for analysis and explanation

๐Ÿ› ๏ธ Advanced Configuration

Adding New Documentation Sources

Extend the docs_urls dictionary in main.py:

docs_urls = {
    "langchain": "python.langchain.com/docs",
    "llama-index": "docs.llamaindex.ai/en/stable",
    "openai": "platform.openai.com/docs",
    "huggingface": "huggingface.co/docs",  # Add new documentation sources
    "tensorflow": "www.tensorflow.org/api_docs",
}

Customizing Search Behavior

Modify the search_web function to adjust the number of results:

payload = json.dumps({"q": query, "num": 5})  # Increase from default 2

๐Ÿ” Troubleshooting

Common Issues

  • ๐Ÿšซ "Connection refused" error: Ensure the MCP server is running before connecting Claude
  • โฑ๏ธ Timeout errors: Check your internet connection or increase the timeout value
  • ๐Ÿ”’ API key issues: Verify your Serper API key is correct in the .env file

Debugging Tips

Add more detailed logging by modifying the main.py file:

import logging
logging.basicConfig(level=logging.DEBUG)

๐Ÿ“ˆ Performance Optimization

  • โšก For faster response times, consider caching frequently accessed documentation
  • ๐Ÿง  Limit the amount of text returned to Claude to avoid token limitations
  • ๐ŸŒ Use more specific queries to get more relevant documentation

๐Ÿค Contributing

Contributions are welcome! Here's how you can help:

  1. ๐Ÿด Fork the repository
  2. ๐ŸŒฟ Create a feature branch (git checkout -b feature/amazing-feature)
  3. ๐Ÿ’พ Commit your changes (git commit -m 'Add some amazing feature')
  4. ๐Ÿ“ค Push to the branch (git push origin feature/amazing-feature)
  5. ๐Ÿ” Open a Pull Request

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgements

  • Anthropic for creating Claude
  • Serper.dev for their search API
  • All the open-source libraries that make this project possible