NRTSearch
About
Exposes Lucene-based search indexes to AI assistants through the NRTSearch MCP server.
Details
- Author
- tvergilio
- Categories
- Search, Database, Knowledge Base
Jump to
Setup
Install NRTSearch in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/tvergilio/nrtsearch-mcp-server
Follow the installation instructions in the repository README, then restart your MCP client.
Production-ready Model Context Protocol (MCP) server for Lucene/NRTSearch, with first-class support for AI assistants like GitHub Copilot and Claude.
- Exposes NRTSearch/Lucene search as a robust MCP server for AI tools
- Accepts any Lucene query (Boolean, phrase, range, wildcard, fuzzy, etc.)
- Structured logging, retries, and highlight support
- Pure unit-testable search logic with full test coverage
- Easy integration with GitHub Copilot, Claude Desktop, and other MCP clients
- Modern Python packaging and configuration (Pydantic, pyproject.toml)
git clone https://github.com/tvergilio/nrtsearch-mcp-server.git cd nrtsearch-mcp-server ./quickstart.sh
- Install all dependencies (including MCP SDK)
- Start the server on the configured port
After installation, you can start the server with either:
# Using the Python module python -m nrtsearch_mcp.server # Or, if installed via pip/pipx, use the CLI entrypoint: nrtsearch-mcp
- Install VS Code and GitHub Copilot
- Addnrtsearch-mcpas a Model Context Provider in VS Code settings (see.vscode/settings.json)
- Start the server (./quickstart.shornrtsearch-mcp)
- Use Copilot Chat to query your Lucene indexes in natural language
The server is configured via environment variables and/or a JSON config file. By default, it looks for:
- NRTSEARCH_MCP_CONFIGenv var (path to config)
- ./config.jsonin the current directory
- ~/nrtsearch-mcp-config.jsonin your home directory
{ "nrtsearch_connection": { "host": "localhost", "port": 8000, "use_https": false }, "log_level": "INFO" }
- LOG_LEVEL(default: INFO)
- NRTSEARCH_MCP_CONFIG(optional config path)
- index(str): Index name (e.g.yelp_reviews_staging)
- queryText(str): Full Lucene query (e.g.text:(irish AND pub AND (texas OR tx)))
- topHits(int, default 10): Number of results (1-100)
- retrieveFields(list, optional): Fields to return (default:["text", "stars"])
- highlight(bool, optional): Highlight matches
- text:(irish AND pub AND (texas OR tx))
- text:"great coffee"
- stars:[4 TO 5] AND text:(vegan AND brunch)
- Success, empty, and multiple hits
- Error handling (HTTP, network, malformed, missing fields)
- Retry logic
- Highlight and custom fields
- Input validation
nrtsearch-mcp-server/ ├── nrtsearch_mcp/ │ ├── server.py # Main MCP server and search logic │ ├── settings.py # Pydantic config │ └── ... ├── tests/ # Unit tests ├── quickstart.sh # One-step install & run ├── requirements.txt # Python dependencies ├── pyproject.toml # Packaging/metadata └── ...
Search global news using natural language. Webz.io News Search API returns the most relevant articles and content, with filters for source, country, language, date, sentiment, and category.
Search, Query and interact with data in your Milvus Vector Database.
An MCP server for vector storage and retrieval using ChromaDB.
Local semantic search over documents (txt, md, pdf, docx, pptx, csv). Fully offline, multilingual, hybrid vector + keyword search via LanceDB. No API keys, no cloud.
Interact with on-disk documents using agentic RAG and hybrid search via LanceDB.
Connect AI tools with Pinecone projects to search, configure indexes, generate code, and manage data.
RAG Search over your content powered by Inkeep
Interact & query with Meilisearch (Full-text & semantic search API)
Production-ready RAG out of the box to search and retrieve data from your own documents.
Enable Similarity-Distance-Magnitude statistical verification for your search, software, and data science workflows
Vectorize MCP server for advanced retrieval, Private Deep Research, Anything-to-Markdown file extraction and text chunking.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




