MCP-RAG: Model Context Protocol with RAG 
A powerful and efficient RAG (Retrieval-Augmented Generation) implementation using GroundX and OpenAI, built with Modern Context Processing (MCP).
Features
- Advanced RAG Implementation: Utilizes GroundX for high-accuracy document retrieval
- Model Context Protocol: Seamless integration with MCP for enhanced context handling
- Type-Safe: Built with Pydantic for robust type checking and validation
- Flexible Configuration: Easy-to-customize settings through environment variables
- Document Ingestion: Support for PDF document ingestion and processing
- Intelligent Search: Semantic search capabilities with scoring
Prerequisites
- Python 3.12 or higher
- OpenAI API key
- GroundX API key
- MCP CLI tools
Installation
- Clone the repository:
git clone <repository-url>
cd mcp-rag
- Create and activate a virtual environment:
uv sync
source .venv/bin/activate # On Windows, use `.venvScriptsactivate`
Configuration
- Copy the example environment file:
cp .env.example .env
- Configure your environment variables in
.env
:
GROUNDX_API_KEY="your-groundx-api-key"
OPENAI_API_KEY="your-openai-api-key"
BUCKET_ID="your-bucket-id"
Usage
Starting the Server
Run the inspect server using:
mcp dev server.py
Document Ingestion
To ingest new documents:
from server import ingest_documents
result = ingest_documents("path/to/your/document.pdf")
print(result)
Performing Searches
Basic search query:
from server import process_search_query
response = process_search_query("your search query here")
print(f"Query: {response.query}")
print(f"Score: {response.score}")
print(f"Result: {response.result}")
With custom configuration:
from server import process_search_query, SearchConfig
config = SearchConfig(
completion_model="gpt-4",
bucket_id="custom-bucket-id"
)
response = process_search_query("your query", config)
Dependencies
groundx
(≥2.3.0): Core RAG functionalityopenai
(≥1.75.0): OpenAI API integrationmcp[cli]
(≥1.6.0): Modern Context Processing toolsipykernel
(≥6.29.5): Jupyter notebook support
Security
- Never commit your
.env
file containing API keys - Use environment variables for all sensitive information
- Regularly rotate your API keys
- Monitor API usage for any unauthorized access
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
MCP-RAG Server
Project Details
- sourangshupal/mcp-rag
- Last Updated: 4/20/2025
Recomended MCP Servers
MCP Agile Flow
Salesforce MCP Integration
Image Generation MCP Server
Obsidian iCloud MCP
Connecting your Obsidian Vaults that are stored in local to AI via the Model Context Protocol (MCP)
RAG Documentation MCP Server
Claude MCP Trello
A Model Context Protocol (MCP) server that provides tools for interacting with Trello boards.
MCP Server Giphy
An implementation of Giphy integration with Model Context Protocol
Placid MCP Server
Generate image and video creatives using Placid.app templates in MCP compatible hosts
DaVinci Resolve MCP
MCP server integration for DaVinci Resolve
API-Market MCP Server
API Market MCP Servers
OneNote MCP Server
OKX MCP Server