NRTSearch MCP服务器
Lucene/NRTSearch的生产就绪模型上下文协议(MCP)服务器,对GitHub Copilot和Claude等AI助手提供一流的支持。
______________________________________________________________________
特性
- 将NRTSearch/Lucene搜索作为AI工具的强大MCP服务器公开
- 接受任何Lucene查询(布尔、短语、范围、通配符、模糊等)
- 结构化日志记录、重试和突出显示支持
- 具有完整测试覆盖率的纯单元可测试搜索逻辑
- 与GitHub Copilot、Claude Desktop和其他MCP客户端轻松集成
- 现代Python打包和配置(Pydantic、pyproject.toml)
______________________________________________________________________
快速开始
git clone https://github.com/tvergilio/nrtsearch-mcp-server.git
cd nrtsearch-mcp-server
./quickstart.sh这将:
- 安装所有依赖项(包括MCP SDK)
- 在配置的端口上启动服务器
______________________________________________________________________
用法
CLI/手册
安装后,您可以使用以下任一方式启动服务器:
# Using the Python module
python -m nrtsearch_mcp.server
# Or, if installed via pip/pipx, use the CLI entrypoint:
nrtsearch-mcp使用GitHub Copilot(VS代码)
- 安装VS Code和GitHub副本
- 添加
nrtsearch-mcp作为VS代码设置中的模型上下文提供程序(请参见.vscode/settings.json) - 启动服务器(
./quickstart.sh或nrtsearch-mcp) - 使用Copilot Chat以自然语言查询Lucene索引
______________________________________________________________________
配置
服务器通过环境变量和/或JSON配置文件进行配置。默认情况下,它会查找:
NRTSEARCH_MCP_CONFIGenv-var(配置路径)./config.json在当前目录中~/nrtsearch-mcp-config.json在您的主目录中
配置示例:
{
"nrtsearch_connection": {
"host": "localhost",
"port": 8000,
"use_https": false
},
"log_level": "INFO"
}关键环境变量:
LOG_LEVEL(默认值:INFO)NRTSEARCH_MCP_CONFIG(可选配置路径)
______________________________________________________________________
API:搜索工具
主要工具是 nrtsearch/search:
参数:
index(str):索引名称(例如。yelp_reviews_staging)queryText(str):完整的Lucene查询(例如。text:(irish AND pub AND (texas OR tx)))topHits(int,默认值10):结果数(1-100)retrieveFields(列表,可选):要返回的字段(默认值:["text", "stars"])highlight(bool,可选):突出显示匹配项
退货:
- 点击列表:
{score, stars, text}
Lucene查询示例:
text:(irish AND pub AND (texas OR tx))text:"great coffee"stars:[4 TO 5] AND text:(vegan AND brunch)
______________________________________________________________________
测试
运行所有测试(单元,不需要服务器):
pytest -v测试包括:
- 成功、空虚和多次点击
- 错误处理(HTTP、网络、格式错误、缺少字段)
- 重试逻辑
- 突出显示和自定义字段
- 输入验证
______________________________________________________________________
项目结构
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
└── ...______________________________________________________________________
许可证
Apache许可证2.0。看 许可证.
