Demand only matters if agents can find the endpoint
The demand dashboard is useful because it names missed routing paths. But the fix still has to land in the catalog an agent reads before paying.
This update does two catalog jobs.
First, three existing endpoints got sharper routing text:
archive-snapshotnow says "archive snapshot", "web archive URL lookup", and "historical webpage snapshot".qr-code-decodenow starts with "QR code decode".remove-bgnow starts with "Remove background from image".
Those phrases are plain, but that's the point. Agents don't need a clever description. They need the words that match the job.
Seven registry endpoints are back in the machine catalog
The sync also exposed implemented registry entries that weren't present in bankr.x402.json. Those are now restored to the Bankr manifest and the generated MCP cluster packages:
answer-webdoc-to-jsonhyperliquid-perpsresearch-briefscrape-to-jsonwatch-pageweb-search
Each one now has a cluster assignment in docs/cluster-map.json, so the MCP tools can group them correctly instead of treating them as loose endpoints.
That matters for routing. A planner looking for web research should see answer-web, research-brief, scrape-to-json, watch-page, and web-search inside the web-probe surface. A market-data agent should see hyperliquid-perps under edge-market.
web-search also moved from scaffold to callable. It now returns bounded Decodo Google Search results with title, URL, snippet, and domain. If a caller needs page text or cited synthesis, it should use answer-web or scrape-to-json.
What changed for callers
No payment shape changed in this pass. Prices still come from the structured x402 fields.
What changed is discovery text and catalog coverage. If your agent caches bankr.x402.json or MCP tool lists, refresh that cache before ranking tools for archive lookup, QR decode, background removal, web research, document extraction, or Hyperliquid market data.
Exact demand names now route too
A second pass added aliases for market rows where agents were searching with plain buyer terms instead of our canonical slug. These aliases reuse existing handlers, so they improve routing without adding a new vendor path or changing output contracts.
New web and archive names:
archive-urlweb-archivewayback-machineqr-codeqr-reader
New image and document names:
background-removeremove-backgroundpdf-table-extractorpdf-to-markdown-api
New market, weather, and chain names:
crypto-pricetoken-price-apitoken-securitycurrent-weatherweather-apigas-apiipfsipfs-gateway
The loop should keep using demand rows this way: map buyer wording to implemented endpoints first, then only create a new endpoint when the current surface cannot answer the job honestly.
New endpoint capacity where aliases were not enough
This pass also adds climate-data, a first-class endpoint backed by NASA POWER daily point data. It accepts latitude, longitude, a bounded date range, and an allowlist of daily climate parameters such as temperature, precipitation, humidity, wind speed, and surface solar radiation.
That is not an alias. It fills a real demand gap for historical weather and climate data that the forecast endpoint should not pretend to cover.
More exact-name aliases were added where the backend already existed:
defi-llama,defillama, anddefi-tvlroute to the DefiLlama protocol TVL endpoint.mp4-to-mp3-apiandvideo-to-mp3route to the video audio-extraction endpoint.pdf-text-extractorandpdf-parser-apiroute to the PDF parsing pipeline.image-description,image-describe, andalt-text-generatorroute to the vision descriptor.add-watermark,image-watermark,ssl-certificate-check,iin-lookup,html-markdown,url-to-markdown, andtoken-honeypot-checkroute to the matching existing handlers.
The traffic bot now has fixtures for these names too, so the demand loop can see real health and ranking signals instead of just static catalog entries.