Skip to main content

Confirm

Are you sure?

Integrations

URLpipe in Claude Desktop

Let Claude open any URL — JavaScript rendered — read it as Markdown, and look at it as a screenshot.

By · Last updated: September 2026

TL;DR

Claude Desktop reaches URLpipe's hosted MCP server at https://urlpipe.dev/mcp in one of two ways: as a custom connector with an Authorization request header, where your organization has that option, or through the open-source mcp-remote bridge in claude_desktop_config.json, which runs locally with Node.js and forwards the header.

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

Why

What Claude gets

Claude on its own can't load a page that renders in JavaScript. With URLpipe connected it has fourteen tools: the nine API endpoints — fetch_markdown, capture_screenshot, extract_metadata, lighthouse_audit, console_logs, scrape_url and the rest — plus five for results, requests, projects and usage. Screenshots come back as images, so Claude looks at them directly.

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 to Claude Desktop

Route A — a custom connector with a request header

Open Customize → Connectors and choose Add custom connector (on Team and Enterprise, an owner adds it under Organization settings → Connectors). Enter:

  • MCP server URL: https://urlpipe.dev/mcp
  • Authentication: No sign-in
  • Request headers: authorization, with the value Bearer YOUR_TOKEN — include the word Bearer and the space; Claude sends the value exactly as typed.

Request headers are a beta that Anthropic is rolling out to a limited set of organizations. If your dialog has no Request headers section, use route B. A connector is reached from Anthropic's servers, so it follows you to claude.ai and the mobile apps as well.

Route B — the local config file, through mcp-remote

claude_desktop_config.json starts local servers as commands; it does not take a URL and headers directly. mcp-remote — an open-source bridge, not ours — runs as that command and forwards to the remote server with your header. It needs Node.js installed.

Open the file from Settings → Developer → Edit Config. It lives at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS and %APPDATA%\Claude\claude_desktop_config.json on Windows.

claude_desktop_config.json
{
  "mcpServers": {
    "urlpipe": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://urlpipe.dev/mcp",
        "--header",
        "Authorization:${URLPIPE_AUTH}",
        "--transport",
        "http-only"
      ],
      "env": {
        "URLPIPE_AUTH": "Bearer YOUR_TOKEN"
      }
    }
  }
}

The header is written Authorization:${URLPIPE_AUTH}, with no space after the colon, and the Bearer prefix lives in the variable: some platforms mangle spaces inside args. --transport http-only skips the older SSE transport, which URLpipe doesn't serve. Quit Claude Desktop completely and reopen it after saving.

Check it connected

For route B, Settings → Developer lists urlpipe with its status; an error there shows the bridge's log. For either route, open a new chat and the + menu's connectors and tools: urlpipe should be listed with its tools, which you can switch on and off per conversation.

Try it

3. A first prompt to try

Prompt for Claude Desktop
Using urlpipe with sync: true, read https://news.ycombinator.com as Markdown and list the five
top stories with their links. Then take a screenshot of the first story's page and tell me
what the page looks like.

Claude will ask before each tool call unless you allow it; the first call is list_projects. Reading and screenshotting cost 1 credit each.

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.
  • Route B shows "Server disconnected". Run npx -y mcp-remote https://urlpipe.dev/mcp --header "Authorization: Bearer YOUR_TOKEN" --transport http-only in a terminal to see the bridge's own error.

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

Can I add URLpipe to Claude Desktop without Node.js?
Yes, if your organization has request headers in the Add custom connector dialog: add https://urlpipe.dev/mcp with No sign-in and an authorization header. Otherwise the config-file route runs mcp-remote through npx, which needs Node.js.
Why doesn't the connector ask me to sign in?
URLpipe authenticates with a bearer token and has no OAuth flow. Choose No sign-in and put the token in the authorization request header.
Does using URLpipe through Claude cost extra?
No. Each tool call spends what the matching API endpoint spends, from the same monthly allowance, and cached results are free.
Can Claude see the screenshots?
Yes. capture_screenshot returns the image as an MCP image content block, so Claude can describe and reason about it.

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.