{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_stduarpp6zzg","handle":"fetch-router","url":"https://wellknown.network/agents/fetch-router","links":{"self":"https://wellknown.network/agents/fetch-router/record.json","html":"https://wellknown.network/agents/fetch-router","markdown":"https://wellknown.network/agents/fetch-router/record.md","api":"https://wellknown.network/api/v1/agents/fetch-router","status":"https://wellknown.network/api/v1/agents/fetch-router/status","claim":"https://wellknown.network/agents/fetch-router/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/fetch-router/claim.json","badge":"https://wellknown.network/agents/fetch-router/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/fetch-router/history","tools":"https://wellknown.network/api/v1/agents/fetch-router/tools"},"ard":{"identifier":"urn:air:fetchrouter.dev:server:fetch-router","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Fetch Router","summary":"Verified web fetch for agents: detects blocks and empty JS pages, falls back, bills only on success.","description":"Verified web fetch for agents: detects blocks and empty JS pages, falls back, bills only on success.","publisher":{"name":"dev.fetchrouter","url":null},"homepage":"https://fetchrouter.dev","repository":"https://github.com/JonnoGit/fetchrouter-mcp","version":"0.1.1","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://fetchrouter.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"npm:fetchrouter-mcp","type":"package_npm","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-11-03T00:09:11.149044Z","publishedAt":"2026-11-03T00:09:11.149044Z","registryName":"dev.fetchrouter/fetchrouter-mcp"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"infra.browser-automation","name":"Browser Automation","confidence":0.51,"provenance":"derived"}],"categories":["infra"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 7h ago.","lastOkAt":"2026-11-07T05:30:49.857Z","lastProbedAt":"2026-11-07T05:30:49.857Z","statusComputedAt":"2026-11-07T05:34:02.726Z","reliability30d":{"probes":6,"successRate":1,"p50Ms":100,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":6,"ok":6,"authBoundaryOk":0,"serviceOk":6,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-11-07T05:30:49.857Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":101,"error":null,"detail":{"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"toolCount":2,"toolsHash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","serverName":"fetchrouter","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-11-06T21:31:50.496Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":93,"error":null,"detail":{"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"toolCount":2,"toolsHash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","serverName":"fetchrouter","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-11-06T13:29:23.504Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":111,"error":null,"detail":{"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"toolCount":2,"toolsHash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","serverName":"fetchrouter","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-11-06T04:28:53.612Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":94,"error":null,"detail":{"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"toolCount":2,"toolsHash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","serverName":"fetchrouter","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-11-05T19:23:22.049Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":100,"error":null,"detail":{"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"toolCount":2,"toolsHash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","serverName":"fetchrouter","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}},{"at":"2026-11-05T11:24:42.544Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":143,"error":null,"detail":{"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"toolCount":2,"toolsHash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","serverName":"fetchrouter","capabilities":["tools"],"serverVersion":"0.1.1","protocolVersion":"2025-06-18"}}],"tools":[{"name":"fetch_page","description":"Fetch a public URL and get its content only if it really loaded. Checks for block pages, CAPTCHAs, login walls and empty JavaScript shells, and retries through "},{"name":"domain_reliability","description":"Pass rates per route (plain HTTP, browser, providers) for a domain over the last 30 days, from real verified fetches. Use it to choose mode/max_cost before fetc"}],"package":null,"toolSurface":{"id":"ts_g89jgusuxrsx","endpointId":"ep_ujgqayhtcmfk","hash":"9d0278453b80da4b3714ac32a3378da5abb7e1ae40ebd784c299c3b5927f2797","toolCount":2,"serverName":"fetchrouter","serverVersion":"0.1.1","protocolVersion":"2025-06-18","firstSeenAt":"2026-11-05T11:24:42.539Z","lastSeenAt":"2026-11-07T05:30:49.869Z","observations":6,"hiddenText":{"level":"none","total":0,"tools":0,"kinds":[],"findings":[]},"toolNames":["fetch_page","domain_reliability"],"distinctSurfaces":1,"surfacesWithHiddenText":0},"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"dev.fetchrouter/fetchrouter-mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/dev.fetchrouter%2Ffetchrouter-mcp","firstSeenAt":"2026-11-05T09:18:33.967Z","fetchedAt":"2026-11-05T09:18:33.967Z","normalizedAt":"2026-11-05T09:18:33.967Z"}]},"firstSeenAt":"2026-11-05T09:18:33.967Z","updatedAt":"2026-11-07T05:35:05.825Z"}