PyScrappy logo

PyScrappy

Exposes web scrapers as MCP tools that return structured data from general and site-specific URLs.

Install PyScrappy

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "pyscrappy": {
      "command": "uvx",
      "args": [
        "pyscrappy"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command installed and started the server, which then stopped for configuration (such as an API key) that our sandbox does not have — expected for servers that connect to your account.

uvx pyscrappy

Process exited before answering initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked Today.

Overview

The PyScrappy MCP server connects AI agents to generic and site-specific web scrapers through MCP. It can fetch pages, extract text, links, images, tables, and metadata, and query sources such as Wikipedia, news, GitHub, stocks, and e-commerce sites. Install the MCP extra to run it over stdio for local clients, or use Streamable HTTP and legacy SSE for remote deployments. Reach for it when an agent needs structured web data rather than raw page content.

Use cases

  • Extract structured content from a webpage
  • Collect headlines from an RSS or news source
  • Look up stock, product, movie, or reference data
  • Search GitHub from an AI coding workflow
  • Crawl multiple URLs or a site sitemap

Key features

  • Generic URL scraping with structured output
  • 20+ MCP tools for web and site-specific extraction
  • Stdio, Streamable HTTP, and legacy SSE transports
  • JavaScript rendering through optional Playwright support
  • Concurrent scraping and sitemap crawling
  • Proxy, retry, rate-limit, and selector support

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 41d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 13d ago via OSV.dev · pyscrappy (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars263Stargazers on the source repository.
Last commit1d agoMost recent push to the default branch.
Install checkRunsOur sandbox started it; it then asked for an API key or config.
Directory activity1 viewsConfig copies, upvotes, and views on AllMCPs.

How PyScrappy works

What the PyScrappy MCP server does

The PyScrappy MCP server exposes PyScrappy's web-scraping library as callable tools for AI agents. Its generic scraper accepts a URL and can return extracted text, links, images, tables, and page metadata. Site-specific tools cover sources and use cases including Wikipedia, Yahoo Finance stock data, RSS and Atom news, GitHub, Hacker News, YouTube, books, weather, cryptocurrency, currency, dictionaries, image search, jobs, Amazon, Newegg, IKEA, SoundCloud, IMDB, Zomato, and Uber Eats.

The package also includes a local chat mode for Ollama models. That mode lets a tool-calling model use the same scraper set without an MCP host, although it is separate from the MCP transport itself.

How it works

An MCP client sends a tool call to the local PyScrappy process. PyScrappy fetches the target site, applies the selected scraper, and returns structured data that the agent can use. The server exposes more than 20 tools, including scrape_url, scrape_wikipedia, scrape_stock, scrape_news, and search_github. The live tool inventory can be requested with list_available_scrapers.

The default transport is stdio, which suits local desktop and coding clients. Streamable HTTP is available with --http, while legacy SSE can be selected with --sse. The underlying library also supports JavaScript rendering through Playwright, CSS selectors, concurrent scraping, sitemap crawling, retries, per-domain rate limits, proxies, external scraping APIs, and optional TLS-fingerprint impersonation.

Setup and configuration

Install the MCP dependencies with:

Terminal
pip install 'pyscrappy[mcp]'

The MCP extra requires Python 3.10 or newer and installs the standalone fastmcp dependency. Start the local server with:

sh
pyscrappy-mcp

The same stdio server can be launched with python -m pyscrappy.mcp. For remote transports, use pyscrappy-mcp --http or pyscrappy-mcp --sse.

Claude Code can register the command with claude mcp add pyscrappy pyscrappy-mcp. Claude Desktop can launch pyscrappy-mcp from its MCP configuration. If the desktop application cannot find the command, configure its absolute path because it may not inherit the shell's PATH.

Tools and capabilities

The PyScrappy MCP server includes tools for general extraction and for supported websites and data categories. Results are intended for model use and can be represented by the library as Markdown or JSON; the core package also supports DataFrame output.

Useful capabilities include:

  • Extracting page content and metadata from arbitrary URLs.
  • Looking up stocks, news, GitHub content, movies, products, media, jobs, and reference data.
  • Scraping multiple URLs concurrently or crawling a site's sitemap.
  • Handling JavaScript-rendered pages when the browser extra is installed.
  • Passing custom CSS selectors for targeted extraction.

Limitations and notes

The MCP server is unavailable on Python 3.9 even though the core scraping library supports Python 3.9. Some sites may require a proxy or a scraping API, and Instagram, Twitter, and Spotify are described as blocked unless a proxy is used. The lookup_movie tool requires a free OMDb API key supplied as OMDB_API_KEY in the MCP client's environment configuration. Tool selection in the Ollama chat mode depends on whether the selected model supports tool calling and how well it chooses among the available scrapers.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about PyScrappy

PyScrappy is an MCP server that connects AI agents to generic and site-specific web scrapers. Its main tools include scrape_url, scrape_wikipedia, scrape_stock, scrape_news, and search_github, returning structured web data such as text, links, images, tables, and metadata for agent workflows.

Install it with `pip install 'pyscrappy[mcp]'`. Python 3.10 or newer is required for the MCP server. Start the default local stdio process with `pyscrappy-mcp`, or run `python -m pyscrappy.mcp`.

Add `pyscrappy-mcp` as the server command under `mcpServers` in Claude Desktop's configuration, then restart the application. If Claude Desktop cannot find the command, use its absolute filesystem path because the app may not inherit your shell PATH.

Yes. Install the `pyscrappy[mcp]` extra and configure Cursor to launch the stdio command `pyscrappy-mcp`.

Yes. The `lookup_movie` tool requires a free OMDb API key. Provide it to the MCP server as `OMDB_API_KEY` in the client configuration environment.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewPyScrappy AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/pyscrappy?style=directory)](https://allmcps.com/mcp/pyscrappy)
HTML Embed
<a href="https://allmcps.com/mcp/pyscrappy"><img src="https://allmcps.com/api/badge/pyscrappy?style=directory" alt="PyScrappy on AllMCPs" /></a>