mcpField
U
Unbrowse

Unbrowse

Remote
unbrowse.aiBrowser Automation811Updated 2w ago

About Unbrowse

Unbrowse treats websites as APIs, running tasks through each site's own first-party APIs and offering a cloud browser with saved logins. This repository is the open-source client for the hosted service, including an SDK, a CLI and an agent skill.

Key features

  1. 01Run tasks through first-party site HTTP requests
  2. 02Compile recorded requests into reusable tools
  3. 03Cloud browser with saved logins
  4. 04TypeScript SDK and unbrowse command line tool
  5. 05Plugins for several agent hosts

Use cases

  1. 01Let an agent fetch information from websites quickly
  2. 02Package a site workflow as a reusable tool
  3. 03Run login-dependent tasks on sites without an official API

MCP support

The hosted service exposes an MCP endpoint that agents connect to over HTTP. The CLI can also run a local stdio proxy to that hosted MCP server.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://unbrowse.ai/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Packages
npmunbrowse12.5.0

Tools

Details

From the project README

Unbrowse

Every website, even those without an official API or MCP, still rely on a first party API to talk to their backend. Unbrowse calls these website's first party APIs to make agentic browsing 50-100x faster and 95% cheaper than using a browser.

This is the open-source client for the hosted Unbrowse service (https://unbrowse.ai): the @unbrowse/sdk TypeScript client for its REST API, and the unbrowse CLI built on it.

Install the agent skill:

npx skills add unbrowse-ai/unbrowse --skill unbrowse

Connect your agent:

claude mcp add --transport http unbrowse https://unbrowse.ai/mcp

Complete OAuth sign-in in your client. From a terminal: npx unbrowse login (OAuth in your browser, nothing to paste), then npx unbrowse run 'top stories on hacker news'.

Install · CLI · MCP · SDK · Troubleshooting

How it works

  1. Discover. Unbrowse searches your private capabilities, then a public registry of sites already compiled into tools.
  2. Run. A matching capability replays the site's own first-party HTTP requests. No browser. A run succeeds only when its result is verified.
  3. Learn once. No match: an agent does the task in Unbrowse's recorded cloud browser (MCP), or you upload two HAR recordings (unbrowse learn). Unbrowse compiles the requests into a one-call capability. Next time is step 2.

Passwords stay in the Unbrowse password manager; the CLI never takes one.

More: docs/how-it-works.md · Paper: Internal APIs Are All You Need (arXiv:2604.00694)

Commands

unbrowse login [--key ub_live_…]    sign in (browser OAuth) or store an API key
unbrowse discover <query>           your capabilities, then the public registry
unbrowse run <task…> [--set k=v]    run a task from your IP (--from-unbrowse: from Unbrowse); waits for a verified result
unbrowse resume <runId> k=v…        answer what the run asked for, on the same run
unbrowse scrape <url>               read one page as markdown
unbrowse index <url>                teach Unbrowse a site: each flow becomes a tool
unbrowse learn a.har b.har          compile two recordings into a capability
unbrowse logins                     saved logins, masked
unbrowse registry [query]           public compiled sites (no account)

All commands: docs/cli.md. Exit codes: 0 ok, 1 error, 2 input required, 3 sign-in or login needed, 4 not verified.

SDK

import { Unbrowse } from "@unbrowse/sdk";
const ub = new Unbrowse(); // UNBROWSE_API_KEY
const run = await ub.wait((await ub.run({ task: "top stories on Hacker News", idempotencyKey: crypto.randomUUID() })).runId);

Supported REST methods: docs/sdk.md.

Agents

Agents connect to the hosted MCP (https://unbrowse.ai/mcp, see docs/install.md) and follow skill/SKILL.md. The CLI is the REST alternative. unbrowse mcp runs a local stdio proxy to the hosted MCP for hosts that need stdio or plain tool names (unbrowse_scrape).

Plugins for Claude Code, Codex, Grok Build, OpenClaw, Hermes and elizaOS bundle the skill and make Unbrowse the host's browser: plugins/. Grok, ChatGPT, Claude, Perplexity, Le Chat and Gemini CLI connect as a custom connector: docs/connect.md.

Pricing

Check your current account plan and unbrowse usage for quota and pricing. docs/pricing.md

Develop

bun install
bun test packages     # SDK route tests + CLI tests against a local stand-in API
bun run typecheck
bun run build         # packages/sdk/dist, packages/cli/dist/cli.js (Node 18.17+)
bun run cli help

Release

CI/CD publishes on a version tag: docs/release.md.

What is here and what stays hosted: docs/open-source.md. MIT © Unbrowse AI

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.