B

Bazel MCP 服

@nacgarg/bazel-mcp-server
0 Stars 315 次浏览 nacgarg 更新于 2026-08-23

一种本地的MCP服务器,它将Bazel构建系统功能暴露给AI代理,使它们即使在无法直接访问Bazel的环境中,也能通过自然语言构建、测试、查询和管理Bazel项目。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Bazel MCP 服务器

一个本地的 MCP 服务器,它将 Bazel 构建系统功能暴露给启用了 MCP 的 AI 代理。

当 MCP 环境中没有现有的命令行工具,或者调用的 shell 环境配置错误导致无法使用 Bazel 时,这非常有用。

工具

Bazel MCP 服务器提供了以下工具:

  • bazel_build_target: 构建指定的 Bazel 目标
  • bazel_query_target: 查询与模式匹配的目标依赖图
  • bazel_test_target: 运行指定目标的测试
  • bazel_list_targets: 列出工作空间中的所有可用目标(需要路径参数,使用 "//" 表示所有目标)
  • bazel_fetch_dependencies: 获取外部依赖
  • bazel_set_workspace_path: 在运行时更改 Bazel 工作空间路径

每个命令(bazel_set_workspace_path 除外)都支持一个可选的 additionalArgs 参数,允许传递额外的参数到底层的 Bazel 命令。这对于指定如 --verbose_failures--test_output=all 等标志非常有用。

使用

安装

与 Cursor 一起使用

.cursor/mcp.json 中添加以下内容。

您不需要提供工作空间路径,因为 LLM 可以使用 set_workspace_path 来在运行时更改工作空间路径。

通常情况下,bazel 二进制文件会被自动找到,但如果遇到问题,可以使用 --bazel_path 标志提供 bazel 二进制文件的路径。

:warning: 注意,当使用 Remote SSH 会话与 Cursor 一起使用时,这种方法不起作用,因为它会在本地运行 MCP 服务器。

{
  "mcpServers": {
    "bazel": {
      "command": "npx",
      "args": [
        "-y",
        "github:nacgarg/bazel-mcp-server",

        // If you need to specify the bazel binary path
        "--bazel_path", 
        "/absolute/path/to/your/bazel/binary",

        // If you need to specify the workspace path
        "--workspace_path",
        "/absolute/path/to/your/bazel/workspace"

        // See Configuration Table below for more options
      ]
    }
  }
}

与 Claude Desktop 一起使用

您可以使用与上述相同的配置与 Claude Desktop 一起使用。

单独启动

# Run directly from GitHub (no installation needed)
npx -y github:nacgarg/bazel-mcp-server

# From source
git clone https://github.com/nacgarg/bazel-mcp-server.git
cd bazel-mcp-server
npm install
npm run build
dist/index.js

配置

此 MCP 服务器允许几种不同的配置方法。它们将按以下顺序使用:

  1. 命令行参数
  2. 环境变量
  3. 配置文件

配置表

CLI 参数 环境变量 配置文件键 描述
--bazel_path MCP_BAZEL_PATH bazel_path 要使用的 Bazel 二进制文件的路径。
--workspace_path MCP_WORKSPACE_PATH workspace_path 要使用的 Bazel 工作空间的路径。
--workspace_config MCP_WORKSPACE_CONFIG workspace_config 要使用的工作空间的配置。默认情况下,这使用工作空间根目录中的 .bazelrc 文件。
--log_path MCP_LOG_PATH log_path 写入服务器日志的路径。

调试

设置 DEBUG=true 环境变量以启用控制台详细日志记录。

对于不将日志打印到控制台的客户端(例如 Cursor),设置日志路径也有助于调试。

许可证

本项目根据 MIT 许可证许可。有关详细信息,请参阅 LICENSE 文件。

相关 MCP 服务