Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Important
Ta funkcja jest dostępna w publicznej wersji testowej.
Serwer SQL MCP Databricks to zarządzany przez Azure Databricks serwer MCP, który pozwala agentom uruchamiać generowany przez AI SQL na tabelach Unity Catalog w celu odczytu i zapisu danych, przy czym dostęp jest regulowany uprawnieniami Unity Catalog. Wykorzystaj go do budowania potoków danych z narzędzi kodowania AI. Zapytania działają asynchronicznie: agent wywołuje narzędzie, aby rozpocząć zapytanie, a następnie przeprowadza ankiety aż do zakończenia odpowiedzi.
| Wzorzec adresu URL | Zakres OAuth |
|---|---|
https://<workspace-hostname>/api/2.0/mcp/sql |
sql |
_meta Parametry
_meta parametry to wartości konfiguracyjne, które ustawiasz w kodzie agenta, aby deterministycznie ustawić zachowanie serwera MCP, zamiast pozwalać LLM generować je dynamicznie w czasie wywołania narzędzia. Serwer SQL MCP Databricks obsługuje następujące _meta parametry:
| Nazwa parametru | Typ | Description |
|---|---|---|
warehouse_id |
str |
Identyfikator usługi SQL Warehouse do użycia do wykonywania zapytań. Przykład: "a1b2c3d4e5f67890"Jeśli nie zostanie określony, system automatycznie wybiera magazyn na podstawie zasobów i uprawnień. |
Przykład: określanie magazynu SQL dla zapytań SQL usługi Databricks
W tym przykładzie pokazano, jak użyć parametru , warehouse_id_meta aby określić, które usługi SQL Warehouse uruchamia zapytania z serwera MCP usługi Databricks przy użyciu oficjalnego zestawu SDK mcp Python.
W tym scenariuszu chcesz:
- Używanie określonego magazynu SQL na potrzeby wykonywania zapytań zamiast zezwalania systemowi na automatyczne wybranie jednego
- Weryfikowanie spójnej wydajności przez kierowanie zapytań do dedykowanego magazynu
Aby uruchomić ten przykład, skonfiguruj środowisko języka Python na potrzeby tworzenia zarządzanych aplikacji MCP:
Aby znaleźć identyfikator usługi SQL Warehouse, zobacz Nawiązywanie połączenia z usługą SQL Warehouse.
# Import required libraries for MCP client and Databricks authentication
import asyncio
from databricks.sdk import WorkspaceClient
from databricks_mcp.oauth_provider import DatabricksOAuthClientProvider
from mcp.client.streamable_http import streamablehttp_client
from mcp.client.session import ClientSession
from mcp.types import CallToolRequest, CallToolResult
async def run_dbsql_tool_call_with_meta():
# Initialize Databricks workspace client for authentication
workspace_client = WorkspaceClient()
# Construct the MCP server URL for DBSQL
# Replace <workspace-hostname> with your workspace hostname
mcp_server_url = "https://<workspace-hostname>/api/2.0/mcp/sql"
# Establish connection to the MCP server with OAuth authentication
async with streamablehttp_client(
url=mcp_server_url,
auth=DatabricksOAuthClientProvider(workspace_client),
) as (read_stream, write_stream, _):
# Create an MCP session for making tool calls
async with ClientSession(read_stream, write_stream) as session:
# Initialize the session before making requests
await session.initialize()
# Create the tool call request with warehouse_id in _meta
request = CallToolRequest(
method="tools/call",
params={
# Tool name for executing SQL queries
"name": "execute_sql",
# Dynamic arguments - typically provided by your AI agent
"arguments": {
"query": "SELECT * FROM my_catalog.my_schema.my_table LIMIT 10"
},
# Meta parameters - specify which warehouse to use
"_meta": {
"warehouse_id": "a1b2c3d4e5f67890" # Your SQL warehouse ID
}
}
)
# Send the request and get the response
response = await session.send_request(request, CallToolResult)
return response
# Execute the async function and get results
response = asyncio.run(run_dbsql_tool_call_with_meta())