这是一个基于 Zoekt 的 Model Context Protocol (MCP) 服务器,提供代码搜索功能。Zoekt 是一个由 Sourcegraph 使用的索引代码搜索引擎。
此 MCP 服务器集成了 Zoekt,一个针对代码仓库优化的文本搜索引擎。Zoekt 提供了基于三字母组合的索引,适用于大型代码库的搜索,使其适合需要查找和理解代码模式的 AI 助手。
# 安装依赖项
uv sync
# 运行服务器
uv run python src/main.py
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # 在 Windows 上:venv\Scripts\activate
# 安装包
pip install -e .
# 运行服务器
python src/main.py
# 构建镜像
docker build -t zoekt-mcp .
# 使用默认端口运行容器
docker run -p 8000:8000 -p 8080:8080 \
-e ZOEKT_API_URL=http://your-zoekt-instance \
zoekt-mcp
# 或者使用自定义端口运行
docker run -p 9000:9000 -p 9080:9080 \
-e ZOEKT_API_URL=http://your-zoekt-instance \
-e MCP_SSE_PORT=9000 \
-e MCP_STREAMABLE_HTTP_PORT=9080 \
zoekt-mcp
ZOEKT_API_URL:您的 Zoekt 搜索实例的 URLMCP_SSE_PORT:SSE 服务器端口(默认:8000)MCP_STREAMABLE_HTTP_PORT:HTTP 服务器端口(默认:8080)在运行 MCP 服务器后,在您的 .cursor/mcp.json 文件中添加以下内容:
{
"mcpServers": {
"zoekt": {
"url": "http://localhost:8080/zoekt/mcp/"
}
}
}
此服务器为 AI 助手提供了三个强大的工具:
使用 Zoekt 的高级查询语法在索引代码库中进行搜索,支持正则表达式、语言过滤器和布尔运算符。
根据您的特定目标生成上下文感知的指南,以构建有效的搜索查询。
从索引仓库中检索文件内容或探索目录结构。
# 检查代码风格
uv run ruff check src/
# 格式化代码
uv run ruff format src/