Skip to main content
Glama
arbaz-builds

RAG MCP Server

by arbaz-builds

RAG MCP Server

Python FastMCP License: MIT

A FastMCP server that exposes a Retrieval-Augmented Generation (RAG) pipeline as MCP tools — so any MCP-compatible client (Claude, IDEs, agent frameworks) can index documents and answer questions over them through a standard protocol.

Stack

  • MCP framework: FastMCP

  • RAG orchestration: LlamaIndex

  • Vector store: Qdrant

  • Embeddings + LLM: NVIDIA NIM (nv-embedqa-e5-v5, llama-3.1-8b-instruct)

Related MCP server: RAG MCP Server

How it works

Document ──▶ chunk (SentenceSplitter) ──▶ embed (NVIDIA) ──▶ upsert ──▶ Qdrant
                                                                            │
User question ──▶ embed ──▶ similarity search ─────────────────────────────┘
                                       │
                                       ▼
                            top-k chunks ──▶ LLM synthesis ──▶ answer

The server keeps an in-memory reference to the last-built index so repeated queries don't require re-embedding, while still supporting a fresh load from Qdrant if the process restarts.

Tools

Tool

Description

index_document(file_path)

Loads a document, chunks it, embeds it, and upserts it into Qdrant.

query_documents(question)

Retrieves the most relevant chunks and synthesizes an answer via the LLM.

Setup

  1. Clone the repo and install dependencies:

    git clone https://github.com/arbaz-builds/rag-mcp-server.git
    cd rag-mcp-server
    pip install -r requirements.txt
  2. Copy .env.example to .env and fill in your credentials:

    cp .env.example .env
  3. Run the server:

    python main.py

The server starts over HTTP transport on 0.0.0.0:$PORT (default 8000) — ready to deploy on Render, Railway, or any container platform.

Example usage (via an MCP client)

> index_document("./handbook.pdf")
Indexed './handbook.pdf' successfully (42 chunks).

> query_documents("What is the refund policy?")
Refunds are processed within 5–7 business days for requests made within 30 days of purchase.

Environment Variables

Variable

Required

Description

NVIDIA_API_KEY

Yes

API key for NVIDIA embeddings + LLM

QDRANT_URL

Yes

Qdrant cluster URL

QDRANT_API_KEY

Yes

Qdrant API key

QDRANT_COLLECTION_NAME

Yes

Collection name in Qdrant — must match an existing collection, no default is applied

PORT

No (default: 8000)

HTTP server port

Deployment

Deployed with HTTP transport (host=0.0.0.0), making it compatible out of the box with Render, Railway, and other container-based hosts that inject a PORT environment variable.

License

MIT

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.

  • Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.

  • MCP server exposing the Backtest360 engine API as tools for AI agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arbaz-builds/rag-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server