Scrapeless
Web access for AI agents: search, scrape, crawl, automate browsers, and extract AI responses.
What it can do
- Ai Scraper: Create an AI Scraper task for an explicit Scrapeless actor, then poll every 5 seconds until the answer is ready or the timeout is reached. Supports ChatGPT, Gemini, Perplexity, Copilot, Go
- Crawl Cancel: Cancel an in-progress crawl job by its id (the id returned by crawl_start). Returns the cancelled status.
- Crawl Result: Fetch the result of a crawl job by its id (the id returned by crawl_start). Polls the job status until it reaches a terminal state (completed / failed / cancelled) or the timeout is reac
What data it sees
Do you need an account
An API key from the service settings is required
Web access for AI agents: search, scrape, crawl, automate browsers, and extract AI responses.
How to connect
How to connect Scrapeless to Claude
The server address to paste into Claude settings:
https://scrapeless--scrapeless-mcp-server.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect Scrapeless to ChatGPT
The server address to paste into ChatGPT settings:
https://scrapeless--scrapeless-mcp-server.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect Scrapeless to Cursor
The server address to paste into Cursor settings:
https://scrapeless--scrapeless-mcp-server.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (25)
Raw names from tools/list. Only developers need these.
| ai_scraper | Create an AI Scraper task for an explicit Scrapeless actor, then poll every 5 seconds until the answer is ready or the timeout is reached. Supports ChatGPT, Gemini, Perplexity, Copilot, Google AI Mode, Google AI Overview, Grok, and Alexa. Defaults to a 3 minute timeout. The timeout can be set from 60 to 600 seconds. On timeout, returns the task_id and instructions for manually fetching the result. |
| crawl_cancel | Cancel an in-progress crawl job by its id (the id returned by crawl_start). Returns the cancelled status. |
| crawl_result | Fetch the result of a crawl job by its id (the id returned by crawl_start). Polls the job status until it reaches a terminal state (completed / failed / cancelled) or the timeout is reached. If the timeout is reached before the job finishes, the latest status is returned along with the job id so you can retry later. |
| crawl_start | Start an asynchronous crawl job. Crawls a website starting from a base URL, following links according to the provided options, and captures page content in various formats (markdown, html, links, screenshot, etc.). Returns a job id that can be used with crawl_result to fetch results and crawl_cancel to cancel the job. Only 'url' is required; all other parameters are optional. |
| google_search | Universal Information Search Engine.Retrieves any data information; Explanatory queries (why, how).Comparative analysis requests |
| google_trends | Get trending search data from Google Trends. Restrictions: Activated for queries about trends, popularity, or interest over time. Valid: Find the search interest for "AI" over the last year. Invalid: A general question like "What is AI?" (use google_search). |
| scrape_html | Scrape a URL and return its full HTML content. Restrictions: Activated for URLs that require JavaScript rendering or bot protection. Valid: Get HTML from a dynamic, JS-heavy single-page application. Invalid: Fetching a simple static page (use a standard HTTP client). |
| scrape_markdown | Scrape a URL and return its content as Markdown. Restrictions: Best for articles, blog posts, and other text-heavy pages. Valid: Scrape a news article to get its readable content. Invalid: Scrape a complex web application dashboard. |
| scrape_screenshot | Capture a high-quality screenshot of any webpage. Restrictions: Bypasses bot detection and CAPTCHAs using residential proxies. Valid: Get a screenshot of a price-checker page protected by Cloudflare. Invalid: Taking a screenshot of the local browser (use browser_screenshot) |
| browser_click | Click a specific element on the page. Restrictions: Requires a valid CSS selector for the target element. Valid: Click the button with selector "#submit-button". Invalid: Click "the login button" without providing a selector. |
| browser_close | Closes the current session by disconnecting the cloud browser. This will terminate the recording for the session. |
| browser_create | Create or reuse a cloud browser session using Scrapeless. Updates the active session. |
| browser_get_html | Get the full HTML of the current page. Restrictions: Returns the entire raw HTML source code. Valid: Get the HTML of the current page to parse its structure. Invalid: Get only the visible text (use "browser_get_text") |
| browser_get_text | Get all visible text from the current page. Restrictions: Extracts only text content, ignoring HTML tags. Valid: Get the text content of the current page for summarization. Invalid: Get the page's HTML structure (use "browser_get_html") |
| browser_go_back | Go back one step in browser history. Restrictions: Only works if a previous page exists in the session history. Valid: After navigating from page A to B, go back to A. Invalid: Attempting to go back on the first page of a session. |
| browser_go_forward | Go forward one step in browser history. Restrictions: Only works after a "go_back" action has been performed. Valid: After going back from page B to A, go forward to B. Invalid: Attempting to go forward without a preceding "go_back" action. |
| browser_goto | Navigate browser to a specified URL. Restrictions: Only for direct URL navigation, not for searches. Valid: Go to https://google.com. Invalid: Search for "cats" on Google (use google_search). |
| browser_press_key | Simulate a key press. Restrictions: Must specify a valid key name; optional target selector. Valid: Press Enter in #search. Invalid: Press a key without specifying the key name. |
| browser_screenshot | Capture a screenshot of the current page. Restrictions: Can capture either the full page or the visible viewport. Valid: Take a screenshot of the current browser view. Invalid: Capture a screenshot of a specific element (not supported). |
| browser_scroll | Scroll the current page to a specific position. Restrictions: Requires pixel coordinates for scrolling. Valid: Scroll to the bottom of the page (e.g., { x: 0, y: 10000 }). Invalid: Scroll to "the top" without specifying coordinates. |
| browser_scroll_to | Scroll a specific element into view. Restrictions: Requires a valid CSS selector for the target element. Valid: Scroll to the element "#footer". Invalid: Scroll to the bottom of the page (use "browser_scroll"). |
| browser_snapshot | Capture the complete structure of a webpage, including DOM and resources, for inspection and analysis. |
| browser_type | Type text into a specified input field. Restrictions: Requires a CSS selector for an input/textarea and the text to type. Valid: Type "hello world" into input "[name='q']". Invalid: Type "hello world" without specifying a target field. |
| browser_wait | Pause execution for a fixed duration. Restrictions: Requires a duration in milliseconds. Should be used sparingly. Valid: Wait for 2000 milliseconds. Invalid: Wait for a page to finish loading (use "browser_wait_for") |
| browser_wait_for | Wait for a specific page element to appear. Restrictions: Requires a valid CSS selector for the element to wait for. Valid: Wait for the element "#results" to become visible. Invalid: Wait for "the results to load" without a selector. |