使用说明

项目简介

BigQuery MCP Server 是一个桥梁,连接了大型语言模型 (LLM) 如 Claude 和 Google BigQuery。它充当 LLM 和您的 BigQuery 数据库之间的“翻译器”,使您能够通过自然语言提问来查询和分析 BigQuery 中的数据,而无需手动编写 SQL 查询。

主要功能点

  • 自然语言查询: 通过简单的自然语言提问,即可执行复杂的 BigQuery SQL 查询。
  • 数据访问: 支持访问 BigQuery 数据集中的表和物化视图,方便数据探索和分析。
  • 模式发现: 能够清晰地展示数据集结构,包括表和视图的类型信息。
  • 安全限制: 默认查询限制为 1GB,并提供只读访问,确保数据安全。
  • 易于集成: 通过 MCP 协议与 LLM 客户端通信,配置简单,快速上手。

安装步骤

  1. 安装 Node.js: 确保您的系统已安装 Node.js 14 或更高版本。您可以从 nodejs.org 下载并安装。

  2. 安装 BigQuery MCP Server: 您可以通过以下两种方式安装 BigQuery MCP Server:

    方式一:使用 Smithery (推荐) Smithery 提供了一种简便的方式来安装和配置 MCP 服务器。在终端中运行以下命令:

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

    按照提示输入您的 Google Cloud 项目 ID 和 BigQuery 位置。Smithery 会自动更新 Claude Desktop 的配置。

    方式二:手动安装 如果您希望手动配置,可以使用 npm 全局安装:

    npm install -g @ergut/mcp-bigquery-server
  3. 配置 Google Cloud 身份验证: BigQuery MCP Server 需要访问您的 Google Cloud BigQuery 资源。您可以通过以下两种方式进行身份验证:

    • 使用 Google Cloud CLI (gcloud CLI): 如果您已安装并配置 gcloud CLI,可以使用以下命令进行身份验证(推荐用于开发环境):

      gcloud auth application-default login
    • 使用服务帐户密钥文件: 对于生产环境,建议使用服务帐户密钥文件。您需要在 Google Cloud Console 中创建一个服务帐户,并为其授予 'roles/bigquery.user' 或 'roles/bigquery.dataViewer' 和 'roles/bigquery.jobUser' 角色。下载服务帐户密钥 JSON 文件并妥善保存。

服务器配置

要将 BigQuery MCP Server 连接到 Claude Desktop,您需要编辑 Claude Desktop 的配置文件 'claude_desktop_config.json'。在 'mcpServers' 字段中添加以下配置:

基本配置 (使用 gcloud CLI 身份验证):

{
  "mcpServers": {
    "bigquery": {
      "command": "npx",
      "args": [
        "-y",
        "@ergut/mcp-bigquery-server",
        "--project-id", "YOUR_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",  // 将 "YOUR_PROJECT_ID" 替换为您的 Google Cloud 项目 ID
        "--location", "us-central1",         // BigQuery 位置 (可选,默认为 us-central1)
        "--key-file", "/path/to/service-account-key.json" // 将 "/path/to/service-account-key.json" 替换为您的服务帐户密钥文件路径
      ]
    }
  }
}

注意:

  • 请将 'YOUR_PROJECT_ID' 替换为您的实际 Google Cloud 项目 ID。
  • 如果使用服务帐户密钥文件,请将 '/path/to/service-account-key.json' 替换为密钥文件的实际路径。
  • 'location' 参数是可选的,默认为 'us-central1'。您可以根据您的 BigQuery 数据集位置进行调整。

基本使用方法

  1. 启动 Claude Desktop 应用程序。

  2. 在 Claude 中,您可以像与人对话一样,用自然语言提出关于 BigQuery 数据的问题。例如:

    • "What are our top 10 products by sales last month?"
    • "Show me the average order value for customers in California."
    • "List the schemas of all tables in my 'marketing' dataset."

    Claude 将使用 BigQuery MCP Server 连接到您的 BigQuery 数据库,执行查询,并将结果以自然语言返回给您。

权限配置

为了使 BigQuery MCP Server 能够正常工作,您需要为运行服务器的身份(gcloud CLI 默认账户或服务帐户)授予以下 BigQuery 角色之一:

  • 'roles/bigquery.user' (推荐,权限更全面)
  • 或者同时授予以下两个角色:
    • 'roles/bigquery.dataViewer'
    • 'roles/bigquery.jobUser'

请确保您的配置满足上述权限要求。

现在,您就可以开始使用 BigQuery MCP Server,通过自然语言与您的 BigQuery 数据进行交互了!

信息

分类

数据库与文件