MCP RAG with ChromaDB

Provides multi-format document ingestion and retrieval using ChromaDB embeddings for semantic search.
  • other

0

GitHub Stars

other

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "cyprianfusi-mcp-rag-with-chromadb": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/mcp_rag_server",
        "run",
        "server.py"
      ]
    }
  }
}

You have a multi-format document RAG (Retrieval-Augmented Generation) MCP server that ingests a wide range of document formats, builds a semantic vector store with ChromaDB, and serves powerful retrieval and generation capabilities through a flexible MCP interface. It supports both cloud-based embeddings and local embeddings, and integrates with Claude Desktop for seamless workflows.

How to use

You run this MCP server locally and connect your MCP client to it to ingest documents, search across your data, and retrieve relevant chunks. You can ingest single files, URLs, or entire directories, then perform semantic searches that return relevant document chunks with metadata and similarity scores. The server supports both OpenAI embeddings (recommended) and Ollama embeddings for local use, and it stores vectors in a persistent ChromaDB database.

How to install

Prerequisites: Python 3.8+ and a working internet connection for dependencies. You may also choose an embedding provider: OpenAI (cloud) or Ollama (local). Install Python dependencies, then start the server.

pip install -r requirements.txt

or if you prefer using uvx (preferred in some environments):

uv pip install -r requirements.txt

MCP server configurations

Two explicit local (stdio) MCP configurations are provided for starting the server. Use the first to run from a local directory, or the second to pull the project directly from GitHub.

[
  {
    "type": "stdio",
    "name": "mcp_rag_chroma",
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/mcp_rag_server",
      "run",
      "server.py"
    ]
  },
  {
    "type": "stdio",
    "name": "mcp_rag_chroma_git",
    "command": "uvx",
    "args": [
      "--from",
      "git+https://github.com/CyprianFusi/MCP-rag-with-Chromadb.git",
      "server.py"
    ]
  }
]

Available tools

ingest_document

Ingest documents from various sources and formats such as URLs, single files, or directories. It supports multiple source types including HTTP/HTTPS URLs, local file paths, and directory paths for batch ingestion.

retrieve

Query the ingested content to retrieve relevant document chunks based on semantic similarity. You can specify the number of results to return.

db_info

Return statistics and configuration details about the vector database and its contents.

clear_db

Remove all data from the vector database to reset the ingestion state.

ingest_pdf

Legacy tool for PDF ingestion that redirects to the main ingestion workflow and supports PDF extraction.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational