# HasData Web Scraping

A remote MCP server fetches public pages through managed proxies and returns Markdown, text, HTML, or JSON. Use it when a site has no dedicated API.

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

## What it does

HasData Web Scraping gives an agent a remote MCP endpoint with one read-only page-fetching tool. It can pass requests through managed proxies, render JavaScript when needed, and return the result as Markdown, plain text, HTML, or JSON.

The service uses HTTP, while stdio clients can start it through `@hasdata/web-scraping-mcp`. Claude Code can add it with `claude mcp add`, using `HASDATA_API_KEY` for authentication. The API key is required for the connection, so requests will not work without it.

## Requirements
- Needs: Node.js (commands run via npx)
- Remote server: `https://mcp.hasdata.com/mcp?apis=web_scraping`
- Environment variables: `HASDATA_API_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

1. **Platform CLI**
```bash
claude mcp add web-scraping -e HASDATA_API_KEY=<HASDATA_API_KEY> -- npx -y @hasdata/web-scraping-mcp
```
Replace <…> with your own values

2. **Platform CLI: remote server**
```bash
claude mcp add --transport http hasdata-web-scraping 'https://mcp.hasdata.com/mcp?apis=web_scraping'
```

### Codex

1. **Platform CLI: remote server**
```bash
codex mcp add hasdata-web-scraping --url 'https://mcp.hasdata.com/mcp?apis=web_scraping'
```

2. **Platform CLI**
```bash
codex mcp add hasdata-web-scraping --env HASDATA_API_KEY=<HASDATA_API_KEY> -- npx -y @hasdata/web-scraping-mcp
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "hasdata-web-scraping": {
            "url": "https://mcp.hasdata.com/mcp?apis=web_scraping"
        }
    }
}
```
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "hasdata-web-scraping": {
            "command": "npx",
            "args": [
                "-y",
                "@hasdata/web-scraping-mcp"
            ],
            "env": {
                "HASDATA_API_KEY": "<HASDATA_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "hasdata-web-scraping": {
            "type": "http",
            "url": "https://mcp.hasdata.com/mcp?apis=web_scraping"
        }
    }
}
```
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "hasdata-web-scraping": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@hasdata/web-scraping-mcp"
            ],
            "env": {
                "HASDATA_API_KEY": "<HASDATA_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

1. **Platform CLI: remote server**
```bash
gemini mcp add -t http hasdata-web-scraping 'https://mcp.hasdata.com/mcp?apis=web_scraping'
```

2. **Platform CLI**
```bash
gemini mcp add -e HASDATA_API_KEY=<HASDATA_API_KEY> hasdata-web-scraping npx -y @hasdata/web-scraping-mcp
```
Replace <…> with your own values

## When to use it
- fetch a public web page
- return page content as Markdown or JSON
- read JavaScript-rendered sites
- work around a missing site API

## Example prompts
- Fetch the public page I named through HasData Web Scraping and return it as Markdown.
- Read this documentation page and collect its code blocks in the response.
- Load the site homepage and extract its headings and links as JSON.

## Similar
- [web-scraping](https://affpapa.org/en/nevibecode/skills/mindrally-web-scraping.md) — skill · 4500 installs
- [scrapy-web-scraping](https://affpapa.org/en/nevibecode/skills/scrapy-web-scraping.md) — skill · 2000 installs
- [HasData](https://affpapa.org/en/nevibecode/mcp/hasdata.md) — MCP server · ★ 21
- [HasData Google Search (SERP)](https://affpapa.org/en/nevibecode/mcp/hasdata-google-search-serp.md) — MCP server · ★ 17
- [universal-scraping-architect](https://affpapa.org/en/nevibecode/skills/universal-scraping-architect.md) — skill · 35 installs
- [web-access-claude-skill](https://affpapa.org/en/nevibecode/skills/web-access-claude-skill.md) — skill · 965 installs

---
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
