dbt
公式dbt(データビルドツール)向けの公式MCPサーバーで、dbt Core/Cloud CLIとの統合、プロジェクトメタデータの検出、モデル情報、セマンティックレイヤーのクエリ機能を提供します。
Dbt MCPで何ができますか?
- dbtプロジェクトのデータモデルを探索 —
get_all_modelsですべてのモデルを取得し、get_node_detailsで任意のノードの詳細を確認できます。 - 上流・下流の依存関係を追跡 —
get_lineageを使用して、モデルの祖先と子孫をタイプと深さでフィルタリングして表示します。 - セマンティックレイヤーを通じてメトリクスをクエリ —
list_metricsで利用可能なメトリクスを一覧表示し、query_metricsでフィルタリング・グループ化されたメトリクスクエリを実行します。 - モデルの健全性とパフォーマンスを確認 —
get_model_healthで実行ステータス、テスト結果、ソースの鮮度を取得し、get_model_performanceで実行履歴を確認します。 - プロジェクトのボイラープレートを生成 —
generate_model_yaml、generate_source、generate_staging_modelを使用して、モデルYAML、ソースYAML、ステージングモデルSQLを作成します。 - dbt Cloudジョブを管理 —
list_jobsとtrigger_job_runでジョブを一覧表示・トリガーし、get_job_run_detailsとlist_job_run_artifactsで実行の詳細やアーティファクトを確認します。
ドキュメント
dbt MCP サーバー
この MCP (Model Context Protocol) サーバーは、dbt と対話するためのさまざまなツールを提供します。この MCP サーバーを使用して、dbt Core、dbt Fusion、dbt Platform のプロジェクトのコンテキストを AI エージェントに提供できます。
詳細については、こちらのドキュメントをお読みください。dbt MCP サーバーで何が可能かについての詳細は、このブログ記事で説明しています。
実験的な MCP バンドル
MCPB 対応クライアントが追加設定なしでこのサーバーをインポートできるように、リリースごとに実験的な Model Context Protocol バンドル (dbt-mcp.mcpb) を公開しています。最新のリリースアセットからバンドルをダウンロードし、Anthropic の mcpb CLI ドキュメントに従ってインストールまたは検査してください。
フィードバック
ご意見やご質問がある場合は、GitHub Issue を作成するか、コミュニティ Slack の #tools-dbt-mcp チャンネルにご参加ください。
アーキテクチャ
dbt MCP サーバーのアーキテクチャにより、エージェントはさまざまなツールに接続できます。

ツール
SQL
dbt Platform インフラストラクチャで SQL を実行および生成するためのツール。
execute_sql: セマンティックレイヤーをサポートする dbt Platform インフラストラクチャで SQL を実行します。text_to_sql: プロジェクトコンテキストを使用して自然言語から SQL を生成します。
セマンティックレイヤー
dbt セマンティックレイヤーの詳細については、こちらをクリックしてください。
get_dimension_values: ディメンションの個別の値を取得します。特定のメトリクスにスコープするオプションがあります。get_dimensions: 指定されたメトリクスのディメンションを取得します。get_entities: 指定されたメトリクスのエンティティを取得します。get_metrics_compiled_sql: クエリを実行せずに、メトリクスのコンパイル済み SQL を返します。list_metrics: 定義されているすべてのメトリクスを取得します。list_saved_queries: 保存されているすべてのクエリを取得します。query_metrics: フィルタリングおよびグループ化オプションを使用してメトリクスクエリを実行します。
検出
dbt Discovery API の詳細については、こちらをクリックしてください。
get_all_macros: マクロを取得します。パッケージでフィルタリングするか、パッケージ名のみを返すオプションがあります。get_all_models: すべてのモデルの名前と説明を取得します。get_all_sources: 鮮度ステータスを含むすべてのソースを取得します。ソース名でフィルタリングするオプションがあります。get_exposure_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_exposures: すべてのエクスポージャー (下流のダッシュボード、アプリ、または分析) を取得します。get_lineage: タイプと深さのフィルタリングを使用して、完全なリネージグラフ (祖先と子孫) を取得します。get_macro_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_mart_models: すべてのマートモデルを取得します。get_model_children: (非推奨 — 代わりにget_lineageを使用してください)get_model_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_model_health: ヘルスシグナル (実行ステータス、テスト結果、上流ソースの鮮度) を取得します。get_model_parents: (非推奨 — 代わりにget_lineageを使用してください)get_model_performance: モデルの実行履歴を取得します。テスト結果を含めるオプションがあります。get_node_details: 任意の dbt リソースタイプ (モデル、ソース、エクスポージャー、テスト、シード、スナップショット、マクロ、セマンティックモデル) の完全な詳細を取得します。get_related_models: セマンティック検索を使用して類似モデルを検索します。get_seed_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_semantic_model_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_snapshot_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_source_details: (非推奨 — 代わりにget_node_detailsを使用してください)get_test_details: (非推奨 — 代わりにget_node_detailsを使用してください)search: [Alpha] dbt プロジェクト全体でリソースを検索します (一般提供ではありません)。
dbt CLI
クライアントが MCP ツールを通じて dbt コマンドを利用できるようにすると、データモデル、ソース、ウェアハウスオブジェクトが変更される可能性があります。クライアントを信頼し、潜在的な影響を理解している場合にのみ続行してください。
build: DAG 順にモデル、テスト、スナップショット、シードを実行します。clone: 指定された状態から選択されたノードをターゲットスキーマにクローンします。compile: モデル/テスト/分析から実行可能な SQL を生成します。Jinja ロジックの検証に役立ちます。docs: dbt プロジェクトのドキュメントを生成します。get_lineage_dev: タイプと深さのフィルタリングを使用して、ローカルの manifest.json からリネージを取得します。get_node_details_dev: ローカルの manifest.json からノードの詳細 (モデル、シード、スナップショット、ソース) を取得します。list: セレクターサポート付きで、dbt プロジェクト内のリソースをタイプ別に一覧表示します。parse: プロジェクトファイルを解析して検証し、構文の正しさを確認します。run: モデルを実行してデータベースにマテリアライズします。show: データベースに対して SQL を実行し、結果を返します。test: テストを実行してデータとモデルの整合性を検証します。
管理 API
dbt 管理 API の詳細については、こちらをクリックしてください。
cancel_job_run: 実行中のジョブをキャンセルします。get_job_details: トリガー、スケジュール、dbt コマンドを含むジョブ設定を取得します。get_job_run_details: ステータス、タイミング、ステップ、アーティファクトを含む実行の詳細を取得します。get_job_run_error: ジョブ実行のエラーおよび/または警告の詳細を取得します。警告のみを含めるか表示するオプションがあります。list_job_run_artifacts: ジョブ実行から利用可能なアーティファクトを一覧表示します。list_jobs: dbt Platform アカウント内のジョブを一覧表示します。プロジェクトまたは環境でフィルタリングするオプションがあります。list_jobs_runs: ジョブ実行を一覧表示します。ジョブ、ステータス、またはフィールドによる並べ替えでフィルタリングするオプションがあります。list_projects: dbt Platform アカウント内のすべてのプロジェクトを一覧表示します。retry_job_run: 失敗したジョブ実行を再試行します。trigger_job_run: ジョブ実行をトリガーします。git ブランチ、スキーマ、またはその他の設定を上書きするオプションがあります。
dbt Codegen
これらのツールは、dbt プロジェクトファイルのボイラープレートコード生成を自動化するのに役立ちます。
generate_model_yaml: カラムを含むモデル YAML を生成します。上流の説明を継承するオプションがあります。generate_source: データベーススキーマをイントロスペクトしてソース YAML を生成します。カラムを含めるオプションがあります。generate_staging_model: ソーステーブルからステージングモデル SQL を生成します。
dbt LSP
高度な SQL コンパイルとカラムレベルのリネージ分析のために Fusion エンジンを活用する一連のツール。
fusion.compile_sql: dbt Platform 経由でプロジェクトコンテキスト内の SQL をコンパイルします。fusion.get_column_lineage: dbt Platform 経由でカラムレベルのリネージをトレースします。get_column_lineage: ローカルでカラムレベルのリネージをトレースします (dbt Labs VSCE 経由の dbt-lsp が必要です)。
製品ドキュメント
docs.getdbt.com の公式 dbt ドキュメントからコンテンツを検索および取得するためのツール。
get_product_doc_pages: パスまたは URL で 1 つ以上の docs.getdbt.com ページの完全な Markdown コンテンツを取得します。search_product_docs: クエリに一致するページを docs.getdbt.com で検索し、関連性でランク付けされたタイトル、URL、説明を返します。完全なコンテンツを取得するには get_product_doc_pages を使用します。
MCP サーバーメタデータ
これらのツールは、MCP サーバー自体に関する情報を提供します。
get_mcp_server_branch: 実行中の dbt MCP サーバーの現在の git ブランチを返します。get_mcp_server_version: dbt MCP サーバーの現在のバージョンを返します。
例
通常、dbt MCP サーバーは Claude や Cursor などのエージェント製品に接続します。ただし、独自のエージェントの作成に興味がある場合は、examples ディレクトリで開始方法を確認してください。
依存関係
依存関係は特定のバージョンに固定されており、自動的には更新されません。セキュリティ関連の依存関係の更新のみが、自動プルリクエストを通じて送信されます。
貢献
参加方法については、CONTRIBUTING.md をお読みください。