返回市场
MCP大数据查询服务器

MCP大数据查询服务器

作者:ergut129 星标更新:2025-05-25

项目介绍

BigQuery MCP Server

smithery 徽章

<div align="center"> <img src="assets/mcp-bigquery-server-logo.png" alt="BigQuery MCP Server Logo" width="400"/> </div>

这是什么?🤔

这是一个允许您的LLMs(如Claude)直接与您的BigQuery数据通信的服务器!您可以将其视为一个友好的翻译器,位于您的AI助手和数据库之间,确保它们可以安全高效地进行交流。

快速示例

您:"上个月我们的前十大客户是谁?"
Claude:*查询您的BigQuery数据库并用简单的英语给出答案*

无需手动编写SQL查询——只需自然地与您的数据聊天!

它是如何工作的?🛠️

此服务器使用模型上下文协议(MCP),这是一种用于AI-数据库通信的通用翻译器。虽然MCP设计为可与任何AI模型配合使用,但目前它仅作为开发者预览版在Claude Desktop中可用。

您需要做的就是:

  1. 设置身份验证(见下文)
  2. 将您的项目详情添加到Claude Desktop的配置文件中
  3. 开始自然地与您的BigQuery数据聊天!

它能做什么?📊

  • 通过用简单的英语提问来运行SQL查询
  • 访问数据集中的表和物化视图
  • 探索数据集模式,并清晰地标记资源类型(表与视图)
  • 在安全限制内分析数据(默认查询限制为1GB)
  • 保持数据安全(只读访问)

快速开始🚀

先决条件

  • Node.js 14或更高版本
  • 启用了BigQuery的Google Cloud项目
  • 已安装Google Cloud CLI或服务账户密钥文件
  • Claude Desktop(目前唯一支持的LLM接口)

方案1:通过Smithery快速安装(推荐)

要通过Smithery自动安装BigQuery MCP Server,请在终端中运行以下命令:

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

安装程序会提示您提供:

  • 您的Google Cloud项目ID
  • BigQuery位置(默认为us-central1)

配置完成后,Smithery会自动更新您的Claude Desktop配置并重新启动应用程序。

方案2:手动设置

如果您更喜欢手动配置或需要更多控制:

  1. 与Google Cloud进行身份验证(选择一种方法):

    • 使用Google Cloud CLI(适合开发):
      gcloud auth application-default login
      
    • 使用服务账户(生产环境推荐):
      # 保存您的服务账户密钥文件并使用--key-file参数
      # 记住要保护好您的服务账户密钥文件,切勿提交到版本控制系统
      
  2. 添加到您的Claude Desktop配置 将以下内容添加到您的claude_desktop_config.json中:

    • 基本配置:

      {
        "mcpServers": {
          "bigquery": {
            "command": "npx",
            "args": [
              "-y",
              "@ergut/mcp-bigquery-server",
              "--project-id",
              "your-project-id",
              "--location",
              "us-central1"
            ]
          }
        }
      }
      
    • 使用服务账户:

      {
        "mcpServers": {
          "bigquery": {
            "command": "npx",
            "args": [
              "-y",
              "@ergut/mcp-bigquery-server",
              "--project-id",
              "your-project-id",
              "--location",
              "us-central1",
              "--key-file",
              "/path/to/service-account-key.json"
            ]
          }
        }
      }
      
  3. 开始聊天! 打开Claude Desktop并开始询问有关您的数据的问题。

命令行参数

该服务器接受以下参数:

  • --project-id:(必需)您的Google Cloud项目ID
  • --location:(可选)BigQuery位置,默认为'us-central1'
  • --key-file:(可选)服务账户密钥JSON文件路径

使用服务账户的示例:

npx @ergut/mcp-bigquery-server --project-id your-project-id --location europe-west1 --key-file /path/to/key.json

需要的权限

您需要以下之一:

  • roles/bigquery.user(推荐)
  • 或者两者:
    • roles/bigquery.dataViewer
    • roles/bigquery.jobUser

开发者设置(可选)🔧

想要自定义或贡献吗?这里是本地设置的方法:

# 克隆并安装
git clone https://github.com/ergut/mcp-bigquery-server
cd mcp-bigquery-server
npm install

# 构建
npm run build

然后更新您的Claude Desktop配置以指向您的本地构建:

{
  "mcpServers": {
    "bigquery": {
      "command": "node",
      "args": [
        "/path/to/your/clone/mcp-bigquery-server/dist/index.js",
        "--project-id",
        "your-project-id",
        "--location",
        "us-central1",
        "--key-file",
        "/path/to/service-account-key.json"
      ]
    }
  }
}

当前限制⚠️

  • MCP支持目前仅在Claude Desktop(开发者预览版)中可用
  • 连接仅限于在同一台机器上运行的本地MCP服务器
  • 查询是只读的,并且有1GB的处理限制
  • 虽然支持表和视图,但某些复杂视图类型可能有限制

支持与资源💬

许可证📝

MIT许可证 - 查看LICENSE文件获取详细信息。

作者✍️

Salih Ergüt

赞助

本项目由以下赞助商自豪地赞助:

<div align="center"> <a href="https://www.oredata.com"> <img src="assets/oredata-logo-nobg.png" alt="OREDATA" width="300"/> </a> </div>

版本历史📋

查看CHANGELOG.md获取更新和版本历史。