Skrapr is an MCP server that enables AI agents to autonomously navigate websites and extract structured information according to defined JSON schemas. It connects MCP clients like Claude Desktop, n8n, or LibreChat to live web destinations using Playwright browser automation combined with Azure OpenAI. Designed for developers, automation engineers, and data researchers, Skrapr bridges the gap between basic HTTP dump tools that miss dynamic JavaScript content and indiscriminate brute-force scraping utilities. Rather than loading entire websites blindly, the server employs Microsoft Semantic Kernel to operate an internal agent that plans navigation, traverses multi-page flows or subpages, and locates targeted elements. Through its dedicated scrape_with_schema tool, client agents provide a starting URL, an optional natural-language instruction, and the exact JSON schema required for extraction. Skrapr executes JavaScript locally or via remote Playwright hosts, gathers the necessary data fields, and returns cleanly structured JSON payloads directly to the AI agent.
Category: Browser & Web Automation
Tags: automation, data-extraction, headless browser, web scraping
bash docker run -p 80:80 -e AzureOpenAi__ApiKey=your-api-key -e AzureOpenAi__Endpoint=https://your-resource.openai.azure.com/ -e AzureOpenAi__DeploymentName=your-deployment-name -e PlaywrightMcp__IsLocal=true skrapr 2. Open your MCP client configuration file (such as Claude Desktop's claude_desktop_config.json). 3. Register Skrapr under the mcpServers object using the running SSE endpoint: json { "mcpServers": { "skrapr": { "url": "http://localhost:5000/sse" } } } 4. Alternatively, configure the .NET command directly or use a hosted cloud instance URL as described in the repository README at https://github.com/pierregillon/Skrapr.Part of MCP Servers
Skrapr is an Model Context Protocol server that combines browser automation via Playwright and Azure OpenAI to navigate websites and extract structured data based on user-provided JSON schemas.
Skrapr provides the scrape_with_schema tool. This tool accepts a target URL, a JSON schema detailing the desired data structure, and optional instructions guiding how the internal agent should navigate and scrape the page.
Skrapr works with any client supporting the Model Context Protocol, including Claude Desktop, n8n, and LibreChat, connecting via standard local commands or HTTP SSE endpoints.
If you configure Skrapr to run Playwright locally using the PlaywrightMcp__IsLocal setting, Node.js is required to run the underlying Playwright MCP package. Alternatively, you can point to a remote Playwright endpoint.