Endpoints
Complete API reference for the public oculr endpoints. Each endpoint has its own page with request, response, errors, and a worked example.
Base URL: https://mpp.oculr.xyz
All /explain* endpoints require MPP/x402 payment. Discovery surfaces (/openapi.json, /tool-spec.json, /SKILL.md, /llms.txt, /health) are free to fetch.
Endpoints
| Method | Path | Purpose | Page |
|---|---|---|---|
POST | /explain | Synchronous analysis over metered SSE - the final event is the result | POST /explain |
POST | /explain/async | Non-blocking - returns a jobId immediately | POST /explain/async |
GET | /result/:jobId | Poll an async job - each poll collects the cost accrued since the last one; the first poll after it finishes charges the true-up | GET /result/ |
GET | /health | Service health probe (free) | GET /health |
GET | /openapi.json | OpenAPI 3.1 spec (free) | Discovery |
GET | /tool-spec.json | Typed Anthropic + OpenAI tool-use schemas (free) | Discovery |
GET | /SKILL.md | Prose entry point for agents (free) | Discovery |
GET | /llms.txt | Discovery index for LLM crawlers (free) | Discovery |
Response headers
Every response includes:
| Header | Value |
|---|---|
X-Oculr-Version | 1 |
X-Oculr-Cost-Model | mpp-x402 |
Link | </SKILL.md>; rel="describedby", </openapi.json>; rel="describedby", </tool-spec.json>; rel="describedby" (RFC 5988) |
The ExplanationResult schema
Returned by POST /explain and by GET /result/:jobId when the job completes. Documented in detail on the POST /explain page.
Related
- Use as an agent - sub-agent integration guide
- Analyze a transaction - worked example with the result schema explained
- Core concepts - pipeline, confidence levels, sync vs async