Skip to main content

URL in. Clean data out.

Markdown, screenshots, metadata, Lighthouse audits and more from any URL — over HTTP or straight from your AI agent. Real Chrome renders every page, so JavaScript-heavy sites work.

  • 1,000 free credits every month
  • Cached results cost nothing
  • Processed in the EU
  • Works from your AI agent over MCP

200 OK

Request

curl -X POST https://urlpipe.dev/markdown \
  -H "Authorization: Bearer $URLPIPE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://anthropic.com", "sync": true}'

Response

# Anthropic

We're an AI safety company. We build
reliable, interpretable, and steerable
AI systems.

## Claude

Claude is our flagship AI assistant…

Endpoints

Eight kinds of data from any URL. One bearer token.

URLpipe is a web data API for the URL you already have: its Markdown, a screenshot, its metadata, an AI summary, keywords, a Lighthouse audit, the rendered HTML or its JavaScript console — each from one POST, or several at once from a single page visit.

For sites that serve a datacentre differently from a person, every endpoint also takes residential: true and fetches the page from a home broadband address. How that works.

/markdownNo model

The page's main content as clean Markdown, converted straight from the rendered page — no model, so the same page gives the same Markdown every time.

/screenshotNo model

The whole page as PNG, JPEG or WebP. Any viewport, retina, one element, dark mode — and a link you can drop into an <img>.

/metaNo model

Title, description, share image, icons, authors, dates and feeds — the same keys for every page, reconciled from Open Graph, Twitter cards, JSON-LD and the page itself.

/htmlNo model

The rendered HTML, after JavaScript has run and redirects have been followed — not the empty shell curl returns.

/lighthouseNo model

A real Google Lighthouse audit, mobile or desktop: the four category scores and the Core Web Vitals lab metrics.

/consoleNo model

The JavaScript errors, warnings and uncaught exceptions a page throws while it loads — on sites you don't control.

/summarizeAI

A short, faithful summary of the page's main content, in Markdown.

/keywordsAI

The 5–15 keywords and phrases that describe the page best, ranked, in the page's own language.

/scrape

Several answers from one page visit — a screenshot, the metadata and the Markdown for a link preview, say. Each operation costs what it always does; the page, the slow part, loads once.

How /scrape works

For AI agents

Give your agent a browser.

Most agents fetch a page with a plain HTTP request, so on a site built with JavaScript they read an empty shell and guess the rest. Connect URLpipe as an MCP server and the agent reads what a visitor sees — as Markdown, a screenshot or metadata — on its own.

  • A remote server: nothing to install, one URL and a bearer token.
  • The same tools, arguments and credits as the HTTP API.
  • Tokens that can be read-only, limited to one project, or set to expire.

Tools your agent gets

  • fetch_markdown
  • capture_screenshot
  • extract_metadata
  • fetch_html
  • run_lighthouse_audit
  • capture_console_errors
  • summarize_page
  • extract_keywords
  • scrape_url
  • get_result

Your first request in five minutes.

  1. 01

    Sign up

    Free, no card. Confirm your email address and your key is live.

  2. 02

    Create a project

    Each project has its own API key and request history — one per app or environment. The key is shown once; copy it.

  3. 03

    POST a URL

    Any endpoint, one bearer token. You'll have your first result in about five minutes.

Follow the quickstart

Pricing

Start free. Upgrade when it's working.

1,000 free credits a month, no card. Paid plans never stop at the limit — past it, usage is $1.50 per 1,000 credits.

Free

For trying it out and for side projects.

$0/ month

No credit card

  • 1,000 credits / month
  • 1,000 page fetches, or 58 /summarize — any mix
  • 1 request at a time
  • One user
  • Requests pause when the credits run out
  • Cache hits are free and never spend credits
Start free

Starter

For the first real workload you put in front of users.

$19/ month
  • 20,000 credits / month
  • 20,000 page fetches, or 1,176 /summarize — any mix
  • 3 requests in parallel
  • Your whole team, as many members as you need
  • Never cut off: extra credits at $1.50 per 1,000, no cap
  • Cache hits are free and never spend credits

Pro

Most popular

For production apps pulling web data on a schedule.

$49/ month
  • 55,000 credits / month
  • 55,000 page fetches, or 3,235 /summarize — any mix
  • 8 requests in parallel
  • Your whole team, as many members as you need
  • Never cut off: extra credits at $1.50 per 1,000, no cap
  • Cache hits are free and never spend credits

Scale

For high-volume pipelines and agencies.

$149/ month
  • 175,000 credits / month
  • 175,000 page fetches, or 10,294 /summarize — any mix
  • 20 requests in parallel
  • Your whole team, as many members as you need
  • Never cut off: extra credits at $1.50 per 1,000, no cap
  • Cache hits are free and never spend credits

Picking a paid plan takes you through sign-up first, then straight to Stripe's checkout. Cancel any time.

Prices in US dollars, before VAT. EU customers see it added at checkout; a business with a VAT number in an EU country other than Spain pays none.

Need more than Scale?

Larger volumes run on a contract we size with you, invoiced rather than charged to a card. Tell us what you're planning and we'll work it out.

Email contact@urlpipe.dev

See full pricing, annual rates and FAQ

FAQ

Common questions

Do I need to install anything on my site?
No. URLpipe calls your public URLs from our servers. No scripts, no DNS records, no server access required.
Can I try it without signing up?
Yes. There are free, no-signup tools at /tools for every kind of data the API returns — paste a URL and see the result in your browser. It's the same API underneath: the example pages are unlimited, and your own URLs are limited to a couple of runs every ten minutes. When you're ready to build, the free plan's API key takes a minute.
Can my AI agent use it?
Yes — URLpipe is also a remote MCP server. Point Claude, Cursor or any MCP client at https://urlpipe.dev/mcp with a bearer token and the agent can read pages as Markdown, take screenshots, pull metadata and run audits on its own, rendering JavaScript as it goes. There is nothing to install, and the tools cost the same credits as the HTTP endpoints.
Is there an SDK?
Yes — official clients for Python (pip install urlpipe), JavaScript and TypeScript (npm install @urlpipe/sdk), Ruby (gem install urlpipe) and Go, with retries that never bill twice, typed errors and webhook verification. There are also packages for LangChain and LlamaIndex, an n8n node and a command-line tool (brew install urlpipe/tap/urlpipe). None of them is required: every endpoint is one POST with a bearer token, so curl or any HTTP library works just as well. The client libraries page in the docs has each one.
Which endpoints use AI?
Two: /summarize and /keywords. The rest don't — /markdown converts the rendered page itself and /meta reads what the page declares, which is why each costs the same as a page fetch and gives the same answer every time. One credit allowance covers all of them, so you spend it on whatever mix your workload needs.
Can I use URLpipe to feed web pages to an LLM?
Yes. /markdown returns the page's main content as clean Markdown, with the navigation and boilerplate left behind — the format LLMs and RAG pipelines work best with. Pages are rendered in real Chrome first, so JavaScript-heavy sites produce complete content too, and page_options can remove cookie banners and ads before the conversion.
Can I get several things from one page at once?
Yes — /scrape runs any mix of the operations off a single page visit: a screenshot, the metadata and the Markdown for a link preview, say. You pay for each operation as usual, and the page is only loaded once, which is the slow part.
How is usage priced?
In credits. Every successful, uncached call spends credits according to what it costs to run: /console, /html, /markdown, /meta and /screenshot cost 1 credit each; /lighthouse 2; /keywords 15; /summarize 17. Plans are a monthly credit allowance you spend on whatever mix you like, and there's a calculator on the pricing page. The one extra is a residential exit (25 credits per page visit), which is off unless you ask for it.
Some sites serve a scraper less than they serve a browser. Can URLpipe get the real page?
Usually, yes. Every request is a real Chrome, which is enough for most of what stops a plain HTTP fetch, and we work through bot checks and retry before you hear about them — a check we can't clear costs you nothing. When a site goes further and reads the address the request came from, add residential: true and we fetch the page from a home broadband line instead of a datacentre. It works on every endpoint, costs 25 credits per page visit on top of the operation, and is off by default.
What happens when I run out of credits?
On a paid plan, nothing stops: calls keep being served, uncapped, and every credit past the allowance costs $1.50 per 1,000 credits, billed on an invoice of its own once the month closes. On the Free plan, which has no card to bill the extra to, the endpoint returns HTTP 429 with a JSON body giving your limit, what you've used, how many credits the refused request needed, and when the allowance resets (the 1st of next month, UTC). Every response carries X-Quota-Cost, X-Quota-Remaining and X-Quota-Overage, and the dashboard itemises the month by operation.
Do repeated requests spend credits?
No. When you request the same URL and operation again within your freshness window, we serve the cached result — instantly, and without spending a credit. A repeat that arrives while the first request is still running waits for it, free as well. You control the window with the max_age parameter (default 7 days); set max_age=0 to always fetch fresh.
Can I tag requests by customer or job?
Yes. Send labels — up to 16 of your own ids, like a client or a job — with any request. They come back with the result and the webhook, and the dashboard shows usage broken down by label, which is what an agency or a multi-tenant app needs to bill its own customers.
Can my team use the same account?
Yes — every paid plan takes as many team members as you need. Invite them by email; everyone shares the projects, the API keys and the monthly credits, and admins manage billing. One login can belong to several organizations too, one per client or company, each billed on its own.
What does async mode do?
Async is the default. URLpipe accepts the request immediately, hands you a token, and processes it in the background. Collect the result whichever way suits you: give us a webhook URL and we POST it to you — signed, if you turn signing on, and retried if your endpoint is down — or fetch it with GET /result/:token when you're ready. Send sync: true when you'd rather wait for the result in the response.
Can I run requests in parallel?
Yes — each plan sets how many run at once, alongside its monthly credits. The free plan runs one at a time, and the paid plans raise it to 3, 8 and 20. Past that we size it with you. A crawl of 5,000 pages costs the same credits however fast you run it, so running several at once is the difference between minutes and hours. Every response carries X-Concurrency-Limit, so a worker pool can size itself from the plan. Go over and you get HTTP 429 with error "concurrency_limit" — nothing is spent, and the request goes through as soon as one of yours finishes.
Can I keep everything in the EU?
Yes. Pages are fetched, rendered and stored on our own servers in Europe on every plan — that already covers /html, /markdown, /meta, /screenshot, /console and /lighthouse, which never call an AI model. The one step that can sit outside Europe is the model behind /keywords and /summarize, and an organization admin can switch that to an EU-only endpoint from the dashboard. No surcharge, no change to your integration. The data residency docs have the specifics.
Where is my data stored?
Account data, request history and stored results live on our own infrastructure in Europe. Stored results are private to your organization and kept for 30 days. We don't sell or share any of it. See the privacy policy for the full picture.

Get an API key in under a minute.

Free plan, no card. Confirm your email and your key is live — you'll be making real requests in minutes.