这是一个使用 Sourcegraph 提供增强型代码搜索能力的模型上下文协议(MCP)服务器。
此 MCP 服务器与 Sourcegraph 集成,Sourcegraph 是一个通用的代码搜索平台,支持跨多个存储库和代码库进行搜索。它提供了强大的搜索功能和高级查询语法,使其非常适合需要在大型代码库中查找和理解代码模式的 AI 助手。
# 安装依赖项
uv sync
# 运行服务器
uv run python -m src.main
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # 在 Windows 上:venv\Scripts\activate
# 安装包
pip install -e .
# 运行服务器
python -m src.main
# 构建镜像
docker build -t sourcegraph-mcp .
# 使用默认端口运行容器
docker run -p 8000:8000 -p 8080:8080 \
-e SRC_ENDPOINT=https://sourcegraph.com \
-e SRC_ACCESS_TOKEN=your-token \
sourcegraph-mcp
# 或者使用自定义端口运行
docker run -p 9000:9000 -p 9080:9080 \
-e SRC_ENDPOINT=https://sourcegraph.com \
-e SRC_ACCESS_TOKEN=your-token \
-e MCP_SSE_PORT=9000 \
-e MCP_STREAMABLE_HTTP_PORT=9080 \
sourcegraph-mcp
SRC_ENDPOINT:Sourcegraph 实例 URL(例如,https://sourcegraph.com)SRC_ACCESS_TOKEN:私有 Sourcegraph 实例的身份验证令牌MCP_SSE_PORT:SSE 服务器端口(默认:8000)MCP_STREAMABLE_HTTP_PORT:HTTP 服务器端口(默认:8080)运行 MCP 服务器后,在您的 .cursor/mcp.json 文件中添加以下内容:
{
"mcpServers": {
"sourcegraph": {
"url": "http://localhost:8080/sourcegraph/mcp/"
}
}
}
此服务器为 AI 助手提供了三个强大的工具:
使用 Sourcegraph 的高级查询语法跨代码库进行搜索,支持正则表达式、语言过滤器和布尔运算符。
根据您的具体目标生成上下文感知的指南,以构建有效的搜索查询。
从存储库中检索文件内容或探索目录结构。
# 检查代码风格
uv run ruff check src/
# 格式化代码
uv run ruff format src/