一个提供对 BigQuery 访问的模型上下文协议(Model Context Protocol,MCP)服务器。此服务器让大型语言模型(LLMs)能够检查数据库架构并执行查询,为数据交互提供了便捷途径。
要通过 Smithery 自动安装 BigQuery 服务器,可使用以下命令:
npx -y @smithery/cli install mcp-server-bigquery --client claude
~/Library/Application\ Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.json"mcpServers": {
"bigquery": {
"command": "uv",
"args": [
"--directory",
"{{PATH_TO_REPO}}",
"run",
"mcp-server-bigquery",
"--project",
"{{GCP_PROJECT_ID}}",
"--location",
"{{GCP_LOCATION}}"
]
}
}
"mcpServers": {
"bigquery": {
"command": "uvx",
"args": [
"mcp-server-bigquery",
"--project",
"{{GCP_PROJECT_ID}}",
"--location",
"{{GCP_LOCATION}}"
]
}
}
请将 {{PATH_TO_REPO}}、{{GCP_PROJECT_ID}} 和 {{GCP_LOCATION}} 替换为适当的值。
该服务器实现了以下工具,为用户提供了便捷的数据库操作方式:
execute-query:使用 BigQuery 方言执行 SQL 查询list-tables:列出 BigQuery 数据库中的所有表describe-table:描述特定表格的架构信息服务器可以通过以下参数进行配置:
--project(必需):GCP 项目 ID。--location(必需):GCP 地理位置(例如 europe-west9)。--dataset(可选):仅考虑特定的 BigQuery 数据集。可以通过重复参数指定多个数据集(例如 --dataset my_dataset_1 --dataset my_dataset_2)。如果未提供,则会考虑项目中的所有数据集。--key-file(可选):BigQuery 服务帐号密钥文件的路径。如果未提供,默认使用凭据。# 使用 Smithery 安装 BigQuery 服务器
npx -y @smithery/cli install mcp-server-bigquery --client claude
# 开发/未发布的服务器配置示例
"mcpServers": {
"bigquery": {
"command": "uv",
"args": [
"--directory",
"{{PATH_TO_REPO}}",
"run",
"mcp-server-bigquery",
"--project",
"{{GCP_PROJECT_ID}}",
"--location",
"{{GCP_LOCATION}}"
]
}
}
要准备分发包,可按以下步骤操作:
uv sync
uv build
这将在 dist/ 目录下创建源代码和 wheel 发行版。
3. 发布到 PyPI:
uv publish
注意:你需要通过环境变量或命令参数设置 PyPI 凭证:
--token 或 UV_PUBLISH_TOKEN--username/UV_PUBLISH_USERNAME 和 --password/UV_PUBLISH_PASSWORD由于 MCP 服务器通过标准输入输出运行,调试可能具有挑战性。为了获得最佳的调试体验,我们强烈推荐使用 MCP Inspector。 你可以通过以下命令启动 MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory {{PATH_TO_REPO}} run mcp-server-bigquery
启动后,Inspector 会显示一个 URL,你可以在浏览器中访问该 URL 开始调试。