このページでは、セルフホステッドまたはサードパーティの MCP サーバーを Unity カタログの MCP サービス として登録し、AI Playground、コマンド ライン、またはエージェント コードから呼び出す方法について説明します。 サーバーをセキュリティ保護可能な Unity カタログとして登録すると、 Unity AI Gateway は マネージド資格情報を使用してすべての呼び出しをプロキシできるため、エージェントはサーバーのトークンを処理しません。 サービスが個々の呼び出しを公開および管理するツールを制限するには、 MCP サービスの管理に関する記事を参照してください。
ホストするサーバーがないすぐに使用できる SaaS ツールの場合は、代わりに Databricks 提供の MCP サービス を使用してください。
Requirements
- Unity カタログで有効になっているワークスペース。
- モデル サービスがサポートされているリージョン内のワークスペース。 モデル提供機能の可用性を参照してください。
外部 MCP サーバーを登録する
次の 5 つの手順で、独自の外部 MCP サーバーを MCP サービスとして登録します。
- MCP サーバーへの Unity カタログ接続を作成します。
- その接続から MCP サービスを作成します。
- 接続でユーザーごとの OAuth が使用されている場合は認証します。
- チームメイトにアクセス権を付与します。
- サービスを呼び出し、ツールの選択とサービス ポリシーを使用してサービスを 管理 します。
外部 MCP サーバーは 、Streamable HTTP トランスポート メカニズムを使用する必要があります。 次のアクセス許可が必要です。
-
接続を作成するには、作成先のスキーマで
CREATE CONNECTIONします。 - MCP サービスを 作成 するには、親カタログとスキーマに対する
USE CATALOG権限とUSE SCHEMA権限、スキーマに対するCREATE SERVICE権限、および MCP サービスが参照する接続に対するUSE CONNECTION権限が必要です。 - MCP サービスを 呼び出す には、MCP サービスに対する
EXECUTE、その親カタログとスキーマに対するUSE CATALOGとUSE SCHEMA、およびリクエストを発行するワークスペースへの割り当てが必要です。
Warning
MCP サービスを呼び出しても 、基になる接続に対する特権は必要ありません。MCP サービスEXECUTE で十分です。 エンド ユーザーに USE CONNECTION を許可しないでください。これにより、接続を介して外部サーバーを直接呼び出したり、独自の MCP サービスを登録したりして、ツールの選択、サービス ポリシー、および MCP サービスの監査をバイパスすることができます。 サービス作成者と管理者の接続アクセスを予約します。
手順 1、 接続を作成する
MCP サービスは、外部サーバーのエンドポイントと資格情報を安全に格納する Unity カタログ HTTP 接続を参照します。 Azure Databricksは、認証とトークンの更新を処理するために、その前でマネージド プロキシを実行するため、エージェントまたはクライアント コードに資格情報を埋め込むことはありません。
MCP サービスと共に管理されるように、 スキーマ レベルで接続を作成します。 以下の手順で事前に設定するか、[新しい接続の作成] をクリックして MCP サービスの作成時に作成できます。 メタストア レベルの接続はサポートされていますが、推奨されません。
次の 2 つの方法のいずれかを選択します。
HTTP 接続を作成する
セルフホステッド サーバーまたはサード パーティ 製サーバーを含む MCP サーバーの場合:
- Catalog>Connections>接続を作成に移動します。
- 接続の種類として [HTTP ] を選択します。
- MCP サーバーの URL を入力します。
- 認証の種類として、ベアラー トークン、OAuth M2M、OAuth U2M、動的クライアント登録のいずれかを選択します。 セットアップの詳細については、「 外部サービスへの接続を作成する」を参照してください。
マネージド OAuth プロバイダー (Glean、GitHub、Atlassian、Slack) の場合、Azure Databricksは資格情報を管理するため、独自の OAuth アプリを登録しません。 「マネージド OAuth プロバイダー」を参照してください。
Marketplace からインストールする
事前に構成された接続で、Azure Databricks Marketplace からキュレーションされた MCP サーバーを使用します。 外部 MCP サーバーへのアクセスを取得するを参照してください。
手順 2、 MCP サービスを作成する
MCPサービスはUIから作成するか、REST API、Azure Databricks CLI、Azure Databricks SDK、またはTerraformを使って作成できます。 MCPサービス用のSQL DDLはサポートされていません。
UI
- Azure Databricks ワークスペースで、AI Gateway>MCPs>MCP Server の登録に移動するか、[カタログ] に移動してスキーマを選択し、[作成>MCP サービス] をクリックします。
- カタログ、スキーマ、および MCP サービスの名前を入力します。 作成後に名前を変更することはできません。
- MCP サーバーへの既存の HTTP 接続を選択するか、[ 新しい接続の作成 ] をクリックして接続を作成します。 スキーマを参照してスキーマ レベルの接続を選択します。メタストア レベルの接続を使用するには、[ スキーマの下で参照] をオフにします。
- [ ツール] で、使用可能にするツールを選択します。 「 公開するツールを選択する」を参照してください。
- 必要に応じて、MCP サービスについて説明するコメントを追加します。
- Create をクリックしてください。 MCP サービスは、指定したカタログとスキーマに発行されます。
開発者ツール
Databricks CLI:既存のUnity Catalog HTTP接続を参照するMCPサービスを作成します。 親スキーマとリーフ名を渡し、 --jsonと設定を入力してください。
databricks ai-gateway create-mcp-service schemas/main.default my_mcp --json '{
"comment": "External MCP server",
"config": {
"source_connection": {
"name": "connections/main.default.my_connection"
},
"include_tool_selectors": []
}
}'
include_tool_selectors は、サービスが公開するツールを制御します。 空のリストは、すべてのツールを公開します。 「 公開するツールを選択する」を参照してください。
既存のMCPサービスを update-mcp-serviceで更新し、リソース名と変更すべきフィールドを一覧の update_mask を渡します:
databricks ai-gateway update-mcp-service mcp-services/main.default.my_mcp comment \
--json '{ "comment": "Updated description" }'
すべてのオプションを表示するには、databricks ai-gateway create-mcp-service -h を実行します。 CLIをインストールするには、「 Databricks CLIのインストールまたは更新」をご覧ください。
REST API: POST /api/2.1/unity-catalog/mcp-servicesをご利用ください。
Terraform: DatabricksのTerraformプロバイダー と databricks_ai_gateway_mcp_serviceを使ってMCPサービスを作成・管理します。
Databricks SDKs:Python用Databricks SDK、Java用Databricks SDK、Go用Databricks SDK、JavaScript用Databricks SDKでMCPサービスを管理できます。
手順 3. Authenticate
MCP サービスがユーザーごとの OAuth を使用する接続を参照する場合は、最初の呼び出しの前に 1 回限りのログインを完了します。
- カタログ エクスプローラーで MCP サービスの詳細ページを開きます。
- [ ログイン ] をクリックし、プロバイダーの OAuth 同意フローを完了します。
- サインインすると、検出されたツールの一覧が詳細ページに自動的に表示されます。
Unity カタログは、ID に対してトークンを格納します。 ログインする前に MCP サービスを呼び出すと、AI Gateway から認証を求めるエラーが返されます。
Note
Consumer Accessを持つユーザーはユーザーごとのOAuthログインを使えず、Workspaceアクセスが必要です。 「エンタイトルメントを管理する」を参照してください。
手順 4. チームメイトへのアクセス権を付与する
既定では、MCP サービス所有者のみが呼び出すことができます。 他のユーザー、グループ、またはサービス プリンシパルがサービスを呼び出せるように、EXECUTE を付与します。 1 つの EXECUTE 付与で、サービスのすべてのツールが対象となります。
UI
- カタログ エクスプローラーで MCP サービスを開くか、 AI ゲートウェイ>MCP に移動してサービスを選択します。
- [アクセス許可] タブに移動します。
- [許可] をクリックします。
- アクセス権を付与するユーザー、グループ、またはサービス プリンシパルを選択します。
- EXECUTE 特権を選択します。
- [許可] をクリックします。
REST API
databricks api patch \
"/api/2.1/unity-catalog/permissions/mcp_service/main.default.my_mcp" \
--json '{
"changes": [
{ "principal": "data-team", "add": ["EXECUTE"] }
]
}'
ステップ 5: MCP サービスを呼び出す
AI Playground で、コマンド ラインから、またはエージェントまたはクライアント コードから MCP サービスを試してください。
Note
消費者アクセス権を持つユーザーは共有されたMCPサービスを呼び出せますが、MCPサービスを登録することはできません。 「エンタイトルメントを管理する」を参照してください。
MCP サービスをテストする
AI プレイグラウンド
コードを記述せずに、UI で MCP サービスのツールをテストします。
- Azure Databricks ワークスペースの AI Playground に移動します。
- ツールが有効なラベルを持つモデルを選択します。
- [ ツール > + ツールの追加 ] をクリックし、[ MCP サーバー] を選択します。
- 外部 MCP サーバーを選択し、MCP サービスを選択します。
- モデルとチャットして、MCP サービスのツールを呼び出す方法を確認します。
Genie Code からテストすることもできます。「MCP サーバーをアシスタントに追加する」を参照してください。
CURL
コマンドラインの簡単なチェックは、MCPサービスの詳細ページの 「Get started」にあるリクエスト例を使用してください。 例では、トークンをベアラー トークンとして Authorization ヘッダーに渡します。
DatabricksのCLIをワークスペースに認証し、databricks auth tokenを使ってOAuthアクセストークンを取得します。
databricks auth login --host https://<workspace-url>
すべての要求は同じ MCP サービス エンドポイントに送信されます。要求本文の JSON-RPC method は操作を選択します。 サービスが公開するツールを一覧表示します。
TOKEN=$(databricks auth token | jq -r .access_token)
curl -s -X POST \
"https://<workspace-url>/ai-gateway/mcp-services/main.default.my_mcp" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
ツールを呼び出す:
curl -s -X POST \
"https://<workspace-url>/ai-gateway/mcp-services/main.default.my_mcp" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"<tool_name>","arguments":{}}}'
エージェントコードまたはコーディングエージェントで使用
- エージェントコード (OpenAIエージェントSDK、LangGraph、またはモデルサービング):カスタム エージェントのMCPサーバー使用を参照してください。
- AI アシスタントとコーディング エージェント (クロード、クロード コード、カーソル): AI アシスタントとコーディング エージェントへの MCP の接続に関する説明を参照してください。
次のステップ
- MCP サービスを管理して、サービス が公開するツールを制限し、サービス ポリシーを適用します。
- MCP サービスと Databricks が提供するサービスの概要については、MCP サービスを使用してエージェントをサード パーティのツールに接続します。
- 中央の場所から MCP サーバーと LLM エンドポイントを管理するための Unity AI Gateway を使用した AI ガバナンス。