Cách kết nối Scrapeless với Claude: Thiết lập kết nối MCP
Lead Scraping Automation Engineer
TL;DR:
- Thêm Scrapeless vào Claude chỉ cần một mục cấu hình: một máy chủ MCP HTTP từ xa tại
https://api.scrapeless.com/mcpvới khóa của bạn trên tiêu đềx-api-token. - Quy trình bắt tay trả về
scrapeless-mcp-serverv0.2.0 trên giao thức2025-06-18, vàtools/listtrả về 25 công cụ —scrape_markdown, bộbrowser_*,crawl_*,google_search,google_trendsvàai_scraper. - Phạm vi quyết định xem nó có kết nối hay không. Mục giống hệt ở phạm vi người dùng báo
✔ Connected; trong một dự án.mcp.jsonnó báo⏸ Pending approvalvà vẫn không kết nối cho đến khi bạn phê duyệt một cách tương tác. - Scrapeless xác thực trên
x-api-token, không phảiAuthorization: Bearer. Một tiêu đề Bearer thất bại vào thời điểm kết nối: Claude báo✘ Failed to connectvớiHTTP 401. - Truyền khóa với
--headerđặt nó vào lịch sử shell của bạn và danh sách quy trình; viết tệp cấu hình trực tiếp thì không. - Một trạng thái
Connectedchỉ chứng minh rằng tiêu đề có mặt — Scrapeless chấp nhận bất kỳ giá trị khóa nào tại quá trình bắt tay và vẫn liệt kê tất cả 25 công cụ. Chứng minh khóa với một cuộc gọi công cụ thực tế duy nhất trả về nội dung trang. - Nhận một khóa trên kế hoạch miễn phí Scrapeless và kết nối trong khoảng một phút.
Claude có thể suy luận về một trang web một cách chi tiết nhưng không thể lấy một trang web. Một máy chủ MCP thay đổi điều đó: mô hình nhận được các công cụ mà nó có thể gọi trong suốt cuộc trò chuyện, vì vậy "kiểm tra xem trang này nói gì bây giờ" không còn là một yêu cầu bạn trả lời bằng cách dán.
Kết nối Claude với máy chủ Scrapeless MCP qua HTTP từ xa chỉ cần một mục cấu hình. Các phần quan trọng đáng chú ý là hai phạm vi hành xử khác nhau và sự khác biệt giữa một kết nối báo xanh và một kết nối thực sự hoạt động.
Những gì bạn nhận được khi nó được kết nối
Máy chủ tiết lộ 25 công cụ, được liệt kê trực tiếp thay vì sao chép từ tài liệu:
| Nhóm | Công cụ |
|---|---|
| Nội dung trang | scrape_markdown, scrape_html, scrape_screenshot |
| Trình duyệt đám mây | browser_create, browser_goto, browser_click, browser_type, browser_get_text, browser_get_html, browser_snapshot, browser_screenshot, browser_scroll, browser_scroll_to, browser_wait, browser_wait_for, browser_press_key, browser_go_back, browser_go_forward, browser_close |
| Thu thập dữ liệu | crawl_start, crawl_result, crawl_cancel |
| Tìm kiếm | google_search, google_trends |
| Câu trả lời trợ lý AI | ai_scraper |
Hai nhóm quan trọng cho các công việc khác nhau. scrape_markdown trả lời "trang này nói gì" trong một cuộc gọi. Bộ browser_* là một phiên mà bạn điều khiển từng bước, cho bất cứ điều gì ẩn sau một cú nhấp chuột hoặc một biểu mẫu.
Mỗi một trong số những cuộc gọi đó đều di chuyển như một yêu cầu JSON-RPC bên dưới — MCP là một phương tiện và một lược đồ trên các thông số JSON-RPC 2.0, đó là lý do một chuỗi initialize / tools/list / tools/call là tất cả những gì có trên bề mặt giao thức.
Điều kiện tiên quyết
- Claude Code đã được cài đặt, hoặc một khách hàng MCP khác hỗ trợ các máy chủ HTTP từ xa.
- Một khóa API Scrapeless từ bảng điều khiển.
- Không cần cài đặt cho chính máy chủ. Nó được lưu trữ, vì vậy không có gói, không có thời gian chạy, và không có quy trình cục bộ.
Điểm cuối cùng đó là sự khác biệt giữa hai phương tiện. Một máy chủ stdio là một lệnh cục bộ do khách hàng khởi động, có nghĩa là sẽ có một gói để cài đặt và cập nhật. Một máy chủ HTTP từ xa là một URL, và các thông số Giao thức Ngữ cảnh Mô hình định nghĩa cả hai; phương tiện HTTP có thể phát trực tuyến là phương tiện không cần quy trình cục bộ nào cả.
Bước 1: Thêm máy chủ
Tài liệu tham khảo MCP của Claude Code ghi lại lệnh như một dòng:
bash
claude mcp add --transport http scrapeless https://api.scrapeless.com/mcp \
--header "x-api-token: YOUR_SCRAPELESS_API_KEY"
Điều này hoạt động, và nó có chi phí đáng biết: mọi thứ sau --header sẽ được lưu vào lịch sử shell của bạn và có thể thấy trong danh sách quy trình trong khi lệnh đang chạy. Viết tệp cấu hình trực tiếp tránh cả hai.
Đối với phạm vi người dùng, thêm mục vào ~/.claude.json:
json
{
"mcpServers": {
"scrapeless": {
"type": "http",
"url": "https://api.scrapeless.com/mcp",
"headers": { "x-api-token": "YOUR_SCRAPELESS_API_KEY" }
}
}
}
Chú ý tên tiêu đề. Scrapeless xác thực trên x-api-token, và hầu hết các hướng dẫn cài đặt MCP cho thấy Authorization: Bearer vì đó là những gì khung xác thực HTTP định nghĩa cho các thông tin xác thực bearer. Việc sao chép hình dạng đó ở đây thất bại trước khi quá trình bắt tay hoàn thành: claude mcp list báo ✘ Failed to connect — Server rejected the configured Authorization header (HTTP 401), với chi tiết Unauthorized: Missing x-api-token header.
Bước 2: Hiểu phạm vi nào bạn đã sử dụng
Claude đọc cấu hình MCP từ hơn một nơi, và hai cái hành xử khác nhau theo cách tạo ra một lần chạy đầu tiên gây nhầm lẫn.
Tại phạm vi người dùng, máy chủ hoạt động ngay lập tức:
text
scrapeless:
Scope: User config (available in all your projects)
Status: ✔ Connected
Type: http
URL: https://api.scrapeless.com/mcp
Mục giống hệt trong một dự án .mcp.json không kết nối:
text
scrapeless:
Scope: Project config (shared via .mcp.json)
Status: ⏸ Pending approval (run `claude` to approve)
Type: http
URL: https://api.scrapeless.com/mcp
Một tệp có phạm vi dự án được chia sẻ với tất cả mọi người kiểm tra kho lưu trữ, vì vậy nó được đòi hỏi phải có sự chấp thuận tương tác trước khi khách hàng có thể nói chuyện với nó. Đó là mặc định đúng — một tệp cấu hình trong một kho có thể chỉ định khách hàng của bạn đến bất cứ điều gì — nhưng điều đó có nghĩa là một mục dự án trông như bị hỏng cho đến khi ai đó mở một phiên và chấp thuận nó.
Sử dụng phạm vi người dùng cho một khóa mà là của bạn. Sử dụng phạm vi dự án khi cả đội nên nhận máy chủ, và kỳ vọng mỗi người sẽ chấp thuận nó một lần.
Bước 3: Xác nhận rằng nó thực sự hoạt động
✔ Connected có nghĩa là quá trình bắt tay đã thành công. Nó không có nghĩa là một cuộc gọi sẽ.
Danh sách công cụ được trả lời bởi chính máy chủ MCP và không bao giờ đến API phía trên, vì vậy một máy chủ có thể quảng cáo một bộ công cụ hoàn thiện và lành mạnh trong khi mọi cuộc gọi thực tế đều thất bại do chứng thực. Điều đó không phải là giả thuyết: một cổng dẫn đến cùng một điểm kết thúc với một mã token lưu trữ đã cũ đã liệt kê toàn bộ bộ công cụ của nó và trả về lỗi mã token không hợp lệ trong cuộc gọi thực tế đầu tiên, trong khi cùng một điểm kết thúc với một khóa tốt trả về HTTP 200.
Vì vậy, hãy xác thực bằng một cuộc gọi, không phải bằng một huy hiệu. Bên trong một phiên Claude, /mcp liệt kê các máy chủ kết nối và công cụ của chúng; yêu cầu một trang sẽ kiểm tra đường dẫn từ đầu đến cuối:
text
Use scrapeless to fetch https://books.toscrape.com/catalogue/category/books/mystery_3/index.html
as markdown and list the first five book titles with their prices.
Cuộc gọi cơ bản và kết quả của nó, được ghi lại trực tiếp chống lại điểm kết thúc:
text
initialize HTTP 200 server=scrapeless-mcp-server v0.2.0
tools/list HTTP 200 25 tools
tools/call scrape_markdown HTTP 200 8940 chars of page content
Nội dung trang trong kết quả là sự xác nhận đáng có. Với một khóa sai, cuộc gọi tương tự vẫn trả về HTTP 200 và không có cờ isError; văn bản kết quả bắt đầu với Failed to fetch data thay vào đó.
Những gì trở lại
scrape_markdown trả về trang dưới dạng Markdown trong khối nội dung, đây là hình dạng mà một mô hình có thể thực sự sử dụng:
text
Response: "- [Home](https://books.toscrape.com/index.html)
- [Books](https://books.toscrape.com/catalogue/category/books_1/index.html)
...
Markdown thay vì HTML là có chủ đích. Qua các công cụ MCP, cùng một trang là 8,940 ký tự từ scrape_markdown so với 53,800 từ scrape_html, vì vậy yêu cầu HTML sẽ tiêu tốn khoảng sáu lần ngữ cảnh vào việc đánh dấu mà mô hình không cần. Hãy tìm scrape_html khi bạn định phân tích nó một mình, và scrape_markdown khi mô hình là người tiêu thụ.
Bạn đang làm việc với một thiết lập kết nối ngay bây giờ? Kế hoạch Scrapeless miễn phí bao gồm đủ cuộc gọi để thực hiện bắt tay và một vài cuộc gọi công cụ đầu tiên.
Một bộ định tuyến ở phía trước thay đổi những gì Claude thấy
Nếu khách hàng của bạn chỉ về một cổng mà định tuyến nhiều máy chủ MCP phía sau một URL thay vì chống lại điểm kết thúc trực tiếp, danh sách công cụ thay đổi hình dạng. Chỉ về một cổng định tuyến thông minh, cùng một khách hàng đã phát hiện 3 công cụ — các công cụ meta tìm kiếm và phân phối của bộ định tuyến. Chỉ về https://api.scrapeless.com/mcp, nó đã phát hiện tất cả 25.
Cả hai đều không sai. Một bộ định tuyến giữ một chứng thực và một dấu vết kiểm toán qua nhiều nhà cung cấp, với chi phí cho mô hình nhìn thấy tên công cụ một cấp độ gián tiếp. Kết nối trực tiếp cho mô hình bề mặt công cụ thực. Chọn theo thiết lập, và kiểm tra số lượng phát hiện để bạn biết cái nào bạn đã có.
Khuyến khích nó tốt
Hai thói quen tạo ra sự khác biệt giữa một máy chủ kết nối và một máy chủ hữu ích.
Gọi tên công cụ khi công việc rõ ràng. "Sử dụng scrape_markdown trên URL này" bỏ qua một vòng mà mô hình quyết định cách lấy. Đối với công việc nhiều bước — đăng nhập, lọc, đọc kết quả — mô tả thứ tự thay vào đó, vì các công cụ browser_* chia sẻ một phiên và thứ tự là điều quan trọng.
Yêu cầu hình dạng bạn muốn trở lại. Một mô hình được đưa 8,940 ký tự Markdown sẽ tóm tắt trừ khi bạn nói với nó để trả về một bảng tiêu đề và giá. Công cụ trả về một tài liệu; đầu ra hữu ích là bất cứ điều gì bạn đã yêu cầu mô hình làm từ nó.
Đối với bức tranh MCP rộng hơn, hướng dẫn tích hợp MCP của chúng tôi bao gồm giao thức và cảnh quan khách hàng, và trang API Thu thập dữ liệu mô tả gia đình diễn viên mà những công cụ này đại diện. Các tài liệu mang đến tham khảo theo diễn viên, và giá cả liệt kê những gì một cuộc gọi tốn.
Kết luận
Toàn bộ kết nối là một URL, một tên tiêu đề và một quyết định phạm vi. https://api.scrapeless.com/mcp với x-api-token ở phạm vi người dùng báo cáo ✔ Connected và đưa Claude 25 công cụ; mục nhập tương tự trong một tệp dự án chờ đợi một sự chấp thuận mà dễ dàng bị nhầm lẫn với một thiết lập bị hỏng.
Hai điều đáng mang theo qua thiết lập. Tiêu đề là x-api-token, không phải Bearer — hình dạng Bearer bị từ chối với mã 401 tại thời điểm kết nối, vì vậy claude mcp list cho thấy nó thất bại ngay lập tức. Và một trạng thái xanh là một cái bắt tay: một tools/call trả về nội dung trang thực là bằng chứng duy nhất cho thấy thông tin xác thực phía sau là hợp lệ.
Sẵn sàng để cho Claude gọi một fetch nó có thể thực hiện? Bắt đầu với kế hoạch miễn phí Scrapeless và thêm máy chủ.
FAQ
Q: Làm thế nào để tôi thêm máy chủ MCP Scrapeless vào Claude?
Thêm một mục HTTP từ xa trỏ vào https://api.scrapeless.com/mcp với khóa của bạn trên một tiêu đề x-api-token. Hoặc chạy claude mcp add --transport http scrapeless https://api.scrapeless.com/mcp --header "x-api-token: ...", hoặc viết cùng một type/url/headers đối tượng vào tệp cấu hình của bạn — điều này giữ cho khóa không nằm trong lịch sử shell.
Q: Tại sao máy chủ MCP của tôi hiển thị là chờ phê duyệt?
Bởi vì nó được định nghĩa trong một dự án .mcp.json thay vì trong cấu hình người dùng của bạn. Một tệp dự án đi kèm với kho lưu trữ, vì vậy khách hàng yêu cầu phê duyệt tương tác trước khi kết nối với nó. Mục cùng loại ở phạm vi người dùng kết nối ngay lập tức. Mở một phiên và phê duyệt nó, hoặc chuyển mục vào phạm vi người dùng nếu khóa chỉ là của bạn.
Q: Tôi có nên sử dụng Authorization: Bearer hay x-api-token?
x-api-token. Scrapeless đọc chính xác tiêu đề đó — một yêu cầu không có nó sẽ trả về 401 Unauthorized: Missing x-api-token header. Một mục chỉ Bearer sẽ bị từ chối theo cùng một cách tại thời điểm kết nối, vì vậy Claude hiển thị ✘ Failed to connect thay vì ✔ Connected.
Q: Làm thế nào để tôi biết kết nối thực sự đang hoạt động?
Thực hiện một cuộc gọi công cụ. Đầu ra trạng thái cho bạn biết cái bắt tay đã thành công, và danh sách công cụ được phục vụ bởi máy chủ MCP mà không cần liên hệ với API thượng nguồn, vì vậy cả hai đều có thể trông khỏe mạnh trước một thông tin xác thực bị từ chối. Một tools/call trả về nội dung trang thực là bằng chứng; một khóa sai tạo ra kết quả bắt đầu bằng Failed to fetch data, vẫn không có cờ isError.
Q: Sự khác biệt giữa stdio và HTTP vận chuyển ở đây là gì?
Một máy chủ stdio là một quy trình địa phương mà khách hàng khởi động, vì vậy nó cần một gói được cài đặt và duy trì cập nhật. Máy chủ MCP Scrapeless được lưu trữ, vì vậy vận chuyển HTTP chỉ cần một URL và một tiêu đề — không cần cài đặt, không cần chạy địa phương và không có phiên bản nào để theo dõi trên máy bạn.
Q: Tôi nên mong đợi thấy bao nhiêu công cụ?
25 từ điểm cuối trực tiếp. Nếu bạn thấy 3, khách hàng của bạn đang được trỏ vào một cổng định tuyến thay vì điểm cuối, và ba công cụ đó là công cụ phân phối của bộ định tuyến. Nếu bạn thấy một danh sách có tên Maps, Jobs, Hotels hoặc Flights, đó là bộ công cụ cũ hơn — kiểm tra số lượng với một tools/list mới.
Q: Điều này có hoạt động trong Claude Desktop cũng như Claude Code không?
Cả hai đều hỗ trợ MCP, nhưng chúng đọc các tệp cấu hình khác nhau, và thiết lập của Desktop thường được hiển thị với một lệnh stdio cục bộ thay vì một URL. Mục HTTP từ xa ở trên là hình dạng Claude Code; để xem hướng dẫn Desktop hãy xem bài viết trước của chúng tôi về việc chạy máy chủ MCP Scrapeless trên Claude, và lưu ý rằng danh sách công cụ của nó đã tồn tại trước 25 công cụ hiện tại.
Q: Tôi có thể giới hạn các công cụ mà mô hình có thể gọi không?
Có — đó là một mối quan tâm về quyền trên phía khách hàng hơn là một thiết lập máy chủ. Claude Code tiết lộ các quy tắc cho phép và từ chối đối với các công cụ, vì vậy một thiết lập chỉ cần nội dung trang có thể cho phép scrape_markdown và để không có công cụ phiên duyệt. Hãy thu hẹp nó xuống những gì công việc cần.
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.



