メインコンテンツまでスキップ

エージェントをツールに接続します

エージェントをツールに接続すると、テキスト生成に加えて、ドキュメントの検索、テーブルのクエリ、外部APIsの呼び出し、カスタムコードの実行といった実用的な機能が提供されます。

LangGraph や OpenAI SDK などのフレームワーク、および Claude Code や Cursor などのコーディングアシスタントで構築されたエージェントコードは、Databricks 内の 3 つの管理された経路を介して MCP を介してツールを呼び出します。これらは、GitHub や Slack などのサードパーティ製ツール向けの MCP サービス、カスタムツール向けの Databricks Apps でホストされる独自の MCP サーバー、および Databricks のデータとコード向けのマネージド MCP サーバーであり、すべて付与、ポリシー、および監査によって Unity Catalog で管理されます。

この図は、Databricksがほとんどの統合で推奨するMCPルートを示しています。MCPは、エージェントを外部サービスに接続するいくつかの方法の1つです。MCPサービスに加えて、Unity CatalogのHTTP接続を介してREST APIを直接呼び出すことができます。ユーザーごとの認証にはマネージドOAuthを、エージェントコードからAPIを呼び出すにはUnity Catalog接続プロキシを、またはhttp_request()をラップするUnity Catalog関数ツールを選択します。次の表は、Databricksデータから外部サービスへの各接続方法をまとめたものです。

アプローチ

推奨されるユースケース

Databricksデータ用のマネージドMCPサーバー

このアプローチを使用して、すぐに使用できる Genie、Databricks AI Search、Databricks SQL、および Unity Catalog 関数 MCP サーバーで、Databricks データへのクエリを実行し、ガバナンスされた関数を実行します。

外部MCPサーバー

このアプローチは、MCP サーバーを公開しているサービスに適用します。自動ツール検出機能と、Unity AI Gateway を介した管理されたアクセスを提供します。

マネージド OAuth

このアプローチをGoogle DriveまたはSharePointの統合に使用します。DatabricksはOAuth資格情報を管理するため、アプリの登録は不要です。

Unity Catalog接続プロキシ

エージェントコードから直接REST APIコールを行うには、外部サービス独自のクライアントSDKを使用します。

Unity Catalog 関数ツール

http_request()関数をラップするSQLベースのツール定義には、このアプローチを使用してください。

アプローチ

推奨されるユースケース

Databricksデータ用のマネージドMCPサーバー

このアプローチを使用して、すぐに使用できる Genie、Databricks AI Search、Databricks SQL、および Unity Catalog 関数 MCP サーバーで、Databricks データへのクエリを実行し、ガバナンスされた関数を実行します。

外部MCPサーバー

このアプローチは、MCP サーバーを公開しているサービスに適用します。自動ツール検出機能と、Unity AI Gateway を介した管理されたアクセスを提供します。

マネージド OAuth

このアプローチをGoogle DriveまたはSharePointの統合に使用します。DatabricksはOAuth資格情報を管理するため、アプリの登録は不要です。

Unity Catalog接続プロキシ

エージェントコードから直接REST APIコールを行うには、外部サービス独自のクライアントSDKを使用します。

Unity Catalog 関数ツール

http_request()関数をラップするSQLベースのツール定義には、このアプローチを使用してください。

Databricks データ用のマネージド MCP サーバー

Databricks は、すぐに使用できるマネージド MCP サーバーを提供しており、エージェントはワークスペース内のデータと機能に管理されたアクセス権を持つことができ、構築またはホストするサーバーは不要です。各サーバーには専用の URL と OAuth スコープがあり、Unity Catalog がアクセスを管理します。

  • Genie: GenieエージェントおよびUnity Catalogテーブルで構造化データを自然言語でクエリします。
  • Databricks AI Search (ベクトル検索) : ベクトル検索インデックス内のドキュメントを検索します。
  • Databricks SQL: Unity Catalog テーブルに対して SQL クエリを実行します。
  • Unity Catalog関数 : Unity Catalogに登録されているカスタムPythonおよびSQL関数を呼び出します。

サーバー URL、OAuth スコープ、および完全なカタログについては、Databricks マネージド MCP サーバーを参照してください。エージェント コードからこれらのサーバーを呼び出すには、エージェントで MCP サーバーを使用するを参照してください。

外部MCPサーバー

エージェントをSlack、Googleカレンダーなどの外部アプリケーション、またはAPIを持つ任意のサービスに接続します。Databricksは、外部サービスにMCPサーバーがあるかどうか、ユーザーごとの認証が必要かどうか、またはエージェントコードから直接APIsを呼び出すことを好むかどうかに応じて、いくつかの方法を提供しています。すべての方法では、セキュアで管理された資格情報管理を提供し、OAuth 2.0ユーザー間(U2M)認証とマシン間(M2M)認証を含む複数の認証方法をサポートするUnity Catalog HTTP接続に依存します。

外部サービスで MCP サーバーが利用可能な場合、Databricks は Unity Catalog でそれを MCP Service として登録することをお勧めします。MCP サービス は、助成金、ツール選択、サービス ポリシーを備えた Unity AI Gateway を介して、自動ツール検出、ユーザーごとの認証、およびガバナンスを提供します。

Slack、GitHub、Google Driveなどの一般的なSoftware as a Service (SaaS) ツールには、Databricksはセットアップ不要で利用可能なMCPサービスを提供します。Databricksが提供するMCPサービスを参照してください。

マネージドOAuth

Databricksは、選択されたAPIツールプロバイダー向けにマネージドOAuthフローを提供しています。独自のOAuthアプリを登録したり、資格情報を管理したりする必要はありません。Databricksは、開発およびテスト向けにマネージドOAuthを推奨しています。本番運用のユースケースでカスタムOAuth資格情報の生成が必要な場合は、詳細についてプロバイダーのドキュメントを参照してください。

以下の統合では、Databricksがバックエンドで安全に管理および保存するOAuth資格情報が使用されます。

プロバイダー

構成に関する注意事項

サポートされているスコープ

説明

Google Drive API

なし

https://www.googleapis.com/auth/drive.readonly https://www.googleapis.com/auth/documents.readonly https://www.googleapis.com/auth/spreadsheets.readonly offline_access

Google Drive ファイルへの読み取り専用アクセス(Google ドキュメントと Google スプレッドシートを含む)。

Gmail API

なし

https://www.googleapis.com/auth/gmail.readonly offline_access

Gmailのメッセージ、スレッド、下書き、ラベルへの読み取り専用アクセス。

Google Calendar API

なし

https://www.googleapis.com/auth/calendar.readonly offline_access

Google Calendar のイベント、カレンダー、空き時間情報への読み取り専用アクセス。

SharePoint API

なし

https://graph.microsoft.com/User.Read https://graph.microsoft.com/User.ReadBasic.All https://graph.microsoft.com/Sites.Read.All https://graph.microsoft.com/Files.Read https://graph.microsoft.com/Files.Read.All https://graph.microsoft.com/Mail.Read https://graph.microsoft.com/Mail.ReadBasic https://graph.microsoft.com/Mail.Read.Shared https://graph.microsoft.com/MailboxFolder.Read https://graph.microsoft.com/MailboxItem.Read https://graph.microsoft.com/Calendars.Read https://graph.microsoft.com/Calendars.Read.Shared https://graph.microsoft.com/Chat.Read https://graph.microsoft.com/Chat.ReadBasic https://graph.microsoft.com/ChatMember.Read https://graph.microsoft.com/ChatMessage.Read https://graph.microsoft.com/Channel.ReadBasic.All https://graph.microsoft.com/ChannelMessage.Read.All https://graph.microsoft.com/OnlineMeetings.Read https://graph.microsoft.com/OnlineMeetingTranscript.Read.All https://graph.microsoft.com/OnlineMeetingAiInsight.Read https://graph.microsoft.com/OnlineMeetingArtifact.Read.All https://graph.microsoft.com/OnlineMeetingRecording.Read.All offline_access openid profile email

Microsoft Graphを介したSharePointおよびOneDriveファイル、Outlookのメールとカレンダー、およびMicrosoft Teamsのチャット、チャンネル、会議への読み取り専用アクセス。

プロバイダー

構成に関する注意事項

サポートされているスコープ

説明

Google Drive API

なし

https://www.googleapis.com/auth/drive.readonly https://www.googleapis.com/auth/documents.readonly https://www.googleapis.com/auth/spreadsheets.readonly offline_access

Google Drive ファイルへの読み取り専用アクセス(Google ドキュメントと Google スプレッドシートを含む)。

Gmail API

なし

https://www.googleapis.com/auth/gmail.readonly offline_access

Gmailのメッセージ、スレッド、下書き、ラベルへの読み取り専用アクセス。

Google Calendar API

なし

https://www.googleapis.com/auth/calendar.readonly offline_access

Google Calendar のイベント、カレンダー、空き時間情報への読み取り専用アクセス。

SharePoint API

なし

https://graph.microsoft.com/User.Read https://graph.microsoft.com/User.ReadBasic.All https://graph.microsoft.com/Sites.Read.All https://graph.microsoft.com/Files.Read https://graph.microsoft.com/Files.Read.All https://graph.microsoft.com/Mail.Read https://graph.microsoft.com/Mail.ReadBasic https://graph.microsoft.com/Mail.Read.Shared https://graph.microsoft.com/MailboxFolder.Read https://graph.microsoft.com/MailboxItem.Read https://graph.microsoft.com/Calendars.Read https://graph.microsoft.com/Calendars.Read.Shared https://graph.microsoft.com/Chat.Read https://graph.microsoft.com/Chat.ReadBasic https://graph.microsoft.com/ChatMember.Read https://graph.microsoft.com/ChatMessage.Read https://graph.microsoft.com/Channel.ReadBasic.All https://graph.microsoft.com/ChannelMessage.Read.All https://graph.microsoft.com/OnlineMeetings.Read https://graph.microsoft.com/OnlineMeetingTranscript.Read.All https://graph.microsoft.com/OnlineMeetingAiInsight.Read https://graph.microsoft.com/OnlineMeetingArtifact.Read.All https://graph.microsoft.com/OnlineMeetingRecording.Read.All offline_access openid profile email

Microsoft Graphを介したSharePointおよびOneDriveファイル、Outlookのメールとカレンダー、およびMicrosoft Teamsのチャット、チャンネル、会議への読み取り専用アクセス。

マネージド OAuth を設定するには、 OAuth User to Machine Per User 認証タイプで HTTP 接続を作成し、 OAuth プロバイダー ドロップダウンメニューからプロバイダーを選択します。詳細なステップについては、「外部サービスへの接続を作成する」を参照してください。

プロバイダーは、初回使用時に各ユーザーに認可を求めます。

必要に応じて、マネージドOAuthが使用する次のリダイレクトURIを許可リストに登録します:

クラウド

リダイレクト URI

AWS

https://oregon.cloud.databricks.com/api/2.0/http/oauth/redirect

Azure

https://westus.azuredatabricks.net/api/2.0/http/oauth/redirect

GCP

https://us-central1.gcp.databricks.com/api/2.0/http/oauth/redirect

クラウド

リダイレクト URI

AWS

https://oregon.cloud.databricks.com/api/2.0/http/oauth/redirect

Azure

https://westus.azuredatabricks.net/api/2.0/http/oauth/redirect

GCP

https://us-central1.gcp.databricks.com/api/2.0/http/oauth/redirect

Glean、GitHub、Atlassian、Slackなどの公開されたMCPサーバーを持つマネージドOAuthプロバイダーの場合、サーバーをMCPサービスとして登録する際にDatabricksがOAuth認証情報を管理できます。マネージドOAuthプロバイダーを参照してください。

Unity Catalog接続プロキシエンドポイント

Unity Catalog接続プロキシエンドポイントを外部サービス独自のクライアントSDKと組み合わせて、エージェントコードから直接REST APIを呼び出すために使用します。SDKのベースURLをプロキシエンドポイントに指定し、DatabricksトークンをAPIキーとして使用します。Databricksはリクエストを認証し、Unity Catalog接続から外部サービスの認証情報を自動的に注入します。コードは外部サービスのトークンを直接処理しません。

必要な権限: 接続オブジェクトに対するUSE CONNECTION

DatabricksOpenAI を使用して、Unity Catalog接続プロキシを介して外部のOpenAIへの呼び出しをルーティングします。まず、Databricksシークレットとして保存されているOpenAI APIキーを使用して、Unity Catalog HTTP接続を作成します。

SQL
CREATE CONNECTION openai_connection TYPE HTTP
OPTIONS (
host 'https://api.openai.com',
base_path '/v1',
bearer_token secret ('<secret-scope>', '<secret-key>')
);

次に、databricks-openaiパッケージをインストールし、エージェントコードでプロキシURLとワークスペースクライアントを使用します。

Bash
pip install databricks-openai
Python
from databricks_openai import DatabricksOpenAI
from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

client = DatabricksOpenAI(
workspace_client=w,
base_url=f"{w.config.host}/api/2.0/unity-catalog/connections/openai_connection/proxy/",
)

response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "Hello!"}],
)
print(response.choices[0].message.content)

プロキシエンドポイント、サポートされている認証方法、および接続設定の詳細については、HTTP接続プロキシを介したリクエストの転送を参照してください。

Unity Catalog関数ツール

注記

Databricks は、新しいインテグレーションには MCP サービス または Unity Catalog 接続プロキシの使用を推奨しています。http_request を使用した Unity Catalog 関数ツールは引き続きサポートされていますが、もはや推奨されるアプローチではありません。

外部サービスを呼び出すためにhttp_request()をラップするUnity Catalog関数を作成できます。このアプローチは、Slackにメッセージを投稿する関数のようなSQLベースのツール定義に役立ちます。SQLの例と接続タイプの制限を含む詳細なウォークスルーについては、http_request を使用して外部APIを呼び出す (レガシー) を参照してください。

ノートブックの例

以下のノートブックは、Slack、OpenAI、Azure AI Searchに接続するAIエージェントツールを作成する方法を示しています。

Slack メッセージング エージェント ツール

Microsoft Graph API エージェント ツール

Azure AI Search エージェントツール

その他のリソース