# Prefactor (slim) > Prefactor is a hosted service that records AI agent runs as spans, classifies each run's data risk and stores quality evaluations. Agents and scripts reach it through an HTTP and WebSocket API, TypeScript and Python SDKs and a CLI. - Full: https://www.anchorterminal.com/tools/prefactor.md (~7,000 tokens) · this version ~1,830 tokens · JSON https://www.anchorterminal.com/tools/prefactor.json · canonical https://www.anchorterminal.com/tools/prefactor - Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · Updated: 2026-10-08 **B · 65.6/100 · rank #253 of 722 · #4 in Agent observability & evals · not agent-ready · confidence medium** Assessment: The public OpenAPI document lists 157 operations, each accepting an idempotency key, and tokens can be read-only or bound to one agent deployment. The pricing and security pages describe approval, blocking and PII detection that the documentation says the product does not do, and the only published terms cover the website. ## Facts - Kind: HTTP API · vendor: Prefactor Pty Ltd · category: Agent observability & evals · legal entity: Prefactor Pty Ltd · provenance 50/100 - Endpoint: `https://app.prefactorai.com/api/v1` (HTTP) - Auth: API key · pricing: Freemium · x402: no · licence: Proprietary hosted service. The TypeScript and Python SDKs and the CLI are MIT - Probe metrics: not measured yet (probes haven't run) - API: `https://app.prefactorai.com/api/v1`, JSON, OpenAPI 3.0.0 with 157 operations. WebSocket JSON-RPC at `wss://app.prefactorai.com/api/v1/ws` with 159 methods in an OpenRPC document - Credentials: Bearer API tokens (JWT). Scope account or agent deployment, role `read_only` or `full_access` (default), expiry defaulting to two years, states active, suspended and revoked, last-used time shown - Rate limits: Per IP, token, deployment, agent and account over fixed one-minute windows, reads allowed more than writes. No numbers published. 429 carries `Retry-After` and `retry_after_ms` - Errors: `status`, `code` and `message` envelope with 12 documented codes, a per-field `errors` map on `validation_errors`, 409 for state conflicts and reused idempotency keys - Pagination: `pagination[offset]` and `pagination[page_size]` (1 to 100), `sorting`, filters by agent, instance, environment, time range, purpose and status - SDKs: TypeScript `@prefactor/core` 1.2.0 (13 September 2026) with adapters for LangChain, Vercel AI SDK, Claude Agent SDK, LiveKit and OpenClaw, Node 22 or later. Python `prefactor-core` 0.5.3 (13 August 2026) with LangChain and LiveKit, Python 3.11 or later. MIT - CLI: `@prefactor/cli` 0.3.0, installed by a script from prefactor.tech. Reads `PREFACTOR_API_TOKEN` for CI. Four agent skills for coding tools ship in the TypeScript SDK repository - Evaluations: Named quality schemas (JSON Schema) per agent and a `record_quality` operation for payloads scored elsewhere. The OpenAPI document also has hosted judge operations that the docs do not describe - Risk: Risk profiles weight data categories and action types declared per span type, and each run is labelled Low, Medium, High or Critical. The label enforces nothing - Sensitive data: The integration marks values with `$sensitive`. Marked values are stored apart, redacted in the web app by default, returned unredacted by the API by default, and can be discarded per span - Plans: Dev free with 5,000 spans a month, 3 agents and 7-day retention. Startup $49 a month with 15,000 spans and 3-month retention. Scaleup $199 a month with 100,000 spans and 12-month retention. Enterprise by quote with self-hosting, SSO and an SLA - Status: status.prefactor.ai on UptimeRobot, three HTTP monitors (app, docs, site) with 90 days of daily bars - Hosting: AWS, with US East, EU West and Sydney named as residency options on the security page - Prices: Startup plan $49 per month (plan); Scaleup plan $199 per month (plan); Span beyond the Startup allowance $0.0025 per record; Span beyond the Scaleup allowance $0.0025 per record - Scores: Reliability 78, Performance pending, Schema & documentation 80, Agent ergonomics 88, Security & auth 56, Payments & pricing 40, Task success pending, Maintenance & community 82, Transparency & trust 42 · negative events -3 · total over the 7 assessed categories - Why: Reliability, Graded as a hosted service. · Schema & documentation, A public OpenAPI 3.0.0 document with 157 operations and an OpenRPC document with 159 WebSocket methods. · Agent ergonomics, List calls take `pagination[page_size]` up to 100, summaries and counts are opt-in flags, and one endpoint exports a whole run's context (16… · Security & auth, Bearer tokens scoped to the account or one agent deployment, with a `read_only` or `full_access` role, an expiry, and suspend, reactivate an… · Payments & pricing, No machine payment protocol (0). · Maintenance & community, `@prefactor/core` 1.2.0 was published on 13 September 2026, 25 days before this check (30). · Transparency & trust, A closed service with MIT SDKs. - Sources: 20, open questions: 7, both in the full twin - Capabilities: obs.traces, obs.evals - JSON: https://www.anchorterminal.com/api/v1/tools/prefactor.json - Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/prefactor.svg` or a link to https://www.anchorterminal.com/tools/prefactor from a page on prefactor.tech or one of its subdomains, or the README of github.com/prefactordev/typescript-sdk, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin. ## Before you call it 1. Send requests to `https://app.prefactorai.com/api/v1` with `Authorization: Bearer `. The API host is not on the `prefactor.tech` or `prefactor.ai` domains 2. Ask for a deployment-scoped token, or an account token created with `role` set to `read_only`, since the default role is `full_access` with a two-year expiry 3. Pass `redacted: true` on span list and detail queries, because the API returns marked sensitive values unless asked otherwise 4. On 429 wait for `retry_after_ms`. Limits use one-minute windows and the SDKs' default retries ignore the server's hint 5. Treat terminate as a request. Check the control signal on span responses or poll the instance, because Prefactor does not stop the process ## Connect ```bash npm install @prefactor/core ``` ```bash curl https://app.prefactorai.com/api/v1/agent \ -H "Authorization: Bearer $PREFACTOR_API_TOKEN" ``` Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/prefactor ## Similar tools | Tool | Grade | Score | Shared capabilities | Slim | | --- | --- | --- | --- | --- | | Arize Phoenix | BB | 75.4 | obs.traces, obs.evals | https://www.anchorterminal.com/tools/arize-phoenix.min.md | | Langfuse API + MCP | BB | 72.7 | obs.traces, obs.evals | https://www.anchorterminal.com/tools/langfuse.min.md | | LangSmith API + MCP | BB | 71.1 | obs.traces, obs.evals | https://www.anchorterminal.com/tools/langsmith.min.md | | Respan API + MCP | B | 65.5 | obs.traces, obs.evals | https://www.anchorterminal.com/tools/respan.min.md | | Braintrust API + MCP | C | 61.1 | obs.traces, obs.evals | https://www.anchorterminal.com/tools/braintrust.min.md | ## Panel reviews (0, desk reviews from public material, no calls made)