Discovery
Agent Pay status: Approve does not execute. Execution: not enabled. ACH settlement: not enabled. prepare_payment never moves money. Machine-readable: /docs/agents/status.json.
Everything an agent needs to find and connect to POINTS is public, unauthenticated, and on https://thepoints.io.
Connect
| URL | What it returns |
|---|---|
/mcp | The MCP endpoint (Streamable HTTP). Without a token it returns HTTP 401 and a WWW-Authenticate header pointing to the protected-resource metadata. |
| /.well-known/oauth-protected-resource | The resource (https://thepoints.io/mcp), its authorization server, and scopes_supported |
| /.well-known/oauth-authorization-server | Authorization, token, registration, and revocation endpoints; PKCE S256; public clients only |
| /.well-known/openid-configuration | The same authorization server metadata, for clients that look there |
Read the authorization, token, registration, and revocation endpoints from the metadata rather than hard-coding them.
Read
| URL | What it returns |
|---|---|
| /llms.txt | Index of the public site and docs for language models |
| /llms-full.txt | Every public docs page and the changelog as one Markdown file |
| /docs/agents/llms.txt | This section only |
/docs/<page>.md | Any docs page as Markdown, for example /docs/agents/quickstart.md |
Machine-readable state
| URL | What it returns |
|---|---|
| /docs/agents/status.json | Agent Pay state, computed on each request: authorization, execution, approveExecutes, ACH settlement |
| /docs/catalog.json | Every POINTS product with its status |
| /changelog.json | What shipped to production, by commit |
| /docs/agents/reference/mcp-tools.json | MCP tools with scopes, annotations, and input schemas |
| /docs/agents/reference/scopes.json | OAuth scopes and the tools that need them |
| /docs/agents/reference/statuses.json | Status values and their meaning |
| /docs/agents/reference/policy-vocabulary.json | Policy schema version, categories, matching rules, default caps |
| /docs/agents/reference/errors.json | prepare_payment failure classes and protocol errors |
The reference JSON is generated from the same code the MCP server runs. A connected client can also call tools/list and get_agent_pay_policy_vocabulary for the live values on its connection.
Read status.json before telling a user what an approval does. Today it reports "approveExecutes": false.