Hubungkan agen ke alat

Menghubungkan agen Anda ke alat memberi mereka kemampuan praktis di luar pembuatan teks, seperti mencari dokumen, mengkueri tabel, memanggil API eksternal, atau menjalankan kode kustom.

Kode agen Anda, yang dibangun dengan framework seperti LangGraph atau OpenAI SDK, serta asisten pengodean seperti Claude Code dan Cursor, memanggil alat melalui MCP lewat tiga jalur yang diatur di Databricks: MCP Services untuk alat pihak ketiga seperti GitHub dan Slack, server MCP Anda sendiri yang dihosting di Databricks Apps untuk alat kustom, dan server MCP terkelola untuk data dan kode Databricks, yang semuanya diatur di Unity Catalog dengan pemberian izin, kebijakan, dan audit.

Diagram menunjukkan rute MCP, yang Azure Databricks rekomendasikan untuk sebagian besar integrasi. MCP adalah salah satu dari beberapa cara untuk menghubungkan agen ke layanan eksternal. Selain Layanan MCP, Anda dapat memanggil REST API secara langsung melalui koneksi HTTP Unity Catalog. Pilih OAuth terkelola untuk autentikasi per pengguna, proksi koneksi Unity Catalog untuk memanggil API dari kode agen, atau alat fungsi Unity Catalog yang membungkus http_request(). Tabel berikut ini meringkas setiap cara untuk menyambungkan, dari data Azure Databricks ke layanan eksternal:

Approach Kasus penggunaan yang direkomendasikan
Server MCP terkelola untuk data Azure Databricks Gunakan pendekatan ini untuk mengkueri data Azure Databricks dan menjalankan fungsi yang diatur dengan server MCP fungsi Genie, Databricks AI Search, Databricks SQL, dan Unity Catalog yang siap digunakan.
Server MCP eksternal Gunakan pendekatan ini untuk layanan yang menerbitkan server MCP. Ini menawarkan penemuan alat otomatis dan akses yang diatur melalui Unity AI Gateway.
OAuth Terkelola Gunakan pendekatan ini untuk integrasi Google Drive atau SharePoint. Azure Databricks mengelola kredensial OAuth, sehingga tidak diperlukan pendaftaran aplikasi.
Proksi koneksi Unity Catalog Gunakan pendekatan ini untuk melakukan panggilan REST API langsung dari kode agen menggunakan SDK klien layanan eksternal sendiri.
Alat fungsi Unity Catalog Gunakan pendekatan ini untuk definisi alat berbasis SQL yang membungkus http_request() fungsi.

Server MCP terkelola untuk data Azure Databricks

Azure Databricks menawarkan server MCP terkelola siap pakai yang memberi agen akses yang diatur ke data dan fungsi di ruang kerja Anda, tanpa server untuk membangun atau menghosting. Setiap server memiliki URL khusus dan cakupan OAuth, dan Unity Catalog mengatur akses:

  • Genie: Mengkueri data terstruktur dalam tabel Agen Genie dan Katalog Unity dengan bahasa alami.
  • Pencarian AI Databricks (pencarian vektor): Cari dokumen dalam indeks pencarian vektor.
  • Databricks SQL: Jalankan kueri SQL terhadap tabel Katalog Unity.
  • Fungsi Unity Catalog: Memanggil fungsi Python kustom dan SQL yang terdaftar di Unity Catalog.

Untuk URL server, cakupan OAuth, dan katalog lengkap, lihat Azure Databricks server MCP terkelola. Untuk memanggil server ini dari kode agen, lihat Menggunakan server MCP di agen.

Server MCP eksternal

Hubungkan agen Anda ke aplikasi eksternal seperti Slack, Google Kalender, atau layanan apa pun dengan API. Azure Databricks menawarkan beberapa pendekatan tergantung pada apakah layanan eksternal memiliki server MCP, apakah Anda memerlukan autentikasi per pengguna, atau apakah Anda lebih suka memanggil API langsung dari kode agen. Semua pendekatan mengandalkan koneksi HTTP connection Unity Catalog, yang menyediakan pengelolaan kredensial yang aman dan terkelola, serta mendukung beberapa metode autentikasi, termasuk autentikasi OAuth 2.0 pengguna-ke-mesin (U2M) dan mesin-ke-mesin (M2M).

Jika layanan eksternal memiliki server MCP yang tersedia, Azure Databricks merekomendasikan untuk mendaftarkannya sebagai Layanan MCP di Katalog Unity. Layanan MCP menyediakan penemuan alat otomatis, autentikasi per pengguna, dan tata kelola melalui Unity AI Gateway dengan hibah, pemilihan alat, dan kebijakan layanan.

Untuk alat perangkat lunak sebagai layanan umum (SaaS) seperti Slack, GitHub, dan Google Drive, Azure Databricks menyediakan Layanan MCP yang siap digunakan dengan penyiapan nol. Lihat Layanan MCP yang disediakan Databricks.

Terkelola OAuth

Azure Databricks menawarkan alur OAuth terkelola untuk penyedia alat API tertentu. Anda tidak perlu mendaftarkan aplikasi OAuth Anda sendiri atau mengelola kredensial. Azure Databricks merekomendasikan OAuth Terkelola untuk pengembangan dan pengujian. Jika kasus penggunaan produksi memerlukan pembuatan kredensial OAuth kustom, lihat dokumentasi penyedia untuk informasi selengkapnya.

Integrasi berikut menggunakan kredensial OAuth yang Azure Databricks kelola dan simpan dengan aman di backend.

Provider Catatan konfigurasi Cakupan yang didukung Description
Google Drive API None https://www.googleapis.com/auth/drive.readonly https://www.googleapis.com/auth/documents.readonly https://www.googleapis.com/auth/spreadsheets.readonly offline_access Akses baca-saja ke file Google Drive, termasuk Google Docs dan Google Spreadsheet.
Gmail API None https://www.googleapis.com/auth/gmail.readonly offline_access Akses baca-saja ke pesan Gmail, utas, draf, dan label.
Google Calendar API None https://www.googleapis.com/auth/calendar.readonly offline_access Akses baca-saja ke acara Google Kalender, kalender, dan informasi bebas/sibuk.
API SharePoint None 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 Akses baca-saja melalui Microsoft Graph ke file SharePoint dan OneDrive, Outlook email dan kalender, serta obrolan, saluran, dan rapat Microsoft Teams.

Untuk menyiapkan OAuth terkelola, buat koneksi HTTP dengan jenis autentikasi Pengguna OAuth ke Mesin Per Pengguna dan pilih penyedia Anda dari menu drop-down Penyedia OAuth . Untuk langkah-langkah mendetail, lihat Membuat koneksi ke layanan eksternal.

Penyedia meminta setiap pengguna untuk mengotorisasi pada penggunaan pertama.

Jika diperlukan, tambahkan URI pengalihan berikut yang digunakan oleh OAuth terkelola ke daftar yang diizinkan:

Cloud Pengalihan 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

Untuk penyedia OAuth terkelola dengan server MCP yang diterbitkan, seperti Glean, GitHub, Atlassian, dan Slack, Azure Databricks dapat mengelola kredensial OAuth saat Anda mendaftarkan server sebagai Layanan MCP. Lihat Penyedia OAuth terkelola.

Titik akhir proksi koneksi Katalog Unity

Gunakan titik akhir proksi koneksi Unity Catalog bersama SDK klien dari layanan eksternal tersebut untuk mengakses API REST langsung dari kode agen. Arahkan URL dasar SDK ke titik akhir proksi dan gunakan token Azure Databricks Anda sebagai kunci API. Azure Databricks mengautentikasi permintaan dan secara otomatis menyuntikkan kredensial layanan eksternal dari koneksi Katalog Unity. Kode Anda tidak menangani token layanan eksternal secara langsung.

Izin diperlukan:USE CONNECTION pada objek koneksi.

OpenAI

Gunakan DatabricksOpenAI untuk merutekan panggilan ke OpenAI eksternal melalui perantara koneksi Katalog Unity. Pertama, buat koneksi HTTP Unity Catalog menggunakan kunci API OpenAI Anda yang disimpan sebagai rahasia Databricks:

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

Kemudian instal paket databricks-openai dan gunakan URL proksi serta klien ruang kerja di dalam kode agen Anda.

pip install databricks-openai
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)

Slack

Konfigurasikan SDK Slack untuk mengalihkan melalui proksi koneksi Katalog Unity. Buat koneksi HTTP Katalog Unity dengan host https://slack.com dan jalur dasar /api, lalu gunakan URL proksi sebagai URL dasar SDK:

from slack_sdk import WebClient
from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

client = WebClient(
    token=w.config.authenticate()["Authorization"].split(" ")[1],
    base_url=f"{w.config.host}/api/2.0/unity-catalog/connections/slack_connection/proxy/",
)

result = client.chat_postMessage(channel="C123456", text="Hello from Databricks!")
print(result["message"]["text"])

HTTP Generik

Untuk layanan tanpa SDK yang didedikasikan, gunakan pustaka requests dengan URL proksi secara langsung:

import requests
from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

response = requests.post(
    f"{w.config.host}/api/2.0/unity-catalog/connections/my_connection/proxy/api/v1/resource",
    headers={
        **w.config.authenticate(),
        "Content-Type": "application/json",
    },
    json={"key": "value"},
)

Untuk detail tentang titik akhir proksi, metode autentikasi yang didukung, dan penyiapan koneksi, lihat Meneruskan permintaan melalui proksi koneksi HTTP.

Alat fungsi Unity Catalog

Nota

Azure Databricks merekomendasikan penggunaan Layanan MCP atau proksi koneksi Katalog Unity untuk integrasi baru. Alat fungsi Unity Catalog dengan http_request tetap didukung tetapi bukan lagi pendekatan yang direkomendasikan.

Anda dapat membuat fungsi Katalog Unity yang dibungkus http_request() untuk memanggil layanan eksternal. Pendekatan ini berguna untuk definisi alat berbasis SQL, seperti fungsi yang memposting pesan ke Slack. Untuk panduan lengkap, termasuk contoh SQL dan batasan jenis koneksi, lihat Memanggil API eksternal dengan http_request (warisan).

Contoh buku catatan

Notebook berikut menunjukkan pembuatan alat agen AI yang tersambung ke Slack, OpenAI, dan Pencarian Azure AI.

Alat agen olahpesan Slack

Dapatkan buku catatan

Alat agen Microsoft Graph API

Dapatkan buku catatan

Alat agen Pencarian Azure AI

Dapatkan buku catatan

Untuk panduan menyambungkan agen ke Microsoft Teams, lihat Menyambungkan agen AI ke Microsoft Teams.

Sumber daya tambahan