MCP for agents
Use the Live Web Data API as a tool in Claude, Cursor, VS Code and any other MCP client — with one URL and your existing API key.
What is MCP
The Model Context Protocol (MCP) is an open standard that lets AI agents discover and call external tools. Our MCP server exposes the Contents API as two tools, so an agent can read any public web page on its own.
Server & auth
| Value | |
|---|---|
| Server URL | https://mcpscraper.net/mcp |
| Transport | Streamable HTTP (stateless): JSON-RPC over POST; GET and DELETE answer 405 |
| Auth | Authorization: Bearer <api_key> |
| Keys | Same keys as the REST API — create one under API keys |
Missing or invalid keys are rejected with HTTP 401 (suspended accounts: 403, "API access for this account is suspended. Contact support.") before any tool runs.
Client setup
Replace YOUR_KEY with your API key. In the dashboard, the Integrations page fills in your key for you.
Run this in your terminal. The server is then available in every Claude Code session for this project.
claude mcp add --transport http live-web-data https://livewebdata.com/mcp \
--header "Authorization: Bearer YOUR_KEY"Add --scope user to make it available in all projects. Check with claude mcp list.
get_page_contents
Fetch a public web page live and return its main content as clean Markdown, plain text or HTML. Read-only, idempotent. Single URL per call.
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string (http/https, at most 8,192 characters) | required | The public URL to fetch. |
country | ISO-3166 alpha-2 | "us" | Fetch the page as seen from this country, e.g. 'de', 'gb', 'us'. |
format | "markdown" | "text" | "html" | "markdown" | Output format. Prefer markdown. The page HTML is fetched and returned only for "html". |
max_characters | integer 500–100000 | 8000 | Maximum characters of content to return. Smaller than the REST API's default (text.maxCharacters, 100,000) because the result goes into the agent's context; raise it when the content is cut. |
verbosity | "compact" | "full" | "compact" | compact = main content only, full = whole page body. |
The result is one text item with a short header, followed by the content. The full REST-style JSON is also returned as structuredContent (with results[].html only for format: "html").
# Example article
Source: https://example.com/article · country: us · live · credits used: 1 · credits left: 8,411
# Example article
Main content as clean Markdown…get_account_status
Check the remaining credits, plan and rate limit for the connected account. Agents should call it before large batches. No parameters, free. Returns the same numbers as GET /v1/account.
Plan: Starter · Credits left: 8,412 · Rate limit: 2 URL/s (burst 4) · Status: activeErrors
Errors are returned with isError: true and one actionable sentence the agent can follow. When nothing was charged, the message ends with “No credits were charged.”
| Case | Message to the agent |
|---|---|
| 451 restricted target | This website is restricted and cannot be retrieved. Do not retry; use another source. |
CRAWL_NOT_RENDERED | The page has no usable text: it needs JavaScript rendering, or shows no text even when rendered. Try another source or a different URL for the same information. |
CRAWL_NOT_FOUND | Page not found (404/410). |
SOURCE_NOT_AVAILABLE | The website refused this request. Retry once with a different country, otherwise use another source. |
SOURCE_BLOCKED | Access denied by the website. Retry later or with a different country, otherwise use another source. |
CRAWL_LIVECRAWL_TIMEOUT | The page timed out. Retry once with a longer timeout, otherwise use another source. |
BROWSER_UNAVAILABLE | Browser rendering is temporarily unavailable. Retry in a few minutes, otherwise use another source. |
RATE_LIMITED | The rendering limit for the user's plan is reached. Do not retry rendering now; use another source. |
| 402 insufficient credits | The account is out of credits. Tell the user to top up at …/dashboard/billing. |
| 429 rate limited | Rate limit reached. Wait N seconds before retrying. |
| 401 / 403 | The API key is invalid or suspended. Tell the user to check their key at …/dashboard/keys. |
| Still fetching after 5 minutes | The page did not finish loading within 5 minutes, and the fetch may still be charged. Use another source. |
Credits
MCP calls are billed exactly like REST calls: 1 credit per successful page, failed requests (including access denied by the site) are free. They appear in Usage with channel mcp. See Credits.