MrScraper MCP server for web fetching, extraction, Google SERPs, saved scraper reruns, results, and account status.
MrScraper MCP server demonstrates good definition quality with complete input schemas across all 7 tools, descriptive parameter documentation, and proper JSON Schema usage. All tools start with action verbs (fetch, scrape, serp, status, rerun, results, result) and have descriptions. Parameters are well-documented with types and constraints (enums, defaults, descriptions). Output schemas are documented via meta fields. However, some descriptions could be more concise for LLM optimization, and a few security/validation gaps exist around sensitive parameters and error handling guidance. The server properly exposes functionality as individual tools rather than combining multiple concerns, supporting good composition.
Retrieve a known page through Web Unblocker with optional browser rendering, JavaScript execution, and proxy routing.
Reproduce a saved scraper configuration on the same URL or a different URL with optional parameter overrides.
Retrieve one stored MrScraper result by ID, including optional HTML content.
Retrieve paginated stored MrScraper results with optional filtering, searching, and sorting.
Create an AI scraper to extract structured data using natural language prompts with general, listing, or map extraction modes.
Query Google search results with optional parsing or retrieve raw search result page HTML.
API token and credentials are likely passed server-side but tool descriptions do not explicitly state that secrets are NOT exposed as parameters. No explicit secret-injection pattern documentation visible in the public descriptions.
Error handling responses do not include recovery guidance. Tools return API error objects (status_code, error fields) but lack actionable next steps for LLMs. E.g., 'Invalid prompt' should suggest 'prompt is required for general and listing agents' as seen in code, but this guidance is not in output schema documentation.
scrape tool accepts 'prompt' parameter as required for general/listing modes but schema_prompt is optional object. Parameter relationship documentation exists in code (schema_prompt appended to prompt) but is not clearly stated in parameter descriptions for LLM clarity.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | A | 82 | 2025-06-18+ | v2 |
Report account identity, subscription usage, and optional domain request-outcome analytics.
rerun tool accepts either scraper_id alone OR scraper_id + urls (for bulk mode). The conditional logic (bulk=true requires urls array) is documented but mutually-exclusive parameter constraints are not explicitly stated in descriptions to prevent LLMs from passing invalid combinations.
Tool descriptions are moderately long (100-150+ chars) which is acceptable but at the upper end of LLM-optimization range (target 10-1024 chars, preferably 50-200 for clarity). Descriptions could be tightened to improve token efficiency in prompt context.