BigQuery MCP サーバー
Google BigQuery にアクセスするためのモデルコンテキストプロトコル(MCP)サーバー。このサーバーにより、大規模言語モデル(LLM)は BigQuery データセットの構造を理解し、SQL クエリを実行できるようになります。
特徴
認証と接続管理
- アプリケーションデフォルト認証情報(ADC)またはサービスアカウントキーファイルをサポート
- 構成可能なプロジェクトIDと場所の設定
- 起動時の認証検証
ツール
- クエリ
- 読み取り専用(SELECT)BigQuery SQL クエリを実行する
- 設定可能な最大結果と課金バイト数
- SELECT以外のクエリを防ぐためのセキュリティチェック
- すべてのデータセットの一覧
- プロジェクト内のすべてのデータセットを一覧表示する
- データセットIDの配列を返します
- データセットを含むすべてのテーブルの一覧
- 特定のデータセット内のすべてのテーブルとそのスキーマを一覧表示する
- データセットIDパラメータが必要です
- テーブルID、スキーマ、時間パーティション情報、および説明を返します
- テーブル情報を取得する
- テーブル スキーマとサンプル データ (最大 20 行) を取得します。
- パーティションフィルターを使用したパーティションテーブルのサポート
- フィルターのないパーティションテーブルに対するクエリの警告
- ドライランクエリ
- クエリの有効性をチェックし、実行せずにコストを見積もる
- 処理サイズと推定コストを返します
セキュリティ機能
- SELECTクエリのみ許可されます(読み取り専用アクセス)
- 過剰なコストを防ぐために、クエリ処理のデフォルトの制限は 500 GB です。
- パーティションテーブルに対するパーティションフィルタの推奨事項
- 認証資格情報の安全な取り扱い
インストール
ローカルインストール
Dockerのインストール
Docker コンテナ内でサーバーを実行することもできます。
または Docker Compose を使用します:
MCP構成
このサーバーを MCP 対応 LLM で使用するには、MCP 構成に追加します。
サービス アカウント キー ファイルの代わりにアプリケーションのデフォルト認証情報を使用することもできます。
アプリケーションのデフォルト資格情報の設定
アプリケーションのデフォルト資格情報を使用して認証するには:
- Google Cloud SDK をまだインストールしていない場合はインストールします。
- 認証コマンドを実行します。
- 指示に従って、BigQuery プロジェクトにアクセスできる Google アカウントでログインします。
- 認証情報はローカルマシンに保存され、BigQuery MCP サーバーによって自動的に使用されます。
テスト
テストとデバッグにはインスペクターを使用できます。
使用法
ヘルパースクリプトの使用
付属のrun-server.sh
スクリプトを使用すると、一般的な構成でサーバーを簡単に起動できます。
手動実行
コンパイルされたバイナリを直接実行することもできます。
クライアントの例
サンプルの Node.js クライアントは、 examples
ディレクトリに含まれています。
コマンドラインオプション
--project-id
: Google Cloud プロジェクト ID (必須)--location
: BigQuery の場所 (デフォルト: asia-northeast1)--key-file
: サービス アカウント キー ファイルへのパス (オプション)--max-results
: 返される最大行数(デフォルト: 1000)--max-bytes-billed
: 処理する最大バイト数 (デフォルト: 5000000000000、500GB)
必要な権限
サービス アカウントまたはユーザー資格情報には、次のいずれかが必要です。
roles/bigquery.user
(推奨)
あるいは、これら両方:
roles/bigquery.dataViewer
(テーブルデータの読み取り用)roles/bigquery.jobUser
(クエリ実行用)
使用例
クエリツール
すべてのデータセットの一覧表示ツール
データセットツールですべてのテーブルを一覧表示する
テーブル情報取得ツール
ドライランクエリツール
エラー処理
サーバーは、次の詳細なエラー メッセージを提供します。
- 認証失敗
- 権限の問題
- 無効なクエリ
- パーティションフィルターがありません
- 過剰なデータ処理要求
コード構造
サーバーは次の構造で構成されます。
ライセンス
マサチューセッツ工科大学
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
LLM が BigQuery データセット構造を理解し、SQL クエリを実行できるようにするモデル コンテキスト プロトコル サーバー。
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that provides access to BigQuery. This server enables LLMs to inspect database schemas and execute queries.Last updated -92PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables LLMs to interact with Salesforce data through SOQL queries, SOSL searches, and various API operations including record management.Last updated -1077PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables LLMs to interact with GraphQL APIs by providing schema introspection and query execution capabilities.Last updated -7331MIT License
- -securityAlicense-qualityA Model Context Protocol server that enables LLMs to interact with databases (currently MongoDB) through natural language, supporting operations like querying, inserting, deleting documents, and running aggregation pipelines.Last updated -TypeScriptMIT License