Skip to main content

Confirm

Are you sure?

Integrations

URLpipe in Claude Code

Let Claude Code read the docs page it needs, and look at the deploy it just shipped.

By · Last updated: September 2026

TL;DR

Add URLpipe to Claude Code with claude mcp add --transport http urlpipe https://urlpipe.dev/mcp --header "Authorization: Bearer YOUR_TOKEN". Claude Code then has fourteen tools to read any page as Markdown, screenshot it and capture its console errors. Check it with claude mcp list, or /mcp inside a session.

Free plan, no credit card. 1,000 credits a month.

Why

What Claude Code gets

Coding agents spend a lot of time on pages: a library's docs, a changelog, an API reference that is a single-page app, the preview deploy of the branch they just pushed. URLpipe gives Claude Code the rendered page as Markdown, a screenshot it can look at, and the page's JavaScript errors — console.error, console.warn, uncaught exceptions and unhandled rejections.

Setup

1. Create an organization token

MCP uses its own credential, not a project API key: an organization token, created under Organization → MCP access in the dashboard. An agent works across projects, and a project key names only one. The token is shown once — copy it when you create it.

Choose Fetch pages and read results for an agent that works normally, or Read past results only for one that must not spend credits (more on that below). The account's email address must be confirmed before the token works; until then the server answers 403 with email_unverified.

Setup

2. Add the server

Terminal
claude mcp add --transport http urlpipe https://urlpipe.dev/mcp \
  --scope user \
  --header "Authorization: Bearer YOUR_TOKEN"

--scope user makes it available in every project, stored in ~/.claude.json. Leave it out for the default local scope — this project only, also in ~/.claude.json. Use --scope project to write a .mcp.json at the repository root that your team shares; then keep the token out of it with an environment variable, which Claude Code expands in url and headers:

.mcp.json
{
  "mcpServers": {
    "urlpipe": {
      "type": "http",
      "url": "https://urlpipe.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${URLPIPE_TOKEN}"
      }
    }
  }
}

Each teammate exports URLPIPE_TOKEN with their own token, and Claude Code asks once to approve a project-scoped server.

Check it connected

claude mcp list shows urlpipe with ✔ Connected; claude mcp get urlpipe shows its details. Inside a session, /mcp lists it with its tools. ✘ Failed to connect comes with the HTTP status — a 401 means the header is wrong.

Try it

3. A first prompt to try

Prompt for Claude Code
Use urlpipe with sync: true: take a screenshot of https://my-branch.preview.example.com at a
390px viewport, capture its console errors, and tell me whether anything on the page looks
broken on mobile. Then read the Markdown of the page and check the headings match
src/pages/index.tsx.

Point it at a deployed URL — a preview deploy, staging, production. URLpipe fetches from the internet, so localhost and private addresses are refused. For your own dev server, use a browser tool that runs on your machine.

The agent starts with list_projects, because every fetching tool takes a project_id. Async is the default, as over HTTP: without sync: true a tool returns a token and the agent collects the result with get_result. Most agents work this out from the tool descriptions; saying "use sync: true" in the prompt saves a round trip.

Tokens

Keep the token safe and the spend bounded

  • A read-only token cannot spend. Created with Read past results only, it can list projects, read usage and retrieve results already paid for, and nothing else. Give it to an agent that should only look things up.
  • Narrow it. A token can be limited to one project, or given an expiry date. Deleting it revokes it at once.
  • Keep it out of version control. Put it in an environment variable or the client's secret prompt rather than in a config file you commit.
  • Same credits as the API. fetch_markdown costs 1 credit, summarize_page 17; a cached result is free. get_usage shows what is left. See pricing.

Troubleshooting

If it doesn't connect

  • 401 — "A bearer token is required" or "not valid". The header must be exactly Authorization: Bearer YOUR_TOKEN: the word Bearer, one space, the token. Check that an environment variable actually expanded.
  • 403 email_unverified. Confirm the account's email address; the token then works as it is.
  • The client asks you to sign in with OAuth. URLpipe has no OAuth flow — the header is the whole of the authentication. Set it, and the client has nothing to sign in to.
  • Tool calls fail with rate_limited. The server allows 300 calls per 5 minutes per token. concurrency_limit means your plan's parallel requests are all busy.
  • The variable didn't expand. Claude Code reads empty for a few credential-like variable names in remote headers; a name of your own such as URLPIPE_TOKEN is fine. Restart the session after exporting it.

The server speaks streamable HTTP and answers each message with a single JSON response — it opens no SSE stream and keeps no session. Every argument and tool is in the MCP docs.

FAQ

Frequently asked questions

What is the command to add URLpipe to Claude Code?
claude mcp add --transport http urlpipe https://urlpipe.dev/mcp --header "Authorization: Bearer YOUR_TOKEN", optionally with --scope user to use it in every project.
Can Claude Code screenshot my local dev server?
No. URLpipe fetches public URLs from its own servers, so localhost and private addresses are refused. Point it at a deployed preview or staging URL.
How do I share the setup with my team without sharing a token?
Use --scope project to write .mcp.json, with the header written as Bearer ${URLPIPE_TOKEN}. Each person sets their own token in the environment.
Why use this instead of Claude Code's built-in web fetch?
URLpipe renders the page in real Chrome before converting it, so JavaScript-rendered docs come back complete, and it adds screenshots, console errors and Lighthouse audits.

Connect it in five minutes.

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