denis911/RAG-MCP-server-for-local-Claude-desktop-app
If you are the rightful owner of RAG-MCP-server-for-local-Claude-desktop-app and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The FAQ-RAG MCP Server for Claude Desktop is a Model Context Protocol server that enhances FAQ search functionality using Retrieval-Augmented Generation (RAG) for the Claude Desktop application.
FAQ-RAG MCP Server for Claude Desktop
A Model Context Protocol (MCP) server that provides FAQ search functionality using RAG (Retrieval-Augmented Generation) to Claude Desktop. This project enables Claude to search through your FAQ documents and provide relevant answers based on semantic similarity.
Inspiration is coming from here: https://www.youtube.com/watch?v=rnljvmHorQw
FAQ data and the code is taken from here: https://www.youtube.com/watch?v=W2EDdZplLcU
🚀 Features
- FAQ Search: Search through hundreds of FAQ entries with semantic relevance ranking
- Real-time Integration: Works directly with Claude Desktop through MCP protocol
- Easy Setup: Simple configuration with minimal dependencies
- Windows Compatible: Tested and optimized for Windows 10/11
📋 Prerequisites
- Python 3.8 or higher
- Windows 10/11 (Mac/Linux should work but not tested)
- Claude Desktop application
🛠️ Installation & Setup
Step 1: Download Claude Desktop
- Go to Claude.ai and download Claude Desktop
- Install Claude Desktop on your Windows machine
- Create an account and sign in
Step 2: Clone/Download This Repository
Option A: Manual Download (Recommended)
- Download all files from this repository
- Create a folder:
C:\mcp_projects\claude_desktop_FAQ_RAG_MCP\ - Place all files in this folder
Option B: Git Clone
git clone https://github.com/denis911/RAG-MCP-server-for-local-Claude-desktop-app
cd claude_desktop_FAQ_RAG_MCP
Step 3: Install Python Dependencies
pip install fastmcp minsearch toyaikit
Or install globally:
pip install --user fastmcp minsearch toyaikit
Note: The requests library is imported in main.py but not actually used since we load documents locally.
Step 4: Test Your MCP Server
First, test that your server runs correctly:
cd C:\mcp_projects\claude_desktop_FAQ_RAG_MCP
python main.py
You should see output like:
Starting MCP server 'Search FAQ'...
INFO: Started server process [XXXX]
If successful, press Ctrl+C to stop the server.
Step 5: Configure Claude Desktop
-
Find your Claude Desktop config directory:
- Press
Win + R - Type
%APPDATA%\Claudeand press Enter
- Press
-
Create configuration file:
- Find a file named
claude_desktop_config.jsonin the Claude folder - Add the following content:
- Find a file named
{
"mcpServers": {
"FAQ-RAG-MCP-server": {
"command": "python",
"args": ["C:\\mcp_projects\\claude_desktop_FAQ_RAG_MCP\\main.py"],
"cwd": "C:\\mcp_projects\\claude_desktop_FAQ_RAG_MCP",
"env": {
"PYTHONPATH": "C:\\mcp_projects\\claude_desktop_FAQ_RAG_MCP"
}
}
}
}
⚠️ Important: Replace the paths with your actual installation directory if different.
Step 6: Restart Claude Desktop
-
Completely close Claude Desktop (don't just close the window)
- Use Task Manager (
Ctrl + Shift + Esc) - Look for "Claude" processes and end them
- Or right-click the Claude icon in system tray and "Exit"
- Use Task Manager (
-
Start Claude Desktop fresh
-
Wait 15-30 seconds for the MCP server to initialize
Step 7: Test the Connection
- Look for a hammer/tools icon or "Search and tools" button in Claude Desktop
- Click on it to see available tools
- You should see "FAQ-RAG-MCP-server" listed
- Test by asking Claude to search your FAQ database
🔧 Troubleshooting
Problem: "No tools available" or tools button doesn't appear
Solutions:
- Check configuration file location: Ensure
claude_desktop_config.jsonis in%APPDATA%\Claude\ - Verify JSON syntax: Use a JSON validator to check for syntax errors
- Try full Python path:
Use the full path in your config:
where python"command": "C:\\Users\\YourName\\AppData\\Local\\Programs\\Python\\Python312\\python.exe" - Check file paths: Ensure all paths in config are correct and use double backslashes (
\\)
Problem: MCP server starts but disconnects immediately
Solutions:
- Test server manually first:
python main.py - Check for missing dependencies:
pip show fastmcp minsearch toyaikit - Verify documents.json exists in the same directory as main.py
Problem: "Request timed out" errors
Solutions:
- Reduce document loading time - The FAQ database might be too large
- Use the simple test server first:
python test_simple.py - Check antivirus software - It might be blocking the connection
Problem: Permission denied or file not found errors
Solutions:
- Run Command Prompt as Administrator
- Check file permissions on your project directory
- Use absolute paths instead of relative paths in configuration
📁 File Structure
claude_desktop_FAQ_RAG_MCP/
├── main.py # Main MCP server with SearchTools integration
├── search_tools.py # FAQ search functionality and index management
├── test_simple.py # Simple test server for troubleshooting
├── documents.json # FAQ database (1000+ questions)
├── claude_desktop_config.json # Example configuration file
└── README.md # This file
🎯 Usage Examples
Once connected, you can interact with your FAQ database through Claude:
Example 1: Technical Questions
You ask: "How to install Kafka on Windows?"
Claude searches your FAQ and responds with: 5 relevant answers from your database, ranked by relevance, covering Docker setup, Python integration, and troubleshooting.
Example 2: Learning Resources
You ask: "What's the easiest way to learn DBT?"
Claude provides: Information combining internet search results, FAQ database answers, and its own knowledge for a comprehensive learning path.
Example 3: Troubleshooting
You ask: "I'm getting a Docker permission error"
Claude searches: Your FAQ database for similar issues and provides specific solutions from other users' experiences.
🎉 Benefits
- Instant Access: Search hundreds of FAQ entries instantly
- Contextual Answers: Get relevant answers ranked by similarity
- Local Processing: Your data stays on your machine
- Extensible: Easy to add more documents or modify search logic
- Integration: Works within Claude Desktop interface
📝 Technical Details
- Framework: FastMCP for MCP protocol implementation
- Search Engine: MinSearch with AppendableIndex for document indexing and retrieval
- Integration: toyaikit.tools for wrapping SearchTools methods as MCP tools
- Transport: Default MCP transport (stdio) for reliable Claude Desktop communication
- Data Storage: JSON-based FAQ storage with course categorization and metadata
- Search Features:
- Semantic search across question, text, and section fields
- Course filtering (currently set to 'data-engineering-zoomcamp')
- Boost weighting (questions: 3.0x, sections: 0.5x)
- Returns top 5 most relevant results - hard-coded for now, could be any number required
🆘 Getting Help
If you're still having issues:
- Check Claude Desktop logs for error messages
- Test with the simple server first (
test_simple.py) - Verify all file paths are correct in your configuration
- Ensure Python dependencies are properly installed
- Try different Python versions if compatibility issues arise
🏷️ Version Info
- Tested with: Claude Desktop v0.13.19
- Python: 3.8+
- Platform: Windows 10/11 (should work on Mac/Linux)
Happy searching! 🔍 Your FAQ database is now at your fingertips through Claude Desktop.