
Bazel MCP Server

2025.03.24
0
JavaScriptBazel 构建系统MCP 服务器开发效率
Bazel MCP Server 是一个本地 MCP 服务器,它将 Bazel 构建系统的功能暴露给支持 MCP 的 AI 代理。这在 MCP 环境没有现有的命令行工具,或者调用的 shell 环境配置错误导致无法使用 Bazel 时特别有用。
View on GitHub
Overview
基本能力
产品定位
Bazel MCP Server 是一个本地 MCP 服务器,它将 Bazel 构建系统的功能暴露给支持 MCP 的 AI 代理。
核心功能
- bazel_build_target: 构建指定的 Bazel 目标
- bazel_query_target: 查询依赖图中匹配模式的目标
- bazel_test_target: 运行指定目标的测试
- bazel_list_targets: 列出工作区中的所有可用目标(需要路径参数,使用 "//" 表示所有目标)
- bazel_fetch_dependencies: 获取外部依赖
- bazel_set_workspace_path: 在运行时更改 Bazel 工作区路径
适用场景
- 当 MCP 环境没有现有的命令行工具时
- 当调用的 shell 环境配置错误导致无法使用 Bazel 时
工具列表
- bazel_build_target: 构建指定的 Bazel 目标
- bazel_query_target: 查询依赖图中匹配模式的目标
- bazel_test_target: 运行指定目标的测试
- bazel_list_targets: 列出工作区中的所有可用目标
- bazel_fetch_dependencies: 获取外部依赖
- bazel_set_workspace_path: 在运行时更改 Bazel 工作区路径
常见问题解答
- 问题: 如何在远程 SSH 会话中使用? 解答: 不支持在 Cursor 的远程 SSH 会话中使用,因为它运行的是本地 MCP 服务器。
- 问题: 如何调试?
解答: 设置
DEBUG=true
环境变量以启用详细日志记录到控制台。设置日志路径也有助于调试不将日志打印到控制台的客户端。
使用教程
使用依赖
- 需要安装 Node.js 和 npm
- 需要安装 Bazel
安装教程
使用 Cursor
将以下内容添加到 .cursor/mcp.json
中:
{
"mcpServers": {
"bazel": {
"command": "npx",
"args": [
"-y",
"github:nacgarg/bazel-mcp-server",
"--bazel_path",
"/absolute/path/to/your/bazel/binary",
"--workspace_path",
"/absolute/path/to/your/bazel/workspace"
]
}
}
}
独立运行
# 直接从 GitHub 运行(无需安装)
npx -y github:nacgarg/bazel-mcp-server
# 从源代码运行
git clone https://github.com/nacgarg/bazel-mcp-server.git
cd bazel-mcp-server
npm install
npm run build
dist/index.js
调试方式
- 设置
DEBUG=true
环境变量以启用详细日志记录到控制台 - 设置日志路径有助于调试不将日志打印到控制台的客户端