Claude.ai + Scrapeless: Add a Custom MCP Connector
Senior Web Scraping Engineer
TL;DR:
- Scrapeless connects to claude.ai as a custom connector. Add
https://api.scrapeless.com/mcpin the Add custom connector dialog and pass your API key as a request header. - Switch Authentication to No sign-in. Claude pre-selects the option it detects, and for Scrapeless that was Sign in now, an OAuth sign-in the server does not offer.
- Add one request header:
x-api-token, with the bare key as the value. Claude sends the value exactly as you type it, so nothing goes in front of the key. - Request headers are a beta. Anthropic offers them to a limited set of organizations, and on Team and Enterprise plans an Owner adds the connector.
- A connector that lists 25 tools has not proven the key yet. Scrapeless lists its tools for any key value, so confirm with one tool call in a chat.
- Get a key on the Scrapeless free plan and connect it in a few minutes.
Claude on the web has its own web search. The Scrapeless MCP server adds a different kind of access: pages rendered in a real browser and returned as Markdown, a cloud browser Claude can drive click by click, background crawls and Google results data. Once it is connected, Claude calls those tools in the middle of a conversation.
This guide adds the hosted server through claude.ai's Add custom connector dialog. The dialog is a single form, and two of its settings need attention for Scrapeless: the sign-in option Claude detects, and the header that carries the key.
How a Custom Connector Reaches Scrapeless
A custom connector is a remote MCP server that Claude calls from Anthropic's cloud rather than from your computer. Anthropic's guide to custom connectors says this holds for every Claude client, claude.ai included, so the server has to be reachable over the public internet. Scrapeless runs at a public HTTPS endpoint, so there is nothing to host and nothing to allowlist.
Authentication decides the rest of the setup. Many connectors sign each person in through OAuth. Scrapeless has no OAuth flow and reads an API key from the x-api-token header on every request. Claude's documentation for remote MCP connectors covers that case with request headers: a fixed credential entered once when the connector is added and sent on every request.
What Scrapeless Adds to Claude
The server exposes 25 tools, grouped by job:
scrape_markdown,scrape_htmlandscrape_screenshotreturn a rendered page as Markdown, raw HTML or an image in one call.- Sixteen
browser_*tools, frombrowser_createandbrowser_gototobrowser_click,browser_typeandbrowser_snapshot, drive a cloud browser session step by step. crawl_start,crawl_resultandcrawl_cancelrun a crawl in the background and collect it later.google_searchandgoogle_trendsreturn search results and trend data, andai_scrapercaptures answers from AI assistants such as ChatGPT, Gemini and Perplexity.
In the connector's settings, Claude lists them under readable names such as "AI scraper" and "Browser click", each with its own permission.
Prerequisites
- A Claude plan with custom connectors. Anthropic lists Free, Pro, Max, Team and Enterprise, and limits Free to one custom connector.
- The Request headers section in the Add custom connector dialog. Request header authentication is in beta for a limited set of organizations; if the section is missing, your organization does not have access yet.
- On Team and Enterprise plans, an Owner or Primary Owner to add the connector.
- A Scrapeless API key from the Scrapeless dashboard.
Step 1: Open Add Custom Connector
Where the dialog opens depends on the plan:
| Plan | Where to add the connector |
|---|---|
| Free, Pro, Max | Customize > Connectors, then + > Add custom connector |
| Team, Enterprise | An Owner opens Organization settings > Connectors, clicks Add, hovers over Custom and selects Web |
Fill in the first step:
| Field | Value |
|---|---|
| Name | Scrapeless |
| MCP server URL | https://api.scrapeless.com/mcp |
Keep the key out of the URL. Scrapeless reads it only from the x-api-token header, and Anthropic's authentication guide for connectors advises against credentials in connector URLs, because URLs are recorded in server logs, proxies and browsing history.
Setting this up now? The Scrapeless free plan covers the connection and your first tool calls.
Step 2: Change the Detected Option to No Sign-in
After you continue, Claude checks the URL and pre-selects the authentication it detects, marked Detected. For https://api.scrapeless.com/mcp, the detected option was Sign in now. Choose No sign-in instead.
The two sign-in options run an OAuth flow, and Scrapeless does not offer one. Its 401 response carries no WWW-Authenticate header, and its OAuth discovery paths return 404. No sign-in is the option Anthropic's documentation names for servers that use an API key, paired with the key under Request headers. Once it is selected, the OAuth client fields disappear from the dialog.
Step 3: Add the x-api-token Header
Open Request headers and add one row:
| Setting | Value |
|---|---|
| Header name | x-api-token |
| Value | Your Scrapeless API key, with nothing in front of it |
| Required | On |
Then click Add.
Pick the name from the list, or choose Custom header and type it. Anthropic approves each custom header name before Claude sends it to a third-party server, and the dialog rejects a name that is not approved. x-api-token saved without an error when this setup was tested.
The value needs no prefix. Claude sends it exactly as entered and adds no authentication scheme, which is what Scrapeless expects: the server reads the whole header value as the key. A value such as Bearer <key> or token <key> still gets through the handshake and the tool listing, then fails on every tool call.
Required makes a missing value fail the connection instead of sending requests without the header. Claude stores the value securely and does not show it again. Authentication settings cannot be edited later, so a wrong key or header name means removing the connector and adding it again.
Step 4: Check the Tools and Their Permissions
Open Customize > Connectors and select Scrapeless. The connector page lists all 25 tools under Tool permissions, and each tool can be set to Always allow, Needs approval or Blocked. In testing, every Scrapeless tool started at Needs approval, so Claude asks before each call.
Block what a job does not need. A chat that only reads pages can keep scrape_markdown and google_search available and block the browser_* tools, which drive a live browser session. Anthropic's article on using connectors describes the same three permission levels for every connector.
Step 5: Run One Tool Call in a Chat
Connectors are switched on per conversation. In a new chat, click +, open Connectors and turn on Scrapeless. Then ask for a small, checkable job:
text
Use the Scrapeless scrape_markdown tool to fetch https://example.com
Allow the call if Claude asks for approval. Claude shows a Scrape markdown step for https://example.com, then returns the page as Markdown, starting with:
text
# Example Domain
This domain is for use in documentation examples without needing permission. Avoid use in operations.
This call is the test that counts. Scrapeless answers the MCP handshake and lists its 25 tools for any key value, so a connected connector with a full tool list shows only that the header arrived. With a wrong key, the tool result starts with Failed to fetch data.
Fix the Common Problems
| What you see | Cause | Fix |
|---|---|---|
| No Request headers section in the dialog | The request headers beta is not enabled for your organization | Check with a Team or Enterprise Owner, or with Claude support |
| Connecting starts a sign-in that fails | Sign in now or Sign in when needed stayed selected | Remove the connector and add it again with No sign-in |
| The save is rejected over the header name | The typed name is not an approved header name | Check the spelling x-api-token, or ask Claude support to approve it |
| The connector fails to connect | The key went under another header name, such as authorization, or a Required value is empty |
Add the connector again with x-api-token and the key |
Tool results start with Failed to fetch data |
The key is wrong or revoked, or has a prefix | Add the connector again with the bare, valid key |
| Members cannot find the connector | On Team and Enterprise plans, only Owners add custom connectors | An Owner adds it; members connect from Customize > Connectors |
One Key for the Whole Organization
A request header is one credential stored on the connector. Claude's documentation describes request headers as a fit for services where everyone in an organization shares a credential, and on Team and Enterprise plans the Owner enters it once for every member. All members' Scrapeless calls then run on that one key and its plan.
Use a key created for Claude alone, so it can be rotated without touching other integrations. Rotating it means removing the connector and adding it again with the new key, and members reconnect afterwards. Set tool permissions with the whole team in mind.
For more on what the server exposes, read the Scrapeless MCP server announcement. The Browser MCP documentation carries the configuration reference, the Scraping API page covers the actors behind the tools, and pricing lists what a call costs.
Conclusion
Scrapeless goes into claude.ai as a custom connector with three settings that matter: the URL https://api.scrapeless.com/mcp, No sign-in in place of the detected sign-in option, and an x-api-token request header that holds the bare key. Turn the connector on in a chat, and Claude can call all 25 tools.
Read the tool list as a sign that the header arrived, not that the key works. One scrape_markdown call that returns a real page settles the key, and tool permissions decide how much Claude may do without asking.
Ready to give Claude a cloud browser and clean page content? Start with the Scrapeless free plan and add the connector.
FAQ
Q: Can I add a custom connector with an API key in claude.ai?
Yes, where the Request headers beta is available. Choose No sign-in in the Add custom connector dialog and add the key under Request headers. Claude stores the value and sends it on every request to the server.
Q: Which authentication option should I pick for Scrapeless in claude.ai?
No sign-in. Claude may mark Sign in now as Detected, but Scrapeless has no OAuth sign-in and authenticates with the x-api-token header instead.
Q: What header does Scrapeless need in Claude?
x-api-token, with the API key as the whole value. Claude adds no prefix, so enter only the key.
Q: Why don't I see Request headers in the Add custom connector dialog?
Request header authentication is in beta and available to a limited set of organizations. Without that section, an API-key server such as Scrapeless cannot be added through the dialog yet.
Q: Can I change the Scrapeless key after adding the connector?
Not in place. Authentication settings, request headers included, cannot be changed after a connector is added. Remove the connector and add it again with the new key; members reconnect afterwards.
Q: Why does the connector show 25 tools when my key is wrong?
Scrapeless lists its tools for any key value. The key is checked when a tool runs, and a wrong key returns text starting with Failed to fetch data.
Q: Can I put the Scrapeless API key in the connector URL?
No. Scrapeless accepts the key only in the x-api-token header, and Anthropic advises against credentials in connector URLs.
Q: How many tools does Scrapeless add to Claude?
25: three scrape_* tools, sixteen browser_* tools, three crawl_* tools, plus google_search, google_trends and ai_scraper.
At Scrapeless, we only access publicly available data while strictly complying with applicable laws, regulations, and website privacy policies. The content in this blog is for demonstration purposes only and does not involve any illegal or infringing activities. We make no guarantees and disclaim all liability for the use of information from this blog or third-party links. Before engaging in any scraping activities, consult your legal advisor and review the target website's terms of service or obtain the necessary permissions.



