项目简介

BigQuery MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在让大型语言模型 (LLM),如 Claude,能够直接与您的 Google BigQuery 数据进行交互。它充当 LLM 和 BigQuery 数据库之间的桥梁,允许您通过自然语言查询和分析 BigQuery 中的数据,而无需手动编写 SQL 代码。

主要功能点

  • 自然语言查询: 通过简单的自然语言提问,即可查询 BigQuery 数据库中的数据。
  • 数据访问: 支持访问 BigQuery 中的表和物化视图。
  • 模式探索: 清晰展示数据集的结构,包括表和视图的类型。
  • 安全访问: 提供只读数据访问权限,保障数据安全。
  • 可配置: 支持通过命令行参数配置项目 ID、地理位置和服务账号密钥文件等信息。

安装步骤

  1. 安装 Node.js: 确保您的计算机上已安装 Node.js 14 或更高版本。

  2. 安装 BigQuery MCP Server: 推荐使用 Smithery 进行快速安装。打开终端并运行以下命令:

    npx @smithery/cli install @ergut/mcp-bigquery-server --client claude

    按照提示输入您的 Google Cloud 项目 ID 和 BigQuery 地理位置(默认为 us-central1)。Smithery 将自动配置 Claude Desktop 并重启应用。

    如果您选择手动安装,请参考仓库 README.md 中的 "Option 2: Manual Setup" 部分。

服务器配置

要将 BigQuery MCP Server 集成到 MCP 客户端(例如 Claude Desktop),您需要配置客户端的配置文件。以下是配置信息,您需要将其添加到客户端的 MCP 服务器配置中。

Claude Desktop 配置示例 (claude_desktop_config.json):

{
  "mcpServers": {
    "bigquery": {
      "command": "npx",
      "args": [
        "-y",
        "@ergut/mcp-bigquery-server",
        "--project-id",
        "YOUR_PROJECT_ID",  // 替换为您的 Google Cloud 项目 ID
        "--location",
        "us-central1"      // BigQuery 地理位置,默认为 us-central1,可根据您的实际情况修改
      ]
    }
  }
}

如果使用服务账号密钥文件进行身份验证,配置示例为:

{
  "mcpServers": {
    "bigquery": {
      "command": "npx",
      "args": [
        "-y",
        "@ergut/mcp-bigquery-server",
        "--project-id",
        "YOUR_PROJECT_ID",  // 替换为您的 Google Cloud 项目 ID
        "--location",
        "us-central1",      // BigQuery 地理位置,默认为 us-central1,可根据您的实际情况修改
        "--key-file",
        "/path/to/service-account-key.json" // 替换为您的服务账号密钥文件路径
      ]
    }
  }
}

配置参数说明:

  • 'server name': 'bigquery' (此名称在客户端配置中用于标识该服务器)
  • 'command': 'npx' (用于执行 Node.js 包)
  • 'args': 启动服务器的参数列表,包括:
    • '-y': 'npx' 参数,用于自动确认安装包
    • '@ergut/mcp-bigquery-server': 要执行的 npm 包名称,即 BigQuery MCP Server
    • '--project-id': 您的 Google Cloud 项目 ID (必填)
    • '--location': BigQuery 地理位置 (可选,默认为 us-central1)
    • '--key-file': 服务账号密钥文件路径 (可选,如果使用服务账号密钥文件进行身份验证)

注意: 请将 'YOUR_PROJECT_ID' 和 '/path/to/service-account-key.json' 替换为您的实际信息。

基本使用方法

  1. 启动 MCP 客户端: 启动您配置了 BigQuery MCP Server 的 MCP 客户端,例如 Claude Desktop。
  2. 开始对话: 在客户端中,您可以像与普通 LLM 对话一样,提出关于您的 BigQuery 数据的问题。例如:
    • "上个月销售额最高的 10 个客户是谁?"
    • "订单量超过 100 的产品有哪些?"
    • "展示客户表中的字段名称。"

MCP 服务器会将您的自然语言问题转换为 BigQuery SQL 查询,执行查询并返回结果给客户端,最终以自然语言呈现给您。

信息

分类

数据库与文件