Custom MCP Server with RAG & Tools
Enables notes management, weather and news search, document ingestion and RAG-based semantic search using GroundX, with OpenAI GPT integration for summarization and completions.
README
Custom MCP Server with RAG & Tools
This project implements a Custom MCP (Multi-tool Control Protocol) server using FastMCP, supporting:
- Notes Management (Add / Read / Summarize Notes)
- Weather Search (via WeatherAPI)
- Brave News Search (via Brave API)
- Document Ingestion & RAG Queries (via GroundX)
- OpenAI GPT Integration for Summarization & RAG
Features
- Append, read, and summarize text notes locally
- Get real-time weather info
- Search current news headlines via Brave API
- Ingest PDFs and perform RAG-based semantic search using GroundX
- Supports OpenAI GPT (e.g.,
gpt-4o) for completions - Local MCP Inspector for testing/debugging
Installation
1. Using uv (Recommended)
uv lock
uv sync
2. Using pip
pip install -r requirements.txt
Environment Variables (.env)
OPENAI_API_KEY=your_openai_api_key
GROUNDX_API_KEY=your_groundx_api_key
WEATHER_API_KEY=your_weatherapi_key
BRAVE_API_KEY=your_brave_api_key
BUCKET_ID=your_groundx_bucket_id
Running the MCP Server
Development Mode (with Inspector UI)
mcp dev main.py
If you get authentication errors, run with:
DANGEROUSLY_OMIT_AUTH=true mcp dev main.py
Development Mode with claude desktop app:
mcp install main.py
mcp run main
Available Tools & Resources
| Tool Name | Description |
|---|---|
add_note(message) |
Append note to local file |
read_notes() |
Return all stored notes |
note_summary_prompt() |
Generate a prompt to summarize notes using GPT |
brave_search_results(q) |
Latest news via Brave Search API |
fetch_weather(city) |
Real-time weather from WeatherAPI |
ingest_documents(path) |
Upload PDF to GroundX knowledge base |
process_search_query(q) |
Perform RAG search with OpenAI GPT completions |
search_doc_for_rag_context(q) |
Retrieve context text for GPT queries |
API Example (via Inspector)
{
"tool": "fetch_weather",
"args": {
"city": "New York"
}
}
Example Workflow
uv sync
cp .env.example .env # setup .env file
mcp dev main.py # start MCP development server
Troubleshooting
Error: Connection Error - Missing Proxy Token
➡️ Solution: Use the URL provided or run:
DANGEROUSLY_OMIT_AUTH=true mcp dev main.py
License
MIT License © 2025 Your Name / Your Organization
Generated with ❤️ using MCP, GroundX, OpenAI.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.