FineData
FineData web scraping MCP — JavaScript rendering, captcha solving, markdown for AI agents
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http finedata 'https://mcp.finedata.ai/mcp' --header 'Authorization: <Bearer fd_… API key. Optional: an OAuth 2.1 client discovers the flow from the 401 challenge instead of being asked for a key up front.>'
{
"mcpServers": {
"finedata": {
"type": "http",
"url": "https://mcp.finedata.ai/mcp",
"headers": {
"Authorization": "<Bearer fd_… API key. Optional: an OAuth 2.1 client discovers the flow from the 401 challenge instead of being asked for a key up front.>"
}
}
}
}
finedata-mcpclaude mcp add finedata -e 'FINEDATA_API_KEY=<your finedata_api_key>' -e 'FINEDATA_API_URL=https://api.finedata.ai' -- uvx finedata-mcp==0.3.1
{
"mcpServers": {
"finedata": {
"command": "uvx",
"args": [
"finedata-mcp==0.3.1"
],
"env": {
"FINEDATA_API_KEY": "<your finedata_api_key>",
"FINEDATA_API_URL": "https://api.finedata.ai"
}
}
}
}
Environment variables
FINEDATA_API_KEYrequired secret FineData API key (fd_…)FINEDATA_API_URLAPI base URL
@finedata/mcp-serverclaude mcp add finedata -e 'FINEDATA_API_KEY=<your finedata_api_key>' -- npx -y @finedata/mcp-server@0.3.1
{
"mcpServers": {
"finedata": {
"command": "npx",
"args": [
"-y",
"@finedata/mcp-server@0.3.1"
],
"env": {
"FINEDATA_API_KEY": "<your finedata_api_key>"
}
}
}
}
Environment variables
FINEDATA_API_KEYrequired secret FineData API key (fd_…)
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
FineData MCP Server
MCP (Model Context Protocol) server for FineData web scraping API.
Enables AI agents (Claude, Cursor, GPT, …) to fetch pages that need a full browser and return clean data:
- JavaScript rendering and browser actions
- Captcha solving
- Datacenter / ISP / residential / mobile proxies
- Markdown or JSON output (markdown by default)
- AI structured extraction
- Local stdio or remote Streamable HTTP (+ OAuth 2.1)
Version: 0.3.1
Modes
Start with a plain request. Stealth and proxy modes are available when a page
needs a full browser; they consume more tokens than a plain request. Exact
rates are in the documentation and via get_usage. Gateway may apply a domain
strategy that overrides the requested engine or proxy; trust tokens_used in
the response.
Installation
uvx (recommended)
curl -LsSf https://astral.sh/uv/install.sh | sh
FINEDATA_API_KEY=fd_xxx uvx finedata-mcp
pip
pip install finedata-mcp
FINEDATA_API_KEY=fd_xxx finedata-mcp
npx
npx -y @finedata/mcp-server
Cursor
~/.cursor/mcp.json (Windows: %USERPROFILE%\.cursor\mcp.json):
{
"mcpServers": {
"finedata": {
"command": "uvx",
"args": ["finedata-mcp"],
"env": {
"FINEDATA_API_KEY": "fd_your_api_key_here"
}
}
}
}
Cursor deeplink (after publishing): install via MCP directory / “Add to Cursor”.
Remote (Streamable HTTP)
{
"mcpServers": {
"finedata": {
"url": "https://mcp.finedata.ai/mcp",
"headers": {
"Authorization": "Bearer fd_your_api_key_here"
}
}
}
}
OAuth 2.1 (Claude.ai / ChatGPT connectors): register via AS at https://api.finedata.ai, consent in the cabinet, then use the access token as Bearer.
Environment
| Variable | Required | Default | Description |
|---|---|---|---|
FINEDATA_API_KEY | stdio: yes | — | API key |
FINEDATA_API_URL | no | https://api.finedata.ai | API base |
FINEDATA_TIMEOUT | no | 180 | HTTP client timeout (seconds) |
FINEDATA_MCP_HOST | HTTP | 0.0.0.0 | Bind host |
FINEDATA_MCP_PORT | HTTP | 8080 | Bind port |
FINEDATA_OAUTH_ISSUER | remote OAuth | — | AS URL (gateway) |
FINEDATA_MCP_RESOURCE_URL | remote OAuth | — | Public MCP URL |
FINEDATA_JWT_SECRET | remote OAuth | — | Verify aud=mcp JWTs |
Tools
| Tool | Purpose |
|---|---|
scrape_url | Sync scrape with GET, read-only (markdown default) |
send_http_request | Sync POST / PUT / PATCH / DELETE through the same pipeline |
scrape_async | Async job, GET (formats=['markdown'] default) |
get_job_status | Poll job (markdown, not raw HTML) |
cancel_job | Cancel job |
list_jobs | List jobs |
batch_scrape | Up to 100 URLs (string or {url,...} objects) |
get_batch_status | Batch progress |
get_usage | Period usage via api_tokens_used |
Notable parameters: use_antibot, proxy_country, proxy_sticky, proxy_profile_id, auto_retry, stealth modes, formats, only_main_content, extract_*.
Async/batch: no csv/xlsx formats (sync only).
HTTP transport
finedata-mcp --transport http --host 0.0.0.0 --port 8080
Health: GET /health. Protected resource metadata is served at the path-scoped
URL for the endpoint — GET /.well-known/oauth-protected-resource/mcp — because
FINEDATA_MCP_RESOURCE_URL carries the /mcp path. Clients normally find it
from the WWW-Authenticate header on a 401 rather than guessing.
Support
License
MIT
Frequently asked questions
What is FineData?
FineData web scraping MCP — JavaScript rendering, captcha solving, markdown for AI agents
How do I install FineData?
It runs as a remote server. In Claude Code: claude mcp add --transport http finedata 'https://mcp.finedata.ai/mcp' --header 'Authorization: <Bearer fd_… API key. Optional: an OAuth 2.1 client discovers the flow from the 401 challenge instead of being asked for a key up front.>'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does FineData need an API key?
Yes. It expects FINEDATA_API_KEY, Authorization, which you set in its configuration.
Is FineData open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains FineData?
It is published by quality-network. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.