Skip to main content

Confirm

Are you sure?

Integrations

URLpipe in VS Code

Copilot's agent mode, able to open a page, read its console and audit it.

By · Last updated: September 2026

TL;DR

VS Code configures MCP servers in .vscode/mcp.json or your user profile, under a top-level "servers" key. Add URLpipe as "type": "http" with "url": "https://urlpipe.dev/mcp" and an Authorization header that reads the token from an ${input:…} password prompt, so it is never written to the file.

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

Why

What Copilot's agent gets

In agent mode, Copilot calls MCP tools on its own. With URLpipe it can load a deployed page in a real browser and report its JavaScript errors — console.error, console.warn, uncaught exceptions and unhandled rejections — run a Lighthouse audit, read the page as Markdown, and screenshot it.

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 mcp.json

Use .vscode/mcp.json in a workspace to share the setup with your team, or run MCP: Open User Configuration from the Command Palette for every workspace. VS Code's key is servers, not mcpServers.

.vscode/mcp.json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "urlpipe-token",
      "description": "URLpipe MCP token",
      "password": true
    }
  ],
  "servers": {
    "urlpipe": {
      "type": "http",
      "url": "https://urlpipe.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${input:urlpipe-token}"
      }
    }
  }
}

The first time the server starts, VS Code prompts for the token and stores it securely; the file holds only the prompt's definition, so it is safe to commit.

Check it started

Run MCP: List Servers from the Command Palette: urlpipe should be running. The mcp.json editor also shows start, stop and restart actions above the entry, and the Extensions view lists it under MCP Servers – Installed. In Chat, switch to agent mode and open the tools picker: URLpipe's tools are listed, each with a checkbox.

Try it

3. A first prompt to try

Prompt for VS Code
Use urlpipe with sync: true to capture the console errors of https://staging.example.com/checkout
and run a mobile Lighthouse audit on it. For each console error, find the code in this
workspace that most likely causes it.

A console capture costs 1 credit and a Lighthouse audit 2. Plain console.log output is not captured — only errors, warnings, exceptions and unhandled rejections.

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.
  • VS Code never asked for the token. Check the id in inputs matches the name inside ${input:…}, then restart the server from MCP: List Servers.

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

Is it servers or mcpServers in VS Code?
servers. VS Code's mcp.json uses a top-level servers object, with an optional inputs array for prompted values.
How do I avoid putting the token in .vscode/mcp.json?
Define a promptString input with password: true and reference it as Bearer ${input:urlpipe-token}. VS Code asks once and stores the value securely.
Does URLpipe work with GitHub Copilot?
Yes, through VS Code's MCP support: in Copilot Chat's agent mode the URLpipe tools appear in the tools picker.
Does /console capture console.log?
No. It captures console.error, console.warn, uncaught exceptions and unhandled promise rejections — the output that signals a problem.

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.