home / mcp / tea rags mcp server
A high-performance MCP server for semantic code search using Qdrant with fast incremental indexing and production-ready features.
Configuration
View docs{
"mcpServers": {
"artk0de-tearags-mcp": {
"url": "http://your-server:3000/mcp",
"headers": {
"HTTP_PORT": "3000",
"QDRANT_URL": "http://localhost:6333",
"QDRANT_API_KEY": "YOUR_QDRANT_API_KEY",
"TRANSPORT_MODE": "http",
"PROMPTS_CONFIG_FILE": "/path/to/prompts.json"
}
}
}
}Tea Rags MCP is a high-performance MCP server designed for semantic code search using a Qdrant vector store. It supports fast incremental indexing, production-ready features, and flexible deployment options to fit local or remote setups.
You will run Tea Rags MCP either as a local (stdio) server or as a remote HTTP server, and connect a client that speaks MCP to index code, run semantic searches, and manage collections.
Prerequisites you need before installing: Node.js 22 or newer, and Podman or Docker with Compose support for the quick start.
# Clone the project
git clone https://github.com/mhalder/qdrant-mcp-server.git
cd qdrant-mcp-server
# Install dependencies
npm install
# Start services (choose one)
podman compose up -d # Using Podman
docker compose up -d # Using Docker
# Pull the embedding model
podman exec ollama ollama pull nomic-embed-text # Podman
# or
docker exec ollama ollama pull nomic-embed-text # Docker
# Build the project
npm run buildYou can run Tea Rags MCP as a local stdio server or expose it via HTTP for remote clients. The server provides a HTTP endpoint at /mcp when run in HTTP mode, and you can configure clients to connect to that endpoint.
Start the HTTP transport server (example) with environment variables and the Node runtime, then connect your MCP client to the given URL.
TRANSPORT_MODE=http HTTP_PORT=3000 node build/index.js
```
Configure a client to connect to the MCP server:
```
{
"mcpServers": {
"tea_rags": {
"url": "http://your-server:3000/mcp"
}
}
}Features cover zero setup with local embedding, privacy-first local vector storage, and code-aware indexing. You can choose among providers (Ollama, OpenAI, Cohere, Voyage AI) and tune performance with extensive environment variables.
Prompts configuration lets you create guided workflows without code changes. Prompts default to prompts.json in the project root, but you can point to a custom file with PROMPTS_CONFIG_FILE.
Tea Rags MCP exposes a comprehensive set of tools to manage collections, documents, and code indexing. These tools enable you to create and manage data, perform semantic searches, and index codebases.
If you encounter issues, verify the deployment setup and container status, confirm the Qdrant and Ollama services are running, and check access permissions and API keys. Common problems include transport misconfigurations, missing collections, or API key errors.
Tune batching, concurrency, and IO settings to match your hardware. For remote servers, increase batch sizes and parallelism carefully. For local development on laptops, reduce batch sizes and concurrency to fit memory.
Development and testing workflows rely on npm scripts for building and testing. Tests include unit tests and real integration tests that validate embedding, Qdrant operations, and metadata integration.
For quick setup, ensure you run the HTTP transport server to expose the MCP endpoint and then configure your MCP client to point to the /mcp path on that server.
Create a collection with a specified distance metric (Cosine, Euclid, Dot)
List all existing collections
Retrieve details and statistics for a collection
Delete a collection and all its documents
Add documents with automatic embedding and optional metadata
Perform natural language search with optional metadata filtering
Perform hybrid search combining semantic and keyword search with RRF
Delete documents by their IDs
Index a codebase for semantic code search using AST-aware chunking
Search indexed codebase using natural language queries
Incrementally re-index only changed files
Get indexing status and statistics for a codebase
Delete all indexed data for a codebase