Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Scraper API for HTML, Markdown, and screenshots, web search, and account usage for AI agents.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://mcp.mrscraper.com/mcpRun this in your terminal
claude mcp add --transport http mrscraper https://mcp.mrscraper.com/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"mrscraper": {
"url": "https://mcp.mrscraper.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"mrscraper": {
"type": "http",
"url": "https://mcp.mrscraper.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://mcp.mrscraper.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account mrscraper-com, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 495 ms (HTTP 401)
Declares OAuth sign-in, so your AI app can take you to log in
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (0.3.0) reached the registry 3 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
MrScraper MCP is the official MrScraper server for the Model Context Protocol. It connects AI assistants to page content and web search through two tools, plus an account check. Retrieve HTML, Markdown, or screenshots with scraperAPI, discover pages with webSearch, and check your plan and token usage with status.
Use the hosted server with OAuth sign-in, or run the open-source server locally with the @mrscraper/mcp npm package. See the MrScraper MCP documentation for setup instructions and client configurations.
The server exposes three tools:
scraperAPI webSearch status
| Option | Endpoint or command | Best for |
|---|---|---|
| Hosted | https://mcp.mrscraper.com/mcp | A managed Streamable HTTP connection |
| Local HTTP | TRANSPORT=http npx -y @mrscraper/mcp@latest | A self-managed HTTP service |
| Local stdio | npx -y @mrscraper/mcp@latest | MCP clients that launch a local process |
The hosted server signs you in through your browser with OAuth 2.1, so there is no key to copy. Self-hosted and stdio setups use a MrScraper API key from app.mrscraper.com/api-tokens, which the hosted server also still accepts.
ChatGPT and Codex connect to https://mcp.mrscraper.com/mcp/chatgpt, which uses the same sign-in and tools with fewer scraperAPI options (see ChatGPT and Codex endpoint).
Point your MCP client at https://mcp.mrscraper.com/mcp with no credential. The server answers with an OAuth challenge, your client opens a browser, and you approve the connection on app.mrscraper.com.
claude mcp add --transport http --scope user \
mrscraper https://mcp.mrscraper.com/mcp
For clients configured by file, omit the headers block entirely:
{
"mcpServers": { "mrscraper": { "type": "http", "url": "https://mcp.mrscraper.com/mcp" } } }
Use exactly this URL, including the /mcp path. It is the resource identifier access tokens are issued for, and a token minted for a different spelling of the address will be refused.
| Scope | Grants |
|---|---|
scrape:read | webSearch |
scrape:write | scraperAPI |
account:read | status |
A tool called without its scope is refused with 403 insufficient_scope, and your client will offer to grant the missing permission.
scraperAPI submits a scraping job to the backend with POST /, which requires scrape:write. Connections authorized before this scope was advertised need to authorize again and grant it; scrape:read alone does not grant write access.
Disconnect it later under Connected applications in your MrScraper account. Disconnecting revokes the refresh tokens immediately; an access token already issued stops working within the hour.
An API key still works as a bearer token, which is what self-hosted deployments and non-OAuth clients use:
{
"mcpServers": { "mrscraper": { "type": "http", "url": "https://mcp.mrscraper.com/mcp", "headers": { "Authorization": "Bearer YOUR_MRSCRAPER_API_KEY" } } } }
Use your client's environment-variable or secret-storage feature so the key stays out of project files. An API key carries your full account authority, so no scope is enforced against it.
export MRSCRAPER_API_KEY="YOUR_MRSCRAPER_API_KEY"
codex mcp add mrscraper \ --url https://mcp.mrscraper.com/mcp \ --bearer-token-env-var MRSCRAPER_API_KEY
Start Codex from an environment containing MRSCRAPER_API_KEY. Codex stores the environment-variable name in its MCP configuration.
claude mcp add \
--transport http \ --scope user \ --header "Authorization: Bearer YOUR_MRSCRAPER_API_KEY" \ mrscraper https://mcp.mrscraper.com/mcp
Claude Code also supports project and local scopes. Choose the scope that matches how broadly the connection should be available.
Connect MrScraper MCP to this agent. Detect the current MCP client and configure a Streamable HTTP server named mrscraper at https://mcp.mrscraper.com/mcp with no credential. The server uses OAuth 2.1, so the client will open a browser to sign in. If the client cannot do OAuth, fall back to a MrScraper API key from https://app.mrscraper.com/api-tokens stored through the client's environment-variable or secret-storage mechanism and sent as Authorization: Bearer <key>. Reload the MCP client when required, then list the tools and confirm that scraperAPI, webSearch, and status are the only available tools.
| Tool | Choose it when |
|---|---|
scraperAPI | You have a page URL and need HTML, Markdown, a screenshot, or a combination. |
webSearch | You have a search query and need ranked results with links. |
status | You need the account's plan, token usage, or remaining tokens. |
A discovery workflow is webSearch → scraperAPI. Both web tools advertise readOnlyHint: true, openWorldHint: true, and destructiveHint: false; status is read-only and not open-world. Authentication comes from the MCP connection; no tool takes an API token argument.
Only scraperAPI, webSearch, and status are registered. The other old tool names are removed.
| Previous call | Replacement |
|---|---|
fetch | scraperAPI; uses POST, SDK options, and automatic browser fallback by default. |
serp | webSearch; rename query_or_url to url and client_timeout to timeout. |
status | status for account usage; the domain, from, to, action, and api_token_name inputs are gone. |
scrape, rerun, results, result | Removed from this MCP server. |
super_mode becomes super. home_page now maps to warmStart, and token_cap=0 is accepted. Restart the server and reconnect the MCP client after updating so it refreshes tools/list.
The HTTP server adds a second endpoint, /mcp/chatgpt, for the MrScraper plugin in ChatGPT and Codex. It is described under ChatGPT and Codex endpoint. /mcp is unchanged.
webSearch now calls MrScraper's web search action on the Scraper API host and returns a ranked list of results. It gained num_results, and region must be a two-letter country code. The 0.2 options raw, format, language, page, and render_js are no longer supported: calls that still send them succeed, and the options are ignored. MRSCRAPER_SYNC_BASE_URL is gone; MRSCRAPER_FETCH_BASE_URL now covers both web tools.
The options and defaults of scraperAPI follow the Python SDK's scraper_api method. MCP tool names use camel case; their argument names use snake case.
scraperAPIPOST https://api.mrscraper.com/
Start with a known URL:
{
"url": "https://www.scrapethissite.com/pages/simple/" }
Request HTML, Markdown, and a screenshot together:
{
"url": "https://example.com", "html": true, "markdown": true, "screenshot": true, "super": true, "home_page": true, "geo_code": "ID", "timeout": 120 }
Omit browser_rendering or use null to let the service try without a browser and fall back to browser loading. true forces browser loading and false disables it. A screenshot always forces browser loading, even when browser_rendering=false. super selects real-device routing independently.
The JSON body contains url, maxRetries, and optional tokenCap. Page options are query parameters. For API keys, the request also includes the SDK-compatible token query parameter and Authorization/x-api-token headers. OAuth JWTs are sent only through Authorization.
| Input | Default | API mapping / purpose |
|---|---|---|
url | required | Body url; absolute HTTP(S) page URL. |
html | true | Query html; request HTML. |
markdown | false | Query markdown; request Markdown. |
timeout | 120 | Query timeout; integer from 1 to 300 seconds. Transport allows 30 additional seconds. |
geo_code | "US" | Query geoCode; proxy country code. |
proxy_country | omitted | Query proxyCountry; compatibility country field. |
browser_rendering | omitted | Query browserRendering; true/false, or omit/null for automatic fallback. |
super | false | Query super=true when enabled. |
use_proxy | true | Query useProxy=false when disabled. |
proxy | omitted | Query proxy; custom username:password@host:port proxy. |
wait_for_selector | omitted | Query waitForSelector; CSS selector to wait for. |
home_page | false | Query warmStart=true when enabled. |
screenshot | false | Query screenshot=true; also sets browserRendering=true. |
block_resources | false | Query blockResources=true; block images, CSS, and fonts. |
bypass_proxy | false | Query bypassProxy=true; proxy-bypass/resource-blocking option. |
cookie_jar | omitted | Query cookieJar; cookie configuration string. |
headers | omitted | Query headers; target request headers as an object or JSON string. |
max_retries | 3 | Body maxRetries; nonnegative integer, 0 disables retries. |
token_cap | omitted | Body tokenCap; nonnegative integer retry-token budget. |
stream | omitted | Query stream; response is buffered into the normal MCP envelope. |
discard_token_secret | "" | Optional x-discard-token-secret header. |
webSearchOnly the beginning is shown; read the rest in the repo