# PyScrappy

Gives your agent 22 scraping tools that return text, links, tables and metadata as Markdown or JSON.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 263
- Author: mldsveda
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/mldsveda/PyScrappy
- Updated: 2026-10-22
- HTML: https://affpapa.org/en/nevibecode/mcp/pyscrappy

## What it does

PyScrappy is a Python scraping library with an MCP server on top. The agent calls tools such as `scrape_url`, `scrape_wikipedia`, `scrape_stock`, `scrape_news` and `search_github`, and gets structured output back. Results convert to Markdown with `.to_markdown()`; `.to_json()` and `.to_dataframe()` are there too.

The server starts as `pyscrappy-mcp` and speaks stdio by default. Remote setups can use Streamable HTTP (`--http`) or SSE (`--sse`). JavaScript-heavy pages need the browser extra: `pip install 'pyscrappy[browser]'` plus `playwright install chromium`. Beating anti-bot filters takes the `stealth` extra with `curl_cffi`.

The MCP server needs Python 3.10 or newer. On 3.9 the scraping library still runs, the server does not. Configs for Claude and other clients pass `OMDB_API_KEY`, and some tools stay dark without it. There is also a built-in Ollama agent: `pyscrappy chat --model qwen2.5 "..."`, and the model has to support tool calling.

## Requirements
- Needs: Python and uv (commands run via uvx)
- Environment variables: `OMDB_API_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.
- Works with: Playwright

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add pyscrappy -e OMDB_API_KEY=<OMDB_API_KEY> -- uvx pyscrappy
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from pyscrappy <command>

### Codex

**Platform CLI**
```bash
codex mcp add pyscrappy --env OMDB_API_KEY=<OMDB_API_KEY> -- uvx pyscrappy
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from pyscrappy <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "pyscrappy": {
            "command": "uvx",
            "args": [
                "pyscrappy"
            ],
            "env": {
                "OMDB_API_KEY": "<OMDB_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from pyscrappy <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "pyscrappy": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "pyscrappy"
            ],
            "env": {
                "OMDB_API_KEY": "<OMDB_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from pyscrappy <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e OMDB_API_KEY=<OMDB_API_KEY> pyscrappy uvx pyscrappy
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from pyscrappy <command>

## When to use it
- pull text, links and tables off any page
- grab news headlines and hand them to the model
- fetch a stock quote by ticker
- search GitHub repositories by query
- render a JavaScript page through Playwright

## Example prompts
- Use pyscrappy to pull the headlines from bbc.com and summarize them
- Scrape the table on this page and save it as JSON
- Search GitHub for mcp server repositories

## Similar
- [Scrapling MCP Server](https://affpapa.org/en/nevibecode/mcp/scrapling-mcp-server.md) — MCP server · ★ 89433
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [AIHawk](https://affpapa.org/en/nevibecode/mcp/aihawk.md) — MCP server · ★ 32221
- [Skyvern](https://affpapa.org/en/nevibecode/mcp/skyvern.md) — MCP server · ★ 23263
- [SeleniumBase MCP](https://affpapa.org/en/nevibecode/mcp/seleniumbase-mcp.md) — MCP server · ★ 13169
- [apify-mcp-server](https://affpapa.org/en/nevibecode/mcp/apify-mcp-server.md) — MCP server · ★ 12927

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
