A worked example, run for real — no arguments

Takes no arguments at all. It runs this host's flagship tool (classify_user_agent) on a canned input from our own published log — the busiest client we have seen — and returns exactly the answer a real call returns, not a mock. Use it to see the shape of an answer before deciding what to send.

Copy this

curl -s 'https://www.pathwren.workers.dev/tools/example?s=client-dossiers'

The worked example itself: the arguments used, where they came from, and the real structuredContent of the call.

curl -s 'https://www.pathwren.workers.dev/tools/example?spec=1&s=client-dossiers'

The specification of this endpoint instead of the answer: what it returns, which MCP tool answers it, and the caveats.

Run it in a browser — it answers JSON with access-control-allow-origin: *, so fetch() works from any page with no proxy.

No setup at all

Parameters

None. This endpoint takes no arguments at all — that is the point of it. Every other endpoint here needs something you have to supply; this one needs nothing, so it is the one you can call before you know anything about this host.

The same tool over MCP

This endpoint holds no copy of the logic: it calls example on the ai-crawler-index MCP server in-process, through that server's own JSON-RPC envelope. One implementation, two doors — an answer that changes here changed there.

curl -s https://www.pathwren.workers.dev/mcp \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"example","arguments":{}}}'

What it will not do

Also here