BigQuery通服
这是一个让您的大型语言模型(如 Claude)能够直接与您的 BigQuery 数据进行通信的服务器!可以将其想象成一个友好的翻译器,位于您的 AI 助手和数据库之间,确保它们能够安全且高效地进行交流。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"bigquery": {
"args": [
"-y",
"@ergut/mcp-bigquery-server",
"--project-id",
"your-project-id",
"--location",
"us-central1"
],
"command": "npx"
}
}
}
该服务需要配置环境变量:key-file、location、project-id
可用工具 (1 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
query 2 个参数
Run a read-only BigQuery SQL query
该工具无需必填参数,直接调用即可
服务介绍
BigQuery MCP 服务器
这是什么?🤔
这是一个让您的大语言模型(如 Claude)直接与您的 BigQuery 数据对话的服务器!您可以将其视为一个友好的翻译器,位于您的 AI 助手和数据库之间,确保它们能够安全高效地交流。
快速示例
You: "What were our top 10 customers last month?"
Claude: *queries your BigQuery database and gives you the answer in plain English*
不再需要手动编写 SQL 查询 - 只需自然地与您的数据交谈!
它是如何工作的?🛠️
该服务器使用模型上下文协议(MCP),这是一种用于 AI-数据库通信的通用翻译器。虽然 MCP 设计为可以与任何 AI 模型一起工作,但目前它仅作为 Claude Desktop 中的开发者预览版提供。
您需要做的全部步骤如下:
- 设置身份验证(见下文)
- 将您的项目详细信息添加到 Claude Desktop 的配置文件中
- 自然地开始与您的 BigQuery 数据进行聊天!
它能做什么?📊
- 只需用简单的英语提问即可运行 SQL 查询
- 访问数据集中的表和物化视图
- 通过清晰标注资源类型(表 vs 视图)来探索数据集模式
- 在安全限制内分析数据(默认查询限制为 1GB)
- 保持数据安全(只读访问)
快速开始 🚀
先决条件
- Node.js 14 或更高版本
- 启用了 BigQuery 的 Google Cloud 项目
- 安装了 Google Cloud CLI 或拥有服务账号密钥文件
- Claude Desktop(目前唯一支持的大语言模型界面)
选项 1:通过 Smithery 快速安装(推荐)
要通过 Smithery 自动为 Claude Desktop 安装 BigQuery MCP 服务器,请在终端中运行以下命令:
npx @smithery/cli install @ergut/mcp-bigquery-server --client claude
安装程序将提示您输入:
- 您的 Google Cloud 项目 ID
- BigQuery 位置(默认为 us-central1)
配置完成后,Smithery 将自动更新您的 Claude Desktop 配置并重启应用程序。
选项 2:手动设置
如果您更喜欢手动配置或需要更多控制权:
-
使用 Google Cloud 进行身份验证(选择一种方法):
- 使用 Google Cloud CLI(适合开发环境):
gcloud auth application-default login - 使用服务账号(推荐用于生产环境):
# 保存您的服务账号密钥文件,并使用 --key-file 参数 # 请确保您的服务账号密钥文件安全,不要将其提交到版本控制系统中
- 使用 Google Cloud CLI(适合开发环境):
-
添加到您的 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" ] } } }
-
-
开始聊天!
打开 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.dataViewerroles/bigquery.jobUser
开发者设置(可选)🔧
想要自定义或贡献?这是如何在本地设置的方法:
# Clone and install
git clone https://github.com/ergut/mcp-bigquery-server
cd mcp-bigquery-server
npm install
# Build
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
赞助
此项目由以下公司赞助:
版本历史 📋
请参阅 CHANGELOG.md 以获取更新和版本历史记录。