Skip to main content
Glama
ergut

BigQuery MCP Server

by ergut

BigQuery MCP サーバー

鍛冶屋のバッジ

これは何ですか?🤔

これは、Claude のような LLM が 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 クエリを書く必要はありません。データと自然に対話するだけです。

Related MCP server: MemGPT MCP Server

どのように機能するのですか?🛠️

このサーバーは、AIとデータベース間の通信における万能翻訳機のような役割を果たすモデルコンテキストプロトコル(MCP)を使用しています。MCPはあらゆるAIモデルで動作するように設計されており、現在はClaude Desktopで開発者プレビューとして利用可能です。

必要なことは次の通りです:

  1. 認証を設定する(下記参照)

  2. Claude Desktopの設定ファイルにプロジェクトの詳細を追加します

  3. BigQuery データと自然にチャットを始めましょう。

何ができるの?📊

  • 簡単な英語で質問するだけでSQLクエリを実行できます

  • データセット内のテーブルとマテリアライズドビューの両方にアクセスします

  • リソースタイプ(テーブルとビュー)を明確にラベル付けしたデータセット スキーマを探索します。

  • 安全な制限内でデータを分析します(デフォルトでは 1 GB のクエリ制限)

  • データを安全に保つ(読み取り専用アクセス)

クイックスタート 🚀

前提条件

  • Node.js 14以上

  • BigQuery が有効になっている Google Cloud プロジェクト

  • Google Cloud CLI がインストールされている、またはサービス アカウント キー ファイル

  • Claude Desktop(現在サポートされている唯一のLLMインターフェース)

オプション 1: Smithery 経由のクイックインストール (推奨)

Smithery経由で Claude Desktop 用の BigQuery MCP Server を自動的にインストールするには、ターミナルで次のコマンドを実行します。

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

インストーラーは次のことを要求します:

  • Google Cloud プロジェクト ID

  • BigQuery のロケーション(デフォルトは us-central1)

設定が完了すると、Smisery は自動的に Claude Desktop の設定を更新し、アプリケーションを再起動します。

オプション2: 手動セットアップ

手動での設定を希望する場合、またはより詳細な制御が必要な場合:

  1. Google Cloud で認証する(1 つの方法を選択):

    • Google Cloud CLI を使用する (開発に最適):

      gcloud auth application-default login
    • サービス アカウントの使用 (本番環境では推奨):

      # Save your service account key file and use --key-file parameter # Remember to keep your service account key file secure and never commit it to version control
  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

開発者向け設定(オプション)🔧

カスタマイズや貢献をしたいですか?ローカルで設定する方法は次のとおりです。

# 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ファイルを参照してください。

著者 ✍️

サリフ・エルグット

スポンサーシップ

このプロジェクトは、以下の団体によって支援されています:

バージョン履歴 📋

更新とバージョン履歴については、 CHANGELOG.md を参照してください。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ergut/mcp-bigquery-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server