Paperpalpaperpal.com
Paperpal's API program shows strength in agent discovery infrastructure but has critical gaps in two areas that directly block partner and agent adoption: the SDK lacks the type-safety and error-handling foundations that modern integrations depend on, and the developer documentation provides no quickstart or code examples — meaning partners and their AI agents have no obvious first step and no ready-to-use patterns to build from. The highest-priority work is establishing a reliable, self-serve onboarding path with runnable examples, followed by hardening the SDK's type contracts and error semantics so agents can integrate with confidence.
API DesignA clean, typed, well-governed API contract agents can reason about1 pass1 warn1 fail55D
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Security & governance hygienevia sdk | 15/15 | Code is formatter-clean with zero linter errors and zero style warnings. Investigated: sdk 100%, wellknown 0%. | No leaked secrets, no critical lint violations, no OWASP API Top-10 spec smells, and a published vulnerability-disclosure channel. |
| warn | Example coveragevia sdk | 5/10 | README is present but has no runnable quickstart. Investigated: sdk 50%, docs 0%. | Examples carry shape semantics schemas under-specify — for humans and agents alike. |
| fail | Schema coverage & depthvia sdk | 0/25 | no py.typed marker (PEP 561). Investigated: sdk 0%. | Typed, complete request/response schemas are what make agent function-calling possible. |
| na | Machine-readable, versioned contract | —/25 | No surface produced evidence for this capability in this run. | A current OpenAPI version with a declared versioning scheme lets agents reason about the contract. |
| na | Auth declared & discoverable | —/25 | No surface produced evidence for this capability in this run. | Agents can only authenticate when auth is declared, scoped, and discoverable. |
Developer ExperienceThe context both developers and agents need to integrate fast — onboarding, code samples, complete descriptions and worked examples1 pass0 warn2 fail55D
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Self-service developer portalvia docs | 29/29 | Self-service signup available at https://sso.editage.com/signup?continue=https%3A%2F%2Fapp.editage.com, with a free tier or sandbox documented — an agent can onboard without contacting sales. Investigated: docs 100%. | Self-serve key/account creation is the fast first call for partners, with no sales gate. |
| fail | Quickstart presentvia docs | 0/25 | No quickstart or getting-started page found at the conventional docs paths, so new developers and agents have no obvious first step. Investigated: docs 0%. | A quickstart is the fastest path from landing page to first successful call. |
| fail | Code samples in docsvia docs | 0/18 | No code samples detected across 20 sampled docs pages, so a coding agent gets no ready-to-use examples. Investigated: docs 0%. | Multi-language samples shorten time-to-first-call. |
| na | Description completeness | —/15 | No surface produced evidence for this capability in this run. | Complete descriptions are the context humans and agents need to use endpoints. |
| na | Changelog published | —/13 | No surface produced evidence for this capability in this run. | A published changelog lets partners track changes without surprise. |
Agent DiscoveryPartners and their agents can find your APIs — llms.txt, registries, crawlable and reachable docs0 pass4 warn0 fail65C
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| warn | Docs reachable, not hard auth-gatedvia docs | 22.5/30 | Server ignores Accept: text/markdown header (0/50 sampled pages return markdown). Investigated: docs 75%. | Agents can only index and fetch docs they can reach — past auth gates and over correct HTTP semantics. |
| warn | llms.txt present, valid & comprehensivevia docs | 16.9/30 | No llms.txt directive found in HTML of any of 50 sampled pages. Investigated: docs 56%, sdk 0%. | A valid, comprehensive llms.txt is the machine-readable entry point for agents. |
| warn | Crawlable / AEOvia wellknown | 9/12 | Sitemap has lastmod on only 100% of entries, or its newest entry is over 90 days old. Investigated: wellknown 75%. | Bots allowed plus a fresh sitemap make docs findable by agent crawlers. |
| warn | Registry & SDK presencevia sdk | 7/28 | No MCP server, tool manifest, or list-tools capability is discoverable (server entrypoint: absent, tool manifest: unknown, list-tools: unknown). Investigated: sdk 25%, docs 0%, cli 0%. | Listing in MCP registries and publishing SDKs puts the API where agents and their tooling look. |
Agent UnderstandingAgents can correctly interpret your APIs — machine-readable errors, consistent descriptions, structured data, parseable docs2 pass2 warn1 fail68C
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| pass | Operation purpose clarityvia sdk | 25/25 | Surface uses a single dominant casing convention (snake_case). Investigated: sdk 100%. | Agents select the right endpoint from its summary + operationId; clear, named operations make tool-selection reliable — the strongest driver of correct tool choice. |
| warn | Agent-navigable, token-efficient docsvia docs | 17.9/22 | No sampled pages support .md URLs (0/50 tested). Investigated: docs 81%. | Server-rendered, clean, small-footprint docs are what an agent can cheaply fetch and parse correctly. |
| pass | Docs structured datavia docs | 8/8 | Machine-readable JSON-LD Article markup on 18 of 20 assessed pages (90%), with dateModified present. Investigated: docs 100%. | Structured data (JSON-LD/schema.org) on docs pages gives agents an unambiguous parse target and is what answer engines cite. Detected on the JS-rendered head (Firecrawl) for a bounded page budget, so JS-injected JSON-LD is now caught; pages we can't render are excluded rather than failed. |
| warn | Agent instructions file (AGENTS.md)via sdk | 5/10 | No agents.md or skill.md context file found (nice-to-have for agent operation). Investigated: sdk 50%, wellknown 0%. | An AGENTS.md gives coding agents explicit setup, auth, and usage instructions to interpret and operate the API — beyond llms.txt's link index. |
| fail | Machine-readable errors (RFC 9457)via sdk | 0/28 | No single common SDK base error class was found; errors do not share one root. Investigated: sdk 0%. | RFC 9457 problem details and a documented error-code inventory let agents parse failures without burning tokens. |
| na | Description consistency across surfaces | —/7 | Only 1 surface description(s) with ≥6 tokens available; need at least 2 to compare. | Every surface tells the same story about what the product is. |
Agent UsabilityAgents have the context to use your APIs reliably, not just find them0 pass2 warn1 fail48F
| Signal | Points | Findings | Rationale | |
|---|---|---|---|---|
| warn | Sandbox separationvia sdk | 10/20 | No test-mode flag or sandbox environment is exposed. Investigated: sdk 50%. | An isolated environment lets agents exercise destructive operations safely. |
| warn | Runnable collection with test scriptsvia sdk | 4.5/9 | README is present but has no runnable quickstart. Investigated: sdk 50%, platform 0%. | A public, maintained collection with assertions is runnable truth agents validate against. |
| fail | Idempotency documentedvia sdk | 0/27 | No built-in retry machinery was found; transient failures are not retried. Investigated: sdk 0%. | Documented idempotency lets agents retry safely. |
| na | Rate-limit signaling | —/22 | No surface produced evidence for this capability in this run. | Machine-readable rate-limit headers let agents throttle adaptively. |
| na | Pagination documented & consistent | —/22 | No surface produced evidence for this capability in this run. | Consistent, documented pagination lets agents traverse collections. |