Reference
MCP/ エージェントアクセス
Dory は MCP エンドポイントを公開するため、外部 AI エージェントは安全に Dory 接続の読み取り、スキーマの検査、保存されたクエリの読み取り、監視概要の検査、制限された読み取り専用の SQL の実行、および分析コンテキストの構築を行うことができます。
使用例
- Codex、Claude、または別の MCP 対応クライアントから Dory 接続をクエリします。
- SQL を書き込む前に、テーブル、ビュー、および列を検索します。
- テーブル構造、DDL、統計、およびプレビューを読み取ります。
- 制限された結果サイズで読み取り専用 SQL を実行します。
- クエリ結果から分析コンテキストまたはチャートの推奨事項を構築します。
- サポートされている場合は、データベース監視の概要を読み取ります。
アクセストークンを作成する
- Dory 設定を開きます。
- エージェント アクセスに移動します。
CodexやClaude Desktopなどのトークン名を入力します。- トークンを作成します。
- 完全なトークンをコピーします。 1回のみ表示されます。
トークンには dory_mcp_プレフィックスが使用されます。完全なトークンを紛失した場合は、それを取り消して新しいトークンを作成します。
デフォルトのスコープ
新しいトークンには、次の読み取りスコープと分析スコープが含まれます。
| 範囲 | 能力 |
|---|---|
connections:read | 接続、データベース、テーブルのメタデータを読み取ります。 |
query:read | テーブルをプレビューし、読み取り専用 SQL を実行します。 |
analysis:run | 結果のコンテキスト、グラフのプロファイル、分析アクションを構築します。 |
schema:read | スキーマを検索し、テーブル プロファイルを読み取ります。 |
saved_queries:read | 保存されたクエリを読み取ります。 |
monitoring:read | 監視の概要と、遅いクエリまたは失敗したクエリのサンプルを読み取ります。 |
MCP ツールは、データベース パスワードや接続シークレットを返しません。
コーデックス CLI の例
export DORY_MCP_TOKEN="dory_mcp_xxx"
codex mcp add dory --url https://your-dory.example.com/api/mcp --bearer-token-env-var DORY_MCP_TOKEN
codex mcp listクライアントごとに個別のトークンを使用し、不要になったトークンを取り消します。
一般的な MCP JSON の例
{
"mcpServers": {
"dory": {
"type": "http",
"url": "https://your-dory.example.com/api/mcp",
"headers": {
"Authorization": "Bearer ${DORY_MCP_TOKEN}"
}
}
}
}利用可能なツール
| 道具 | 目的 |
|---|---|
dory_list_connections | 表示されている Dory 接続をリストします。 |
dory_list_databases | 接続用のデータベースをリストします。 |
dory_list_tables | データベースのテーブルとビューをリストします。 |
dory_describe_table | 列、型、テーブルのメタデータを読み取ります。 |
dory_get_database_summary | 高レベルのデータベースの概要を構築します。 |
dory_get_table_profile | テーブルのプロファイルと統計を読み取ります。 |
dory_search_schema | テーブル、ビュー、または列名でスキーマを検索します。 |
dory_list_saved_queries | トークンで使用できる保存済みクエリをリストします。 |
dory_get_saved_query | 保存されたクエリを 1 つ読み取ります。 |
dory_get_monitoring_summary | サポートされている場合は、モニタリングの概要を参照してください。 |
dory_preview_table | テーブルの行をプレビューします。 |
dory_run_readonly_sql | 行制限を指定して読み取り専用の SQL を実行します。 |
dory_build_result_context | 結果データをエージェントに適したコンテキストに変換します。 |
dory_build_chart_profile | 結果の形状からチャートの提案を作成します。 |
dory_run_analysis | より高度な分析アクションを実行します。 |
dory_run_readonly_sqlは書き込みステートメントを拒否し、返される行を制限します。運用データには、データベース レベルの読み取り専用資格情報を使用することが引き続き推奨されます。
エージェントのワークフロー
dory_list_connectionsを使用して適切な接続を選択します。dory_list_databasesおよびdory_list_tablesを使用して、関連するオブジェクトを見つけます。- SQL を書き込む前に、
dory_describe_tableまたはdory_search_schemaを使用します。 - 小さな行サンプルには
dory_preview_tableを使用します。 - レビュー済みのSELECTクエリには
dory_run_readonly_sqlを使用します。 dory_build_result_contextまたはdory_build_chart_profileを使用して結果を要約します。
セキュリティに関するガイダンス
- 監査と取り消しが簡単になるように、クライアントごとに 1 つのトークンを作成します。
- トークンをソース管理にコミットしないでください。
- トークンを環境変数またはクライアント シークレット ストアに保存します。
- クライアント、ラップトップ、またはチームメイトがアクセスする必要がなくなったら、トークンを取り消します。
- 運用接続には読み取り専用のデータベース ユーザーを使用します。
- スキーマ名とサンプル行が顧客データまたはビジネスデータを明らかにする場合は、機密情報として扱います。
トラブルシューティング
| 症状 | 考えられる原因 | 修理 |
|---|---|---|
| MCP クライアントが 401 を返す | トークンが見つからないか無効です。 | トークンを再作成し、クライアント環境を更新します。 |
| クライアントは接続をリストできません | トークンconnections:readが欠落しているか、ユーザーにアクセス権がありません。 | 適切な Dory アカウントと組織からトークンを作成します。 |
| SQL は拒否されました | ステートメントは読み取り専用ではないか、サポートされていない構文が含まれています。 | プレーンなSELECTクエリを使用し、書き込み操作を削除します。 |
| 返された行が少なすぎます | MCP 行制限が適用されます。 | 追加の行を要求する前に、SQL に集約するか、クエリを絞り込みます。 |
| クライアントが接続できない | URLが間違っているか、クライアントから Dory にアクセスできません。 | 到達可能な環境で/api/mcp URLを確認します。 |
このガイドは役に立ちましたか?