Mcp Server Scrappey — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Mcp Server Scrappey (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server for interacting with Scrappey.com's browser-backed web automation and data-extraction capabilities. Try it out directly at smithery.ai/server/@pim97/mcp-server-scrappey.
This MCP server provides a bridge between AI models and Scrappey's web automation platform, allowing you to:
This server is intended for legitimate development use — application and integration testing, monitoring your own services, and collecting data you are authorized to access. See Responsible Use.
npm install
npm run buildSCRAPPEY_API_KEY=your_api_key_hereAdd to your claude_desktop_config.json:
{
"mcpServers": {
"scrappey": {
"command": "node",
"args": ["path/to/dist/scrappey-mcp.js"],
"env": {
"SCRAPPEY_API_KEY": "your_api_key_here"
}
}
}
}Cursor supports MCP servers through its settings. Configure it in one of these ways:
Option 1: Via Cursor Settings UI
scrappeynode["C:\\Users\\pim_d\\Desktop\\scrappey.com\\mcp-smith\\mcp-server-scrappey\\dist\\scrappey-mcp.js"]SCRAPPEY_API_KEY with your API keyOption 2: Via Settings JSON
{
"mcp.servers": {
"scrappey": {
"command": "node",
"args": ["C:\\Users\\pim_d\\Desktop\\scrappey.com\\mcp-smith\\mcp-server-scrappey\\dist\\scrappey-mcp.js"],
"env": {
"SCRAPPEY_API_KEY": "your_api_key_here"
}
}
}
}Note: Adjust the path to dist/scrappey-mcp.js based on where you installed the MCP server.
After configuration, restart Cursor to load the MCP server. You should see Scrappey tools available in the AI chat interface.
scrappey_create_session)Creates a new browser session that persists cookies and other state.
{
"proxy": "http://user:pass@ip:port",
"proxyCountry": "UnitedStates",
"premiumProxy": true,
"mobileProxy": false,
"browser": [{"name": "firefox", "minVersion": 120, "maxVersion": 130}],
"userAgent": "custom-user-agent"
}scrappey_destroy_session)Properly closes a browser session to free resources.
{
"session": "session_id_here"
}scrappey_list_sessions)List all active sessions for the current user.
{}Response:
{
"sessions": [{"session": "abc123", "lastAccessed": 1234567890}],
"open": 1,
"limit": 100
}scrappey_session_active)Check if a specific session is currently active.
{
"session": "session_id_here"
}scrappey_request)Send browser-backed HTTP requests, with automatic handling of JavaScript challenge pages.
{
"cmd": "request.get",
"url": "https://example.com",
"session": "session_id_here",
"postData": {"key": "value"},
"customHeaders": {"User-Agent": "custom-agent"},
"cookies": "session=abc123",
"proxyCountry": "Germany",
"premiumProxy": true,
"cloudflareBypass": true,
"datadomeBypass": true,
"automaticallySolveCaptchas": true,
"alwaysLoad": ["recaptcha", "hcaptcha"],
"screenshot": true,
"cssSelector": ".product-title",
"innerText": true,
"includeLinks": true,
"includeImages": true,
"interceptFetchRequest": "https://api.example.com/data",
"abortOnDetection": ["analytics.com", "tracking.js"],
"whitelistedDomains": ["example.com"],
"blockCookieBanners": true
}scrappey_browser_action)Execute browser automation actions.
{
"session": "session_id_here",
"url": "https://example.com",
"cmd": "request.get",
"browserActions": [
{"type": "wait_for_selector", "cssSelector": "#login-form"},
{"type": "type", "cssSelector": "#username", "text": "myuser"},
{"type": "type", "cssSelector": "#password", "text": "mypassword"},
{"type": "solve_captcha", "captcha": "turnstile"},
{"type": "click", "cssSelector": "#submit", "waitForSelector": ".dashboard"},
{"type": "execute_js", "code": "document.querySelector('.user-data').innerText"}
],
"mouseMovements": true
}#### Supported Browser Action Types:
| Action | Description |
|---|---|
click | Click on an element |
type | Type text into an input field |
goto | Navigate to a URL |
wait | Wait for specified milliseconds |
wait_for_selector | Wait for an element to appear |
wait_for_function | Wait for JavaScript condition to be true |
wait_for_load_state | Wait for page load state (domcontentloaded, networkidle, load) |
wait_for_cookie | Wait for a cookie to be set |
execute_js | Execute JavaScript code |
scroll | Scroll to element or page bottom |
hover | Hover over an element |
keyboard | Press keyboard keys (enter, tab, etc.) |
dropdown | Select option from dropdown |
switch_iframe | Switch to an iframe |
set_viewport | Change browser viewport size |
if | Conditional action execution |
while | Loop actions while condition is true |
solve_captcha | Solve various captcha types |
remove_iframes | Remove all iframes from page |
#### Supported Interactive Challenge Types:
turnstile - Cloudflare Turnstilerecaptcha / recaptchav2 / recaptchav3 - Google reCAPTCHAhcaptcha / hcaptcha_inside / hcaptcha_enterprise_inside - hCaptchafuncaptcha - FunCaptcha/Arkose Labsperimeterx - PerimeterXmtcaptcha - MTCaptchacustom - Custom image captchascrappey_screenshot)Take a screenshot of a webpage.
{
"url": "https://example.com",
"session": "optional_session_id",
"screenshotWidth": 1920,
"screenshotHeight": 1080,
"fullPage": true,
"browserActions": [
{"type": "wait", "wait": 2000}
],
"premiumProxy": true
}Many sites serve JavaScript challenge pages before returning content. Scrappey renders these in a real browser so your automated requests receive the final page. The server is compatible with challenge pages from common bot-management systems:
Enable handling for a specific system per request:
{
"cloudflareBypass": true,
"datadomeBypass": true,
"kasadaBypass": true
}The option keys above (cloudflareBypass, etc.) are Scrappey API field names and are kept as-is for compatibility.{
"proxy": "http://user:pass@ip:port",
"proxyCountry": "UnitedStates",
"premiumProxy": true,
"mobileProxy": true,
"noProxy": false
}Supported Countries: UnitedStates, UnitedKingdom, Germany, France, and many more.
The server provides detailed error information:
| Code | Description |
|---|---|
| CODE-0001 | Server capacity full, try again |
| CODE-0002 | Cloudflare blocked |
| CODE-0007 | Turnstile/Proxy error |
| CODE-0010 | Datadome proxy blocked |
| CODE-0024 | Proxy timeout |
| CODE-0029 | Too many sessions open |
| CODE-0032 | Turnstile captcha failed |
{"name": "scrappey_create_session"}{
"name": "scrappey_browser_action",
"session": "returned_session_id",
"url": "https://example.com/login",
"cmd": "request.get",
"browserActions": [
{"type": "type", "cssSelector": "#username", "text": "myuser"},
{"type": "type", "cssSelector": "#password", "text": "mypass"},
{"type": "click", "cssSelector": "#login-btn", "waitForSelector": ".dashboard"}
]
}{
"name": "scrappey_request",
"cmd": "request.get",
"url": "https://example.com/data",
"session": "returned_session_id",
"cssSelector": ".product-list"
}{
"name": "scrappey_destroy_session",
"session": "returned_session_id"
}This server is a development tool for browser-based automation and data extraction. Use it only for lawful, authorized purposes, such as:
When accessing third-party sites, follow each site's terms of service, robots directives, and rate limits, respect personal data and copyright, and comply with all applicable laws. You are responsible for how you use this server and your Scrappey account.
# Build
npm run build
# Deploy via Smithery CLI
npx @anthropic/smithery-cli deploydocker build -t scrappey-mcp .
docker run -e SCRAPPEY_API_KEY=your_key scrappey-mcpMIT License
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.