Nâng cao Databricks với Máy chủ MCP không rác.
Lead Scraping Automation Engineer
Tóm tắt:
- Một đại lý Databricks có thể suy luận về dữ liệu của bạn nhưng không thể truy cập web trực tiếp cho đến khi bạn kết nối với một công cụ — máy chủ Scrapeless MCP là cách dễ dàng nhất để vào. Đại lý Bricks và các đại lý Mosaic AI lập kế hoạch dựa trên một mô hình, chức năng Unity Catalog, và bất kỳ công cụ nào bạn đăng ký. Đặt một công cụ hướng tới máy chủ Scrapeless MCP và đại lý sẽ có khả năng tìm kiếm Google trực tiếp, hiển thị JavaScript, và một trình duyệt chống phát hiện hoàn chỉnh mà không cần viết một trình thu thập dữ liệu bằng tay.
- Databricks truy cập máy chủ MCP bên ngoài thông qua kết nối HTTP Unity Catalog cộng với một proxy được quản lý. Bạn đăng ký
https://api.scrapeless.com/mcpnhư một kết nối Unity Catalog với tùy chọn "Là kết nối mcp", lưu trữx-api-tokencủa Scrapeless như thông tin xác thực kết nối, và Databricks phơi bày nó cho mã đại lý tạihttps://<workspace-host>/api/2.0/mcp/external/<connection_name>. DatabricksMCPClient.list_tools()kết nối bề mặt vào mã đại lý. Tạo mộtDatabricksMCPClientvới URL proxy và mộtWorkspaceClient, gọilist_tools(), chuyển đổi kết quả thành loại công cụ của khung đại lý của bạn, và đại lý có được một công cụ thu thập dữ liệu SERP Google, một công cụ thu thập dữ liệu Trends, các công cụ HTML/Markdown/Screenshot, và 16 công cụ tự động hóa trình duyệt.- Máy chủ Scrapeless MCP tiết lộ 21 công cụ. Một truy xuất trực tiếp
tools/listđối vớihttps://api.scrapeless.com/mcptrả vềgoogle_search,google_trends,scrape_html,scrape_markdown,scrape_screenshot, và 16 công cụbrowser_*— máy chủ phát ra chúng dưới dạng tên nguyên thủy, và mỗi khách hàng thêm không gian tên riêng của mình khi tải chúng. - Proxy dân cư và chống phát hiện chạy ở phía đám mây. Mọi cuộc gọi công cụ đều đi qua trình duyệt đám mây chống phát hiện Scrapeless với các proxy dân cư ở hơn 195 quốc gia, vì vậy đại lý nhận được phản hồi đã được hiển thị, có thể sử dụng từ các trang thương mại mà không cần thiết lập proxy hoặc dấu vân tay bên trong môi trường thực thi Databricks.
- Vận chuyển stdio hoặc HTTP-streamable. Để phát triển đại lý cục bộ, bạn có thể khởi động máy chủ với
npx; đối với một điểm cuối Mosaic AI đã triển khai, bạn chỉ cần chỉ vào điểm cuối HTTP có thể phát stream, đây chính xác là những gì kết nối Unity Catalog quấn lại. - Miễn phí để bắt đầu. Tài khoản Scrapeless mới bao gồm thời gian chạy Trình duyệt Thu thập miễn phí — đăng ký tại app.scrapeless.com.
Giới thiệu: đưa các đại lý Databricks vào một cái nhìn trực tiếp về web
Đại lý Databricks Agent Bricks và Khung Đại lý Mosaic AI cho phép bạn xây dựng các đại lý mà suy luận về lakehouse của bạn — các bảng Unity Catalog, chỉ mục vector, các chức năng được quản lý. Đại lý gọi các công cụ bạn đã đăng ký và không có gì khác. Những gì mà nó không thể làm một mình là nhìn thấy web như nó đang tồn tại vào thời điểm này. Kiến thức của nó dừng lại ở mốc thời gian đào tạo của mô hình cộng với bất cứ điều gì bạn đặt trước mặt nó, vì vậy một câu hỏi như "đối thủ đang thu phí bao nhiêu hôm nay" hoặc "kết quả hàng đầu hiện tại cho truy vấn này là gì" không có câu trả lời trong không gian làm việc.
Ranh giới đó là có chủ đích: khả năng tiếp cận của một đại lý đối với thế giới bên ngoài chính xác là tập hợp các công cụ được đính kèm với nó. Do đó, lớp công cụ là nơi để thêm quyền truy cập web theo thời gian thực, và Giao thức Ngữ cảnh Mô hình (MCP) là cách chuẩn, không phụ thuộc vào khung để thực hiện điều đó. Databricks cung cấp hỗ trợ MCP hạng nhất — máy chủ được quản lý cho các chức năng Unity Catalog và tìm kiếm vector, cùng một con đường proxy được quản lý cho các máy chủ MCP bên ngoài của bên thứ ba. Một máy chủ MCP bên ngoài trở thành một tập hợp các công cụ mà đại lý có thể gọi, được quản lý bởi cùng một mô hình kết nối Unity Catalog như phần còn lại của không gian làm việc.
Bài viết này kết nối máy chủ Scrapeless MCP vào một đại lý Databricks thông qua con đường máy chủ bên ngoài đó. Một kết nối Unity Catalog và một DatabricksMCPClient mang đến cho đại lý khả năng tìm kiếm Google, hiển thị JavaScript, và một trình duyệt chống phát hiện hoàn chỉnh, có thể truy cập thông qua các dấu nhắc mà bạn đã gửi cho đại lý Mosaic AI của mình. Để thấy bề mặt Scrapeless giống y hệt thông qua một khách hàng TypeScript, hãy xem tích hợp Mastra.
Những gì bạn có thể làm với nó
- Nghiên cứu SERP trực tiếp bên trong một đại lý Mosaic AI. Yêu cầu đại lý thực hiện
google_searchcho một truy vấn và trả lại các hàng organic hàng đầu dưới dạng JSON, vì vậy việc nghiên cứu xảy ra bên trong ứng dụng Databricks của bạn thay vì một tab trình duyệt riêng. - Chụp ảnh về đối thủ và mức giá cung cấp cho một bảng Delta. Truyền một URL trong dấu nhắc, để đại lý hiển thị trang và trích xuất tên gói, giá cả, và các tính năng vào một hồ sơ có cấu trúc mà công việc của bạn ghi lại vào lakehouse.
- Tra cứu tài liệu và nhật ký thay đổi để căn cứ vào một phản hồi. Để đại lý lấy tài liệu hiện tại của một thư viện hoặc ghi chú phát hành dưới dạng markdown sạch và suy luận dựa trên văn bản đã hiển thị thay vì một ký ức lỗi thời của API.
- Kiểm tra thị trường và xu hướng cho một tác nhân lập kế hoạch. Sử dụng
google_trendsđể thu thập tín hiệu quan tâm cho một chủ đề trong một khu vực mục tiêu, sau đó dự đoán, lập kế hoạch nội dung, hoặc thử nghiệm ý tưởng với bằng chứng hiện tại. - Trích xuất trang JavaScript vào một bản ghi kiểu. Hướng tác nhân đến một ứng dụng trang đơn; trình duyệt đám mây làm đầy trang và tác nhân phân tích kết quả thành một đối tượng mà tác vụ tiếp theo của bạn sẽ sử dụng.
- Luồng trình duyệt nhiều bước. Xâu chuỗi
browser_goto,browser_click,browser_type, vàbrowser_scrollđể tác nhân thực hiện phân trang, mở rộng các bảng điều khiển, hoặc từng bước qua một wizard trước khi trích xuất. - Đường ống tìm kiếm rồi đọc trong một lượt tác nhân. Kết hợp
google_searchvớiscrape_markdownđể tác nhân tìm kết quả hàng đầu, đọc từng cái và tóm tắt chúng mà không cần rời khỏi vòng lặp tác nhân.
Tại sao lại là Máy chủ MCP Scrapeless
Máy chủ MCP Scrapeless là một cầu nối tùy chỉnh, chống phát hiện giữa một tác nhân AI và web trực tiếp. Đặc biệt cho một tác nhân Databricks, nó mang lại:
- Một trình duyệt đám mây chống phát hiện với khả năng kết xuất JavaScript. Các trang được trải nghiệm trong một Trình duyệt Trích xuất Không bị Tránh trước khi được trích xuất, do đó các SPA, dòng tin vô hạn, và các bảng điều khiển tải chậm trở thành mục tiêu hàng đầu cho
browser_gotovàbrowser_get_html. - Proxy cư dân ở hơn 195 quốc gia. Các truy vấn theo khu vực địa lý trả về các danh sách mà một người dùng địa phương sẽ thấy, với việc thoát proxy hoàn toàn được xử lý ở phía Scrapeless thay vì bên trong mạng lưới Databricks của bạn.
- Một điểm cuối bên ngoài, không mã scraper nào cần lưu trữ. Máy chủ hoạt động như một điểm cuối HTTP quản lý tại
https://api.scrapeless.com/mcp; Databricks bao bọc nó trong một kết nối Unity Catalog, vì vậy không có gì cần xây dựng, triển khai như một Ứng dụng Databricks, hoặc duy trì ngoài kết nối đó. - 21 công cụ bao quát dữ liệu SERP, trích xuất không có trạng thái, và tự động hóa trình duyệt đầy đủ.
google_searchvàgoogle_trendsbao gồm dữ liệu SERP,scrape_html,scrape_markdown, vàscrape_screenshotbao gồm việc lấy một trang một lần, và 16 công cụbrowser_*bao phủ việc điều hướng có trạng thái, nhấp chuột, gõ, cuộn, và chụp ảnh màn hình. - Quản lý như bất kỳ công cụ Databricks nào khác. Bởi vì máy chủ được đưa ra thông qua một kết nối HTTP Unity Catalog, quyền truy cập vào nó được quản lý bằng cùng một mô hình quyền hạn như các kết nối khác của bạn, và mã thông báo API sống trong kết nối thay vì trong mã tác nhân.
Kế hoạch miễn phí đủ để đăng ký kết nối và chạy các lệnh thực; so sánh hạn mức trên trang giá khi bạn vượt quá nó. Nhận khóa API của bạn trên kế hoạch miễn phí tại app.scrapeless.com.
Điều kiện tiên quyết
- Một không gian làm việc Databricks với Khung Tác nhân Mosaic AI có sẵn, và quyền tạo kết nối Unity Catalog. Đường dẫn MCP bên ngoài sử dụng một proxy quản lý mà dẫn trước kết nối bạn đăng ký.
- Một điểm cuối phục vụ mô hình cho LLM của tác nhân. Vòng lặp tác nhân cần một mô hình hoạt động — một điểm cuối Mô hình Cơ bản Databricks hoặc một mô hình bên ngoài — trước khi bất kỳ cuộc gọi công cụ nào chạy.
- Một tài khoản Scrapeless và khóa API — đăng ký trên kế hoạch miễn phí tại app.scrapeless.com và sao chép khóa từ Cài đặt → Quản lý Khóa API.
- Các phụ thuộc của tác nhân đã được cài đặt trong sổ tay hoặc công việc của bạn:
mcp,databricks-mcp,databricks-sdk,databricks-agents, vàmlflow. - Sự quen thuộc cơ bản với Python và sổ tay Databricks — cấu hình là một kết nối cộng với một định nghĩa khách hàng nhỏ.
Lưu ý: đăng ký kết nối Unity Catalog và gọi proxy quản lý yêu cầu một không gian làm việc Databricks đang hoạt động. Các bước dưới đây cho thấy quy trình đó như đã được tài liệu; bề mặt công cụ Scrapeless mà chúng xuất hiện được xác minh trực tiếp với
https://api.scrapeless.com/mcptrong phần xác minh.
Kết nối Scrapeless với một tác nhân Databricks
Cấu hình bao gồm năm bước; mỗi bước có thể được xác minh độc lập.
1. Cài đặt các gói khách hàng
Trong sổ tay hoặc dự án tác nhân của bạn, cài đặt khách hàng MCP và các phụ thuộc tác nhân Databricks:
bash
pip install mcp databricks-mcp "databricks-sdk[openai]" databricks-agents mlflow
databricks-mcp cung cấp DatabricksMCPClient giao tiếp với proxy quản lý, và mcp cung cấp các nguyên tắc cơ bản của Giao thức Ngữ cảnh Mô hình (ClientSession, vận chuyển HTTP có thể truyền dòng) — mà khung mọi cuộc gọi công cụ như là các yêu cầu JSON-RPC 2.0 — được sử dụng khi bạn kết nối trực tiếp với điểm cuối.
2. Đăng ký Scrapeless như một kết nối Catalog Unity (thông tin đăng nhập được lưu trữ)
Một agent Databricks kết nối đến một máy chủ MCP bên ngoài thông qua một kết nối HTTP Catalog Unity. Tạo kết nối trỏ đến điểm cuối Scrapeless, đánh dấu nó là một kết nối MCP, và lưu trữ khóa Scrapeless dưới dạng thông tin đăng nhập kiểu bearer. Trường "host" là trường duy nhất thay đổi giữa các workspaces:
sql
-- Kết nối HTTP Catalog Unity cho máy chủ Scrapeless MCP.
-- Đánh dấu nó là một kết nối MCP trong giao diện người dùng ("Is mcp connection"),
-- và cung cấp khóa Scrapeless dưới dạng thông tin đăng nhập tiêu đề x-api-token.
CREATE CONNECTION scrapeless_mcp
TYPE HTTP
OPTIONS (
host 'https://api.scrapeless.com',
base_path '/mcp',
bearer_token 'your_api_token_here'
);
Sau khi được đăng ký, Databricks sẽ cung cấp máy chủ cho mã agent thông qua proxy được quản lý của nó tại https://<workspace-host>/api/2.0/mcp/external/scrapeless_mcp — mã agent không bao giờ giữ token Scrapeless; nó xác thực với Databricks, và Databricks đính kèm thông tin đăng nhập đã lưu trữ khi nó proxy đến Scrapeless.
3. Hoặc kết nối trực tiếp đến điểm cuối qua HTTP-streamable
Khi bạn đang chế tạo mẫu tích hợp bên ngoài một agent đã triển khai — một script cục bộ, một cú nho khác trong notebook — bạn có thể giao tiếp với điểm cuối Scrapeless trực tiếp bằng SDK MCP tiêu chuẩn thay vì qua proxy. Truyền khóa dưới dạng tiêu đề x-api-token trên giao thức HTTP streamable:
python
# pip install mcp
import asyncio, os
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
URL = "https://api.scrapeless.com/mcp"
async def main():
headers = {"x-api-token": os.environ["SCRAPELESS_KEY"]}
async with streamablehttp_client(URL, headers=headers) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print([t.name for t in tools.tools])
asyncio.run(main())
Máy chủ Scrapeless MCP đọc khóa của nó từ SCRAPELESS_KEY trong môi trường stdin, nhưng qua HTTP-streamable giá trị tương tự được gửi dưới dạng tiêu đề x-api-token — cả hai đều mang khóa giống hệt nhau. Giữ nó trong môi trường (export SCRAPELESS_KEY=...) thay vì mã hóa cứng. Mã nguồn máy chủ nằm trong kho lưu trữ máy chủ Scrapeless MCP.
4. Liệt kê các công cụ và gắn chúng vào agent
Trong mã agent, xây dựng một DatabricksMCPClient chống lại URL proxy được quản lý và một WorkspaceClient, sau đó liệt kê các công cụ. Chuyển đổi các định nghĩa công cụ được trả về thành loại công cụ trong khuôn khổ agent của bạn — Các agent Mosaic AI thường được viết như một ChatAgent trong MLflow trên một đồ thị LangGraph, vì vậy mỗi công cụ MCP trở thành một công cụ ràng buộc trên mô hình ChatDatabricks:
python
from databricks.sdk import WorkspaceClient
from databricks_mcp import DatabricksMCPClient
workspace = WorkspaceClient()
proxy_url = f"{workspace.config.host}/api/2.0/mcp/external/scrapeless_mcp"
mcp_client = DatabricksMCPClient(server_url=proxy_url, workspace_client=workspace)
tools = mcp_client.list_tools() # 21 công cụ Scrapeless, được quản lý bởi kết nối
# Ràng buộc các schema công cụ vào mô hình của agent, và sau đó xây dựng đồ thị agent.
tool_specs = [
{"name": t.name, "description": t.description, "input_schema": t.inputSchema}
for t in tools
]
DatabricksMCPClient.list_tools() trả về các định nghĩa công cụ giống như máy chủ báo cáo — tên, mô tả và schema đầu vào — vì vậy kế hoạch của agent thấy toàn bộ bề mặt Scrapeless. Bạn kết nối những schema đó với mô hình như bạn liên kết bất kỳ công cụ Mosaic AI nào, sau đó gọi công cụ thông qua mcp_client.call_tool(name, arguments) khi mô hình chọn nó.
5. Xác minh bằng cách liệt kê 21 công cụ
Liệt kê các công cụ và in tên của chúng xác nhận rằng việc bắt tay đã hoàn tất và máy chủ đang báo cáo bề mặt đầy đủ của nó:
python
tools = mcp_client.list_tools()
print(len(tools), [t.name for t in tools])
Đầu ra liệt kê 21 công cụ của máy chủ dưới dạng tên thuần túy — các công cụ dữ liệu Google (google_search, google_trends), các trợ giúp một lần trang (scrape_html, scrape_markdown, scrape_screenshot), và các nguyên tắc trình duyệt đám mây (browser_create, browser_goto, browser_get_html, browser_get_text, browser_click, browser_type, browser_press_key, browser_scroll, browser_scroll_to, browser_screenshot, browser_snapshot, browser_wait, browser_wait_for, browser_go_back, browser_go_forward, browser_close). Máy chủ xuất ra chúng không có tiền tố; bất kỳ client nào tải chúng — proxy Databricks, SDK MCP thô, một adapter TypeScript — đều áp dụng không gian tên riêng của nó lên trên.
Cách bạn thực sự sử dụng điều này: gợi ý cho agent của bạn
Sau khi kết nối được đăng ký và các công cụ được liên kết, bạn có dữ liệu web trực tiếp bằng cách giao tiếp với tác nhân Databricks của mình — không phải bằng cách viết tay các lệnh gọi công cụ. Tác nhân sẽ đọc danh sách công cụ mà máy chủ Scrapeless MCP hiển thị và lựa chọn google_search, scrape_markdown hoặc các công cụ browser_* khi cần, kết hợp chúng từng bước từ nhiệm vụ ngôn ngữ tự nhiên. Không có JSON công cụ nào cần bạn viết; bạn gọi tác nhân theo cách bạn gọi một tác nhân Mosaic AI, trong ô notebook hoặc chống lại điểm cuối đã triển khai.
Lời nhắc bạn có thể dán
| Lời nhắc | Tác nhân thực hiện |
|---|---|
"Tìm các kết quả Google hàng đầu cho lakehouse vs warehouse 2026 và trả về chúng dưới dạng JSON." |
google_search với q, hl, gl → các hàng kết quả đã nhập. |
"Những chủ đề tìm kiếm nào đang gia tăng cho data engineering tại Mỹ ngay bây giờ?" |
google_trends. |
"Kéo trang tại https://example.com/docs dưới dạng markdown sạch." |
scrape_markdown. |
"Mở https://pricing.example.com, đó là một ứng dụng JavaScript — render nó và lấy tên kế hoạch, giá cả, và các tính năng dưới dạng JSON." |
browser_create → browser_goto → browser_get_html → trích xuất đã nhập. |
"So sánh các trang giá tại https://a.example.com/pricing và https://b.example.com/pricing và cho tôi biết chúng khác nhau ở đâu." |
browser_create → browser_goto (A) → browser_get_html → browser_goto (B) → browser_get_html → khác nhau. |
"Chụp màn hình toàn trang của https://example.com/landing." |
scrape_screenshot. |
"Mở https://example.com/jobs, chờ danh sách tải lên, chụp hình trang, sau đó trích xuất từng tiêu đề công việc và vị trí dưới dạng JSON." |
browser_create → browser_goto → browser_wait_for → browser_snapshot → trích xuất đã nhập → browser_close. |
Ví dụ thực tế
Bạn viết (một lệnh gọi tác nhân duy nhất trong ô notebook):
python
response = agent.predict({
"messages": [{
"role": "user",
"content": "Sử dụng google_search để tìm các kết quả hàng đầu cho "
"'databricks mosaic ai agent framework' và trả về "
"3 kết quả hàng đầu dưới dạng mảng JSON của {title, link}.",
}]
})
print(response)
Kế hoạch của tác nhân (bằng tiếng Anh đơn giản):
- Gọi
google_searchvớiq: "databricks mosaic ai agent framework",hl: "en",gl: "us". - Nhận một mảng các hàng kết quả và đọc các trường
position,title, vàlink. - Sắp xếp theo
positionvà giữ ba hàng đầu tiên. - Ánh xạ mỗi hàng thành một đối tượng
{title, link}. - Trả về mảng JSON như là câu trả lời của tác nhân.
Những gì bạn nhận lại (hình dạng minh họa — tác nhân hoạt động từ các hàng như thế này):
json
[
{ "title": "Mosaic AI Agent Framework — Tài liệu Databricks", "link": "https://example.com/agent-framework" },
{ "title": "Xây dựng và triển khai một tác nhân trên Databricks", "link": "https://example.com/build-agent" },
{ "title": "Tổng quan về Agent Bricks", "link": "https://example.org/agent-bricks" }
]
// Tên trường khớp với hình dạng hàng google_search; các giá trị là mẫu minh họa.
Các công cụ dữ liệu không trạng thái trả về tải trọng của chúng dưới dạng một thân được tiền tố bởi Response:\n\n; tác nhân loại bỏ tiền tố đó trước khi phân tích JSON, vì vậy bạn không bao giờ thấy nó trong câu trả lời.
Định hình lời nhắc
| Nói điều này | Hiệu ứng |
|---|---|
| "…từ Đức" / "…kết quả Đức" | Định tuyến egress qua proxyCountry và thiết lập gl=de cho tìm kiếm. |
| "…dưới dạng markdown, bỏ qua điều hướng và boilerplate" | Chọn scrape_markdown để có tải trọng văn bản sạch thay vì HTML thô. |
| "…render trước, đó là một ứng dụng một trang" | Buộc con đường browser_* để việc trích xuất chạy chống lại DOM đã được làm ẩm. |
| "…chỉ 5 kết quả hàng đầu" | Cắt giảm mảng trả về xuống còn ba hàng đầu tiên. |
| "…bao gồm đoạn trích cho mỗi kết quả" | Giữ trường snippet trong các hàng đầu ra. |
| "…đóng phiên khi bạn xong" | Thêm một browser_close cuối cùng với sessionId từ browser_create. |
Nhận khóa API của bạn trên gói miễn phí: app.scrapeless.com
Mọi thứ phía dưới là tài liệu tham khảo dưới nắp — bề mặt công cụ, hình dạng trả về chính xác, và hành vi mà tác nhân xử lý cho bạn.
Bề mặt công cụ Scrapeless MCP
Khi kết nối được thiết lập, tác nhân thấy 21 công cụ trải dài từ dữ liệu SERP, việc thu thập không trạng thái, và kiểm soát trình duyệt đám mây chống phát hiện hoàn toàn. Các tên bên dưới là tên thô của máy chủ; bất kỳ khách hàng nào tải chúng cũng áp dụng không gian tên riêng của mình.
| Công cụ | Công việc nó làm |
|---|---|
google_search |
Thực hiện một tìm kiếm Google (q, hl, gl) và trả về các hàng kết quả hữu cơ có cấu trúc. |
google_trends |
Lấy dữ liệu quan tâm của Google Trends cho một truy vấn. |
scrape_html |
Lấy một URL và trả về HTML đã render của nó. |
scrape_markdown |
Lấy một URL và trả về Markdown sạch cho trang. |
scrape_screenshot |
Chụp ảnh màn hình của một URL mục tiêu. |
browser_create |
Mở một phiên trên trình duyệt đám mây chống phát hiện. |
browser_goto |
Dẫn hướng phiên đến một URL. |
browser_click |
Nhấp vào một phần tử trên trang trực tiếp. |
browser_type |
Nhập văn bản vào trường nhập hoặc trường có thể chỉnh sửa. |
browser_get_text / browser_get_html |
Đọc văn bản hoặc HTML của trang. |
browser_screenshot |
Chụp ảnh màn hình của phiên trực tiếp. |
browser_snapshot |
Trả về một ảnh chụp về khả năng tiếp cận/cấu trúc của trang. |
browser_wait / browser_wait_for |
Chờ một khoảng thời gian cố định, hoặc cho một điều kiện/phần tử. |
browser_scroll / browser_scroll_to |
Cuộn trang, hoặc đến một phần tử cụ thể. |
browser_go_back / browser_go_forward |
Di chuyển qua lịch sử phiên. |
browser_press_key |
Gửi một phím bàn phím đến trang. |
browser_close |
Kết thúc phiên trình duyệt đám mây. |
Những gì bạn nhận được
Một cuộc gọi google_search trả về một mảng các hàng kết quả hữu cơ được mã hóa dưới dạng JSON. Mỗi hàng mang cùng một khóa, vì vậy tác nhân có thể ánh xạ trực tiếp đến tiêu đề, liên kết và đoạn trích:
json
// Tên trường phản ánh đầu ra của công cụ google_search; giá trị là mẫu minh họa.
[
{
"position": 1,
"title": "Xây dựng tác nhân trên Databricks: Hướng dẫn hoàn chỉnh",
"link": "https://example.com/databricks-agents",
"snippet": "Hướng dẫn từng bước để xây dựng và triển khai các tác nhân trên Nền tảng Tác nhân AI Mosaic.",
"source": "example.com"
},
{
"position": 2,
"title": "Kết nối tác nhân với dữ liệu bên ngoài",
"link": "https://example.org/agent-data",
"snippet": "Cách hiển thị các trang JavaScript trước khi lấy dữ liệu.",
"source": "example.org"
}
]
Một vài quan sát trung thực khi bạn bắt đầu chạy lệnh:
- Các công cụ không trạng thái như
google_searchvàscrape_markdowntrả về một phần thân được tiền tố bằngResponse:\n\ntheo sau là tải trọng JSON; tác nhân tự động gỡ bỏ tiền tố đó, vì vậy bạn làm việc với dữ liệu, không phải vỏ bọc. - Các công cụ
browser_*trả về văn bản thuần túy mà không có tiền tốResponse:\n\n. - Tham số công cụ là camelCase: truyền
sessionId,proxyCountry, và các trường tương tự chính xác như tên gọi. proxyCountrylà một yêu cầu, không phải là một đảm bảo — nó có thể chuyển đến vùng được cấu hình trong tài khoản của bạn, vì vậy hãy xác nhận khu vực xuất bếp khi việc nhắm mục tiêu theo vùng quan trọng.- Các giá trị trong đầu ra của công cụ phụ thuộc vào nội dung: số lượng kết quả, sắp xếp, và văn bản đoạn trích thay đổi theo truy vấn trực tiếp.
Kết luận: tìm kiếm, hiển thị và duyệt từ Databricks
Toàn bộ tích hợp giảm xuống còn một kết nối Unity Catalog cộng với các lệnh bằng ngôn ngữ tự nhiên. Với Scrapeless được đăng ký như một kết nối MCP, DatabricksMCPClient.list_tools() cung cấp 21 công cụ cho tác nhân của bạn, và mã thông báo API được giữ trong kết nối thay vì trong mã, một tác nhân Databricks có được tìm kiếm Google trực tiếp, hiển thị JavaScript, và một trình duyệt đám mây chống phát hiện hoàn chỉnh - chính xác là lớp web mà lakehouse không cung cấp riêng. Bạn mô tả nhiệm vụ; tác nhân chọn công cụ.
Nếu bạn đang kết nối các khách hàng khác, cùng một máy chủ Scrapeless MCP cũng có thể đưa vào chúng: xem tích hợp Mastra cho đường dẫn TypeScript và tích hợp Pi Agent cho một thời gian chạy tác nhân khác. Giữ mã API của bạn trong kết nối Unity Catalog, đăng ký điểm đến một lần, liệt kê các công cụ, và để tác nhân chọn. Tham khảo đầy đủ tại docs.scrapeless.com.
Sẵn sàng để xây dựng quy trình dữ liệu do AI điều khiển của bạn?
Tham gia cộng đồng của chúng tôi để nhận một kế hoạch miễn phí và kết nối với các nhà phát triển đang xây dựng các tác nhân Databricks + Scrapeless MCP: Discord · Telegram.
Đăng ký tại app.scrapeless.com để miễn phí thời gian chạy Trình duyệt Scraping và điều chỉnh tích hợp ở trên cho các SERP, trang, và vùng mà các tác nhân Databricks của bạn cần. Tham khảo đầy đủ tại docs.scrapeless.com.
Câu hỏi thường gặp
H: Tại sao một tác nhân Databricks cần một máy chủ MCP để truy cập web?
Bởi vì một đại lý Mosaic AI chỉ có thể gọi các công cụ mà bạn đã đăng ký với nó, và nó không có tìm kiếm web hoặc trình duyệt tích hợp sẵn. MCP là tiêu chuẩn, cách tiếp cận không phụ thuộc vào framework để thêm khả năng đó, và Databricks hỗ trợ các máy chủ MCP bên ngoài thông qua một proxy được quản lý. Kết nối Scrapeless mang lại cho đại lý khả năng tìm kiếm Google trực tiếp, truy cập trang đã được hiển thị và một trình duyệt đám mây chống phát hiện hoàn chỉnh trong một lần chuyển.
Q: Databricks kết nối với một máy chủ MCP bên ngoài như Scrapeless như thế nào?
Thông qua một kết nối HTTP Unity Catalog được đánh dấu là một kết nối MCP. Bạn đăng ký https://api.scrapeless.com/mcp làm kết nối, lưu trữ x-api-token của Scrapeless làm thông tin xác thực của nó, và Databricks sẽ hiển thị nó cho mã đại lý tại https://<workspace-host>/api/2.0/mcp/external/<connection_name>. Mã đại lý sử dụng DatabricksMCPClient chống lại URL proxy đó, vì vậy mã thông báo Scrapeless vẫn ở trong kết nối và không bao giờ xuất hiện trong đại lý.
Q: Biến môi trường hoặc tiêu đề nào giữ khóa Scrapeless?
Khởi động stdio của máy chủ đọc SCRAPELESS_KEY; điểm cuối HTTP đọc cùng một giá trị từ tiêu đề x-api-token. Khi bạn đăng ký kết nối Unity Catalog, bạn lưu trữ khóa đó một lần như thông tin xác thực của kết nối, vì vậy mã đại lý đã triển khai không trực tiếp xử lý nó.
Q: Có bao nhiêu công cụ máy chủ Scrapeless MCP công khai, và chúng là gì?
21 công cụ: google_search và google_trends cho dữ liệu SERP; scrape_html, scrape_markdown, và scrape_screenshot cho việc lấy trang một lần; và 16 công cụ browser_* (browser_create, browser_goto, browser_get_html, browser_get_text, browser_click, browser_type, browser_press_key, browser_scroll, browser_scroll_to, browser_screenshot, browser_snapshot, browser_wait, browser_wait_for, browser_go_back, browser_go_forward, browser_close) để kiểm soát trình duyệt đám mây trạng thái. Máy chủ phát ra chúng dưới dạng các tên đơn giản; khách hàng tải chúng sử dụng không gian tên riêng.
Q: Tôi có cần lưu trữ Scrapeless như một Ứng dụng Databricks không?
Không. Lưu trữ một máy chủ MCP như một Ứng dụng Databricks là dành cho các máy chủ mà bạn tự chạy. Scrapeless là một điểm cuối bên ngoài được quản lý, vì vậy bạn đăng ký nó như một kết nối HTTP Unity Catalog và truy cập nó thông qua proxy MCP bên ngoài được quản lý — không có gì để triển khai hoặc duy trì chạy ở phía bạn.
Q: Tôi có thể kiểm tra kết nối bên ngoài một đại lý đã triển khai không?
Có. Hướng SDK Python MCP tiêu chuẩn đến https://api.scrapeless.com/mcp với tiêu đề x-api-token, gọi initialize sau đó list_tools(), và bạn sẽ thấy cùng 21 công cụ mà đại lý đã triển khai nhận thông qua proxy. Con đường trực tiếp đó là cách nhanh nhất để xác nhận khóa của bạn và điểm cuối trước khi bạn đăng ký kết nối Unity Catalog.
Q: Điều này có cần một mô hình cụ thể không?
Không. Mô hình của đại lý là bất kỳ điểm cuối nào của Databricks mà bạn kết nối — một điểm cuối Mô hình Cơ bản hoặc một mô hình bên ngoài. Các công cụ Scrapeless không phụ thuộc vào mô hình; chọn một mô hình xử lý tốt các cuộc gọi công cụ, và đại lý sẽ kết hợp các công cụ Scrapeless theo cách giống nhau bất kể nhà cung cấp.
Q: Việc thu thập thông tin qua đại lý có hợp pháp không?
Việc thu thập dữ liệu công khai thường được phép, nhưng bạn phải tự chịu trách nhiệm về cách bạn sử dụng nó. Xem xét Điều khoản Dịch vụ của từng trang và tôn trọng robots.txt, và nhớ rằng các quy định xung quanh dữ liệu cá nhân và quyền truy cập khác nhau theo từng khu vực. Khi còn nghi ngờ, hãy tìm kiếm lời khuyên pháp lý cho trường hợp sử dụng cụ thể của bạn.
Q: Bạn có thể sử dụng điều này mà không có Databricks không?
Có. Máy chủ Scrapeless MCP là một máy chủ MCP tiêu chuẩn, vì vậy bất kỳ khách hàng tương thích MCP nào cũng có thể gọi nó — hoặc bạn có thể điều khiển nó trực tiếp qua JSON-RPC (initialize, sau đó tools/list và tools/call). Databricks là một host cho nó, không phải là yêu cầu.
Tại Scrapless, chúng tôi chỉ truy cập dữ liệu có sẵn công khai trong khi tuân thủ nghiêm ngặt các luật, quy định và chính sách bảo mật trang web hiện hành. Nội dung trong blog này chỉ nhằm mục đích trình diễn và không liên quan đến bất kỳ hoạt động bất hợp pháp hoặc vi phạm nào. Chúng tôi không đảm bảo và từ chối mọi trách nhiệm đối với việc sử dụng thông tin từ blog này hoặc các liên kết của bên thứ ba. Trước khi tham gia vào bất kỳ hoạt động cạo nào, hãy tham khảo ý kiến cố vấn pháp lý của bạn và xem xét các điều khoản dịch vụ của trang web mục tiêu hoặc có được các quyền cần thiết.



