Metadata-Version: 2.4
Name: bypassapi-mcp
Version: 0.1.0
Summary: MCP server for BypassAPI — web scraping + Cloudflare/CAPTCHA bypass for AI agents
Project-URL: Homepage, https://bypassapi.com
Project-URL: Documentation, https://bypassapi.com/docs
Author: PESARES
License: MIT
Keywords: ai,bypass,captcha,cloudflare,firecrawl,llm,mcp,scraping
Requires-Python: >=3.10
Requires-Dist: httpx>=0.27.0
Requires-Dist: mcp>=1.2.0
Description-Content-Type: text/markdown

# BypassAPI MCP Server

Give your AI agent real-world web access. This [Model Context Protocol](https://modelcontextprotocol.io) server exposes [BypassAPI](https://bypassapi.com) so any MCP client — **Claude Desktop, Cursor, Windsurf, Cline, Zed** — can fetch any page (even behind **Cloudflare** or **CAPTCHAs**), get clean LLM-ready markdown, extract structured data, crawl sites, and map URLs.

Think Firecrawl, but it gets through the pages that block everyone else.

## Tools

| Tool | What it does |
|------|--------------|
| `scrape` | Fetch one page → clean markdown / text / html. Handles JS, Cloudflare, bot walls. |
| `extract` | Pull structured data from a page with a prompt (optional JSON schema). |
| `crawl` | Follow links from a start URL, up to N pages / depth. |
| `map_site` | List a site's URLs (sitemap-style), no content. |
| `batch` | Scrape up to 50 URLs in one call. |
| `account` | Check remaining credits + usage. |

## Get an API key

Sign up at **[bypassapi.com](https://bypassapi.com)** and copy your key (`psk_live_...`). New accounts include trial credits.

## Install & configure

The server runs via `uvx` (no manual install) or `pip`. Add the block below to your client's MCP config and put your key in `BYPASSAPI_KEY`.

### Claude Desktop
`~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):

```json
{
  "mcpServers": {
    "bypassapi": {
      "command": "uvx",
      "args": ["bypassapi-mcp"],
      "env": { "BYPASSAPI_KEY": "psk_live_your_key_here" }
    }
  }
}
```

### Cursor
`~/.cursor/mcp.json` (or Settings → MCP):

```json
{
  "mcpServers": {
    "bypassapi": {
      "command": "uvx",
      "args": ["bypassapi-mcp"],
      "env": { "BYPASSAPI_KEY": "psk_live_your_key_here" }
    }
  }
}
```

### Windsurf / Cline / Zed
Same shape — a `bypassapi` entry with `command: uvx`, `args: ["bypassapi-mcp"]`, and `BYPASSAPI_KEY` in `env`.

### pip instead of uvx
```bash
pip install bypassapi-mcp
```
then use `"command": "bypassapi-mcp"` (or `"command": "python", "args": ["-m", "bypassapi_mcp"]`) in the config above.

## Example prompts

Once connected, just ask your agent:

- *"Scrape the pricing page at example.com and summarize the tiers."*
- *"This site is behind Cloudflare — extract the product name, price, and stock status."* (set `solve_cf: true` if blocked)
- *"Crawl docs.example.com, 20 pages, and list every API endpoint you find."*
- *"Map competitor.com and tell me which URLs look like blog posts."*

## Configuration (env)

| Var | Default | Notes |
|-----|---------|-------|
| `BYPASSAPI_KEY` | — | **Required.** Your API key. |
| `BYPASSAPI_BASE` | `https://bypassapi.com` | Override for self-hosted / staging. |
| `BYPASSAPI_TIMEOUT` | `120` | Per-request timeout (seconds). |

## Notes

- Each call spends credits from your account (`scrape` cheapest, `extract`/`crawl` more). Check with the `account` tool.
- `use_proxy: true` routes through rotating residential proxies for rate-limited or geo-blocked sites.
- `solve_cf: true` forces Cloudflare-challenge solving (slower — use only when a page is blocked).

Built by [PESARES](https://bypassapi.com). MIT-licensed client; the API is a paid service.
