Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
Beschreibung vom Entwickler (englisches Original)
Web page to structured JSON: product, tables, metadata. 20 free calls/day, x402.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Authorization, x-api-keyAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Diese Adresse braucht einen Schlüssel in einem Header der Anfrage, und das Menü zum Hinzufügen von Connectors kann ihn nicht setzen. Nutze stattdessen Claude Code, Cursor oder VS Code.
Führe das in deinem Terminal aus
claude mcp add --transport http extract https://api.webextract.dev/mcp --header 'Authorization: your-value' --header 'x-api-key: your-value'Trag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"extract": {
"url": "https://api.webextract.dev/mcp",
"headers": {
"Authorization": "your-value",
"x-api-key": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"extract": {
"type": "http",
"url": "https://api.webextract.dev/mcp",
"headers": {
"Authorization": "your-value",
"x-api-key": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Diese Adresse braucht einen Schlüssel in einem Header der Anfrage, und das Menü zum Hinzufügen von Connectors kann ihn nicht setzen. Nutze stattdessen Claude Code, Cursor oder VS Code.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Authorization geheim HTTP headerx-api-key geheim HTTP headerDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Tool-Namen und -Beschreibungen genau so, wie der Server sie am 9. Nov. 2026 gemeldet hat. Geschrieben hat sie der Entwickler, nicht wir; wir zeigen sie als reinen Text.
extract_urlFetch a public web page (robots.txt respected) and return clean Markdown plus fixed-schema JSON: article metadata, product/price, tables. HTML only, no JS execution, no PDF. Free 20 calls/day per IP; pass 'Authorization: Bearer ' for prepaid credits.
page_markdownFetch a public web page (robots.txt respected) and return clean Markdown only. HTML only, no JS execution, no PDF. Cheaper than extract_url (0.4 credit). Free 20 calls/day per IP; pass 'Authorization: Bearer ' for prepaid credits.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 10. Nov. 2026
Der Registry-Name wurde über die Domain webextract.dev bestätigt (die Registry prüft, wem die Domain gehört)
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Antwort in 365 ms (HTTP 200)
Keine Anmeldung nötig
Wir haben 2 Tool-Beschreibungen gelesen und keine versteckten Anweisungen an die KI gefunden
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 3 von 3 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: Authorization, x-api-key
Er läuft in der Cloud des Entwicklers. Du verbindest dich übers Internet, ohne etwas zu installieren, aber was du sendest, läuft über die Server des Entwicklers.
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.0.4) kam gestern in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.
In derselben Kategorie: Browser Use, Chrome DevTools MCP, MCP Server Browser
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
Web page → structured JSON (product, tables, metadata) + clean Markdown, for AI agents. One URL returns product data (name, price, availability), tables with row checks, and article metadata as structured JSON, plus clean Markdown. 20 free calls/day, no signup. Failed REST fetches are not charged. Pay per call with x402 USDC on 7 chains over REST, or use Stripe prepaid credits (REST and MCP).
x402 networks: Base, Polygon, Arbitrum, Avalanche, OP Mainnet, World Chain and Monad. Prepaid credits are bought with a card via Stripe. Works from any MCP client.
https://api.webextract.devhttps://api.webextract.dev/mcpllms.txt: https://api.webextract.dev/llms.txtGET /v1/extract?url=https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html (a practice product page made for scraping). Real response saved on 2026-10-25, trimmed here to a few fields; the full files are in examples/compare/out.
{
"url": "https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html", "content_source": "raw_html", "word_count": 261, "product": { "name": "A Light in the Attic", "price": 51.77, "currency": "GBP", "availability": "InStock", "rating": { "value": 3, "count": null }, "source": "heuristic", "price_detail": { "warnings": ["heuristic_price_low_confidence", "currency_inferred_from_symbol"] } }, "tables": [ { "headers": ["col_1", "col_2"], "rows": [["UPC", "a897fe39b1053632"], ["Product Type", "Books"]], "checks": { "row_count": 7, "column_count": 2, "consistent_width": true } } ] }
The response also carries markdown (the page as clean Markdown) and metadata. The warnings show that the price came from a heuristic, not from structured markup on the page. A page that is not a product page returns "product": null instead of a guess. See examples/compare for a table page and for how /v1/markdown differs.
| Method | Path | Returns | x402 price | Credits |
|---|---|---|---|---|
| GET / POST | /v1/extract?url= | Markdown + structured JSON (metadata, product/price, tables) | $0.005 | 1 |
| GET / POST | /v1/markdown?url= | Markdown only | $0.002 | 0.4 |
| GET | /v1/balance | Free calls left today, or prepaid credits left | free | – |
| POST | /mcp | MCP tools extract_url, page_markdown | use the REST endpoints (not tested over MCP) | same as above, after the free tier |
| GET | /.well-known/x402 | x402 discovery | free | – |
POST takes the same URL as a JSON body: {"url": "https://..."}.
Behaviour:
robots.txt is respected.url returns 400 JSON (missing_url / invalid_url) before any billing. All errors are JSON.X-Billing: free (or ?free=1). MCP: no header needed./v1/extract) / $0.002 (/v1/markdown) in USDC on any supported network (below). No account, no gas needed. Works on the REST endpoints. Over MCP, use the free tier or a prepaid key (see Use from MCP clients)./v1/extract uses 1 credit, /v1/markdown uses 0.4 credit. Credits never expire. Buy at https://webextract.dev/#pricing; the API key is shown once on the success page.We ran WebExtract on 10 public pages and published the raw files and scripts: https://webextract.dev/benchmark · examples/benchmark.
/v1/markdown 38/40 succeeded (95.0%), /v1/extract 40/40 (100.0%). Field checks passed: 75/75 and 212/212. The two failures are counted in the rate./v1 run in the same server process and call the same extraction function; only the payment step differs.# Free tier (opt-in: 20 calls/day per IP)
curl -H "X-Billing: free" "https://api.webextract.dev/v1/markdown?url=https://example.com"
curl -H "Authorization: Bearer $WEBEXTRACT_KEY" \ "https://api.webextract.dev/v1/extract?url=https://example.com"
Response (abridged):
{
"url": "https://example.com", "final_url": "https://example.com/", "title": "Example Domain", "markdown": "This domain is for use in documentation examples ...", "word_count": 25 }
Prepaid responses include X-Credits-Charged and X-Credits-Remaining headers; free-tier responses (only with X-Billing: free / ?free=1) include X-Free-Remaining. Without a key, a payment or X-Billing: free, the REST endpoints answer HTTP 402 (reason: x402_required).
Requests without a key, payment or X-Billing: free get HTTP 402 (reason: x402_required; X-Billing: x402 gives the same 402 with reason: x402_requested) with an x402 v2 PAYMENT-REQUIRED header (scheme exact). It lists one option per network; pay with whichever one your wallet holds USDC on (see Choosing a network with the SDK):
| Network | CAIP-2 id | USDC (native) | EIP-712 name / version |
|---|---|---|---|
| Base (recommended) | eip155:8453 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | USD Coin / 2 |
| Polygon PoS | eip155:137 | 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 | USD Coin / 2 |
| Arbitrum One | eip155:42161 | 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 | USD Coin / 2 |
| Avalanche C-Chain | eip155:43114 | 0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E | USD Coin / 2 |
| OP Mainnet | eip155:10 | 0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85 | USD Coin / 2 |
| World Chain | eip155:480 | 0x79A02482A880bCE3F13e09Da970dC34db4CD24d1 | USDC / 2 |
| Monad | eip155:143 | 0x754704Bc059F8C67012fEd69BC8A327a5aafb603 | USDC / 2 |
Not supported: USDC on Ethereum mainnet (no x402 facilitator settles there). Solana is planned.
The JSON body of every 402 says why, in reason (also in the X-Payment-Reason header):
reason | Meaning |
|---|---|
x402_required | No key, no payment and no free opt-in. Pay with x402, use a key, or retry with X-Billing: free |
x402_requested | You sent X-Billing: x402 and no payment yet |
free_limit_reached | You opted in with X-Billing: free / ?free=1 but your IP's free calls are used up (X-Free-Remaining: 0) |
invalid_payment | A payment was sent but rejected; detail has a short reason code (e.g. invalid_exact_evm_insufficient_balance). Not charged |
unsupported_network | The payment used a network this endpoint does not accept |
settlement_failed | The payment was verified but on-chain settlement did not complete. Not charged (retryable: true); retry with a freshly signed payment |
An unknown X-Billing value returns 400 invalid_billing_mode. Precedence: a Bearer key wins over a payment, and a payment wins over X-Billing: free.
See the requirements without paying anything: examples/curl/x402-inspect.sh, examples/python/inspect_402.py or examples/node/inspect-402.mjs.
Any x402 client can pay and retry automatically. Two things to know with the official SDKs (@x402/fetch / @x402/evm 2.28, Python x402 2.25):
spendControls reject those options. Add them to spendControls.allowedAssets.network: "eip155:*" the SDK picks the first option (Base)** even if your USDC is elsewhere. Register only the networks where your wallet holds USDC, or pass a paymentRequirementsSelector.// npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch"; import { ExactEvmScheme } from "@x402/evm"; import { privateKeyToAccount } from "viem/accounts";
const account = privateKeyToAccount(process.env.EVM_PRIVATE_KEY); // low-balance hot wallet const funded = ["eip155:10"]; // networks where this wallet holds USDC, e.g. OP Mainnet const fetchWithPayment = wrapFetchWithPaymentFromConfig(fetch, { schemes: funded.map(network => ({ network, client: new ExactEvmScheme(account) })), spendControls: { allowedAssets: [ { network: "eip155:10", asset: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85", maxAmountPerPayment: "10000" }, // OP Mainnet USDC, $0.01 cap { network: "eip155:480", asset: "0x79A02482A880bCE3F13e09Da970dC34db4CD24d1", maxAmountPerPayment: "10000" }, // World Chain USDC ] }, });
const res = await fetchWithPayment( "https://api.webextract.dev/v1/extract?url=" + encodeURIComponent("https://example.com"), { headers: { "X-Billing": "x402" } } ); console.log(await res.json());
examples/node/x402-fetch.mjs does this automatically: it reads your USDC balance on every supported network, registers only the funded ones, prefers Base, and has a --dry-run mode that signs nothing.
In a browser, https://webextract.dev/try shows your USDC balance on every supported network, lets you pick one, switches your wallet to it and signs the payment.
REST: payment is only settled when the request succeeds (status < 400).
Test your x402 integration without real money: call https://api.webextract.dev/sandbox/v1/extract or /sandbox/v1/markdown, or send X-Billing: x402-testnet to the normal endpoints. The sandbox accepts only Base Sepolia (eip155:84532) test USDC 0x036CbD53842c5426634e7929541eC2318f3dCF7e, settled by the https://x402.org/facilitator testnet facilitator. Get test USDC at https://faucet.circle.com. Responses are identical; nothing real is charged. Rate limited to 20 requests/minute and 300/day per IP.
WEBEXTRACT_BILLING=x402-testnet ./examples/curl/x402-inspect.sh markdown
WEBEXTRACT_SANDBOX=1 EVM_PRIVATE_KEY=0x node examples/node/x402-fetch.mjs
Remote server, streamable HTTP, stateless: https://api.webextract.dev/mcp
Tools:
extract_url(url): Markdown + structured JSONpage_markdown(url): Markdown only (cheaper)Works without a key on the free tier (20 calls/day per IP, no X-Billing header needed for MCP). For prepaid credits add header Authorization: Bearer .
Both tools declare an outputSchema and return structuredContent.
After the free tier over MCP: once this IP's 20 free calls are used up, a tools/call without a Bearer key returns an error result (isError: true) whose text carries the payment requirements as JSON. Paying x402 through MCP has not been tested; add a prepaid key (Authorization: Bearer ), wait for the daily reset, or use the REST endpoints for x402 pay-per-call. `in
Nur der Anfang wird gezeigt; den Rest findest du im Repo