mcpField
D
Doris MCP Server

Doris MCP Server

リモート
doris.apache.orgデータベース35411 週間前に更新
リポジトリ公式サイト

Doris MCP Server について

Apache Doris MCP Server は、Apache Doris の機能を MCP ホストや AI エージェントに公開する読み取り専用の MCP サーバーです。8 つのドメインと 55 個の子機能を段階的に検出する仕組みで、認可、スキーマ、障害時の挙動を明示しています。

主な機能

  1. 018 ドメインと 55 個の子機能を段階的に検出
  2. 02読み取り専用ランタイムと Doris RBAC による最終認可
  3. 03stdio と Streamable HTTP のトランスポート対応
  4. 04SQL の形、行数、バイト数の上限設定
  5. 05出力スキーマの検証と機密情報のマスキング
  6. 06任意で利用可能な ADBC と MetricFlow 連携

活用シーン

  1. 01AI エージェントによる Doris データの照会と実行計画の確認
  2. 02MCP ホストからのスロークエリとクラスタ状態の診断
  3. 03Doris のメタデータとリネージを読み取り専用で参照

MCP 対応

本プロジェクトは MCP サーバーであり、stdio または Streamable HTTP 経由で Doris のツールと子機能を MCP クライアントに公開します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttp://127.0.0.1:3000/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

Apache Doris MCP Server

English | 简体中文

Apache Doris MCP Server は、MCP 2026-07-28 を介して、Apache Doris の読み取り専用機能を MCP ホストや AI エージェントに公開します。バージョン 1.0 では、広範でフラットなツール群を、安定した 8 つのドメインと段階的に公開される 55 個の子機能に置き換え、実行時の利用可否、認可、入力スキーマ、出力スキーマ、障害時の動作を明示しています。

リリース状況

パッケージのバージョンは 1.0.0 です。master における MCP 2026-07-28 プロトコル互換性は、Streamable HTTP と stdio で一般提供(GA)となっています。この GA の表明はプロトコル互換性が対象であり、Python パッケージの分類は引き続きベータで、文書化されているデプロイ上の制限も引き続き適用されます。

アップグレードする前に、1.0 リリースノート、1.0 移行ガイド、生成された8 ドメイン/55 子機能のレジストリをお読みください。詳細なリリース記録はIssue #189をご覧ください。

アーキテクチャの概要

MCP Host
  -> stdio or Streamable HTTP
  -> transport security and authentication
  -> MCP protocol validation and authorization
  -> stable domain discovery
  -> route-aware Doris capability detection
  -> exact child dispatch and read-only runtime
  -> request-specific Doris route and RBAC
  -> bounded, schema-validated result

デフォルトの hierarchical モードでは、次のドメインが公開されます。

ドメイン子機能担当領域
doris_catalog5カタログ、データベース、テーブル、テーブルコンテキスト、サイズ
doris_query7クエリ、説明、プロファイル、診断、スロークエリ、明示的な ADBC
doris_cluster11ノード、タスク、メトリクス、メモリ、キャッシュ、コンパクション、ワークロード
doris_pipeline5データ取り込み、マテリアライズドビュー、鮮度、依存関係
doris_search4テキスト/ベクトル/ハイブリッド検索、アナライザー、インデックス、診断
doris_governance8品質、ストレージ、リネージ、監査、UDF、認証マッピング
doris_lakehouse3外部カタログ、レイクハウステーブル、Variant
doris_semantic12オプションの Apache Ossie によるグラウンディングと MetricFlow の利用

ドメインに {} を指定して呼び出すと、認可された子機能と正確なスキーマを確認できます。同じドメインを、child_tool、arguments、返された manifest_version を指定して再度呼び出します。段階的な公開に対応できないホストでは、起動前に MCP_TOOL_EXPOSURE_MODE=flat を設定できます。これにより、同じ 55 個の子機能が衝突しない正式名称で公開され、1.0 より前のエイリアスは復元されません。

アーキテクチャ、リクエストのライフサイクル、ツールドメインをご覧ください。

クイックスタート

要件:

  • Python 3.12 以降;
  • Apache Doris 2.0.0 以降;
  • Doris FE の MySQL エンドポイントへのネットワークアクセス(通常はポート 9030)。

固定バージョンのリリースをインストールします。

pip install doris-mcp-server==1.0.0

doris-mcp-server はサーバーを起動します。doris-mcp-client は別のクライアントです。この 2 つのコマンドは互換性がありません。

Doris ルートを設定します。

export DORIS_HOST=127.0.0.1
export DORIS_PORT=9030
export DORIS_USER=mcp_reader
export DORIS_PASSWORD='replace-me'
export DORIS_DATABASE=information_schema

ループバックで Streamable HTTP を起動します。

doris-mcp-server \
  --transport http \
  --host 127.0.0.1 \
  --port 3000

エンドポイント:

  • MCP:POST http://127.0.0.1:3000/mcp
  • レガシー MCP(オプトイン):POST http://127.0.0.1:3000/mcp/legacy
  • ライブネス:GET http://127.0.0.1:3000/live
  • Doris に基づくレディネス:GET http://127.0.0.1:3000/ready

Dify 1.16.1 と MCP 2025-06-18 など、ハンドシェイク時代の Streamable HTTP のみに対応するホストでは、ENABLE_LEGACY_HTTP_ADAPTER=true を設定して /mcp/legacy に接続する必要があります。このアダプターが変更するのはプロトコル境界のみです。同じ 1.0 のツール、認可、機能ゲート、読み取り専用の実行が維持されます。

または、ローカルホスト向けに stdio を実行します。

doris-mcp-server --transport stdio

完全なクイックスタートとホスト統合ガイドをご覧ください。

セキュリティ境界

  • 組み込みの 1.0 カタログは読み取り専用です。doris_admin は予約済みであり、登録されていません。
  • 静的トークン、JWT、外部 OAuth/OIDC、Doris を利用した OAuth は、相互に検証される設定境界のもとでサポートされています。
  • ドメインの検出と子プロセスの実行には、正確な認可識別子を使用します。
  • 表示可能なオブジェクトとデータについては、Doris RBAC が最終的な権限を持ちます。
  • データがサーバーの外部に送信される前に、SQL の形式、識別子、パラメーター、タイムアウト、行数、バイト数、結果スキーマに上限を設けます。
  • シークレットとバックエンドエラーは、公開結果とログから削除されます。
  • 明示的に危険な開発用オーバーライドを有効にしない限り、ループバック以外の HTTP には認証が必要です。

セキュリティと権限モデルとDoris のきめ細かなアクセスガイドをお読みください。

信頼性の境界

サーバーでは、決定的なマニフェストとエラー、有効期限付きの署名済みカーソル、ルートを考慮した機能スナップショット、上限付きの古いデータへのフォールバック、リクエスト固有の接続ルーティング、複数 FE のフェイルオーバー、稼働状態と準備状態の分離、出力スキーマの検証、サニタイズされたトレースの伝播を使用します。サポートされていない機能や設定に問題のある機能も、callable=false として検出可能な状態に保たれ、呼び出された場合はフェイルクローズします。

現在の制限には、プロセス内に限定される Doris を利用した OAuth、デフォルトで無効かつトークンバインドされたルートではフェイルクローズする明示的な ADBC、任意で利用できる読み取り専用の Ossie グラウンディング、SQL を上限付きの MCP クエリーランタイム経由で実行する必要がある任意の MetricFlow コンパイラーサイドカー、ベストエフォートのネイティブリネージ配信が含まれます。信頼性と制限を参照してください。

ドキュメント

ルートの README は、意図的にエントリーポイントとして設けています。二言語対応のドキュメントシステムは、以下にまとめられています。

主なガイド:

開発

git clone https://github.com/apache/doris-mcp-server.git
cd doris-mcp-server
uv sync --group dev
uv run pytest

生成された成果物は同期を保つ必要があります。

uv run python generate_tool_catalog.py --check
uv lock --check

コントリビューションと検証を参照してください。

ライセンス

Apache License 2.0。LICENSE.txtとNOTICEを参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。