Can an agent stream a completion that calls a tool with OpenRouter API?
Who does each step
Whether the agent handles it alone or a person has to step in.
- 01
Discover
MachineThe vendor's machine-readable docs show the agent where and how to call this job.
- 02
Access
Workaround · setupYou give the agent a key or token.
- 03
Onboard
Workaround · setupYou sign up or register a client for the agent.
- 04
Pay
Not applicableNothing to pay for the job.
- 05
Confirm
MachineThe response or specification defines errors the agent can distinguish from success.
- 06
Sustain
Workaround · setupYou replace or revoke the agent's access when it needs to change.
- Access: handing over a key or token.
- Onboard: signing up or registering a client for the agent.
- Sustain: renewing, replacing or revoking its access.
To remove these handoffs: support OAuth client registration so the agent can register its own client and ask for consent; provide an agent registration route, such as auth.md, a sign-up API or OAuth client registration; provide key management or OAuth refresh and revocation so the agent can maintain its own access.
Agent surfaces
The probe
Each request it sent and what came back; the descriptors it read, counted, with what they named.
Discover14 descriptor reads9 facts
- Found
- API catalogopenrouter.ai/api/v1ARDopenrouter.ai/.well-known/mcp/server-card.jsonARDopenrouter.ai/openapi.jsonARDopenrouter.ai/.well-known/skills/index.jsonMCPmcp.openrouter.ai/mcpFor agentsopenrouter.ai/llms.txtAPI catalogopenrouter.ai/api/v1APIopenrouter.aiAPIopenrouter.ai
- From
- openrouter.ai/.well-known/api-catalog · openrouter.ai/.well-known/ard.json · openrouter.ai/.well-known/mcp/server-card.json · openrouter.ai/llms.txt · openrouter.ai/openapi.json
- This endpoint
- openrouter.ai/api/v1/chat/completions is named by a descriptor it read
Job requestPOST openrouter.ai/api/v1/chat/completions40123 ms
- Request
- POST https://openrouter.ai/api/v1/chat/completions
- Response
- 401 · application/json · 67 bytes
- Body
- sha256:36c1407c049a212826f183eabdf3eae02172f79f80806f9afed93f5eeb68c49c
- Exchange
- sha256:a66f1ca56fcac324ba1b67493902b2dd768d9ea57371768b45f486e8ae35c651
Resource metadataGET openrouter.ai/.well-known/oauth-protected-resource/api/v1/chat/completions40465 ms
- Request
- GET https://openrouter.ai/.well-known/oauth-protected-resource/api/v1/chat/completions
- Response
- 404 · text/html · 30162 bytes
- Body
- sha256:b431b7086b356a0fae1e7eb846701493600305d10ceef545357245d3205e6454
- Exchange
- sha256:8a83d0f2635de390d6e95fbb1841cfcdd7b8f0962a8af60ad98a61d8fc4d2bfd
Resource metadataGET openrouter.ai/.well-known/oauth-protected-resource404113 ms
- Request
- GET https://openrouter.ai/.well-known/oauth-protected-resource
- Response
- 404 · text/html · 30835 bytes
- Body
- sha256:c1226fb21cafee6b570edec8f0a77f9d312bd8a4fa18d3ffbfdd508ccad89438
- Exchange
- sha256:cb550ffca21ea09e307a04037bf4c18fc5dcd785d5558cdf660edb13daa060c2
Declared pageGET openrouter.ai/sign-up200114 ms
- Request
- GET https://openrouter.ai/sign-up
- Response
- 200 · text/html · 157694 bytes
- Body
- sha256:c016ce5a2cf37a6ce2f34214f16717c58fc6c7c010357d6a94ab5e1222f60907
- Exchange
- sha256:fb00f4488dada376185153b00577071d41e84b4679e8946b23e2f3f381d04c7b
OpenRouter on the startup-offers board
- Up to $5,000 in creditsOpenRouter for Startups
The grade’s badge
One image that keeps itself current, linking here.
[](https://sourcey.com/c/openrouter/agent-readiness/openrouter-api/model-chat-stream-tool)Improve the report
Correct it, probe it again, or improve the path.
- Profile
- arp_01m4pmaa3hzmehhtgx2ea10thv
- Projection
- sha256:fd44d21eff6abc185d3935363b9fe688dceeb629fcd490eb17ed8db113b3fea8
- Policy
- kind-2026-10-12.2 · sha256:b612172aad277b54461de84e006815126f2df566563954b02f4432a39cad89ac
A report or a reassessment request names this profile, its revision and its projection. How report cards are assessed →View the exact declaration