pdfcrowd is Good to agents.
Discry independently scored how well an AI agent can discover and understand the pdfcrowd API from what’s public — not whether it’s usable. Below: every signal we checked, what’s costing the score, and what to change.
SCORED UNDER RUBRIC 1.2 · A full re-launch under Discry Score 2.5 — a new behavioral instrument, not comparable to these scores — is in progress.
Discovery
45% of score · 52/100Comprehension
55% of score · 96/100What we found
- An agent looking to integrate PDFCrowd would immediately succeed: a dedicated, content-negotiated markdown agent guide (html-to-pdf-ai.md, served as text/markdown) walks through evaluation, integration, and troubleshooting with copy-pasteable curl and SDK snippets and public demo credentials, so an agent can produce a working PDF before any signup.
- The llms.txt is a model example — API-focused, right-sized, with descriptive sections that route an agent to the correct product surface (developer APIs vs. online tools vs. no-code integrations) and explicitly link the coding-agent guide, so an agent discovers exactly the right entry point.
- Error recovery is exceptional for agents: a symptom-to-cause-to-fix troubleshooting table (blank page, login screen, cookie banner, missing lazy images, ignored page breaks) plus a debug-log workflow means an agent can self-correct failures rather than only reading opaque codes.
- The single biggest discoverability gap is the absence of any machine-readable OpenAPI/Swagger spec — PDFCrowd exposes a form-POST HTTP endpoint plus per-language SDKs, so an agent cannot auto-generate a typed client and must parse HTML/markdown reference pages instead.
- Naming is split by design between snake_case HTTP fields (content_viewport_width) and camelCase SDK methods (setContentViewportWidth); the docs consistently present both side by side, which keeps it navigable but forces an agent to track two vocabularies for the same option.
What to change
Prioritized by impact on discoverability. You (or your docs platform) deploy these — Discry never touches your API.
- 01Publish a machine-readable OpenAPI 3.x spec for the HTTP conversion endpoint (the 100+ parameters and status codes are already fully documented) at a stable URL like /api/openapi.json — this is the single highest-impact discovery fix and would let agents auto-generate typed clients.
- 02Add an AGENTS.md to the primary repos (pdfcrowd-mcp-pdf-export and the language SDK repos) so coding agents operating in a checked-out repo get build/test/integration context; today that guidance lives only on the website, not in-repo.
- 03Add a JSON pointer to the existing MCP manifest at /.well-known/mcp.json (the server.json already exists in the MCP repo) so agents can discover the MCP tool via the well-known path, not just via third-party registries.
- 04Publish an llms-full.txt containing the concatenated agent guide, status codes, and method index so an agent can load complete API context in one fetch instead of crawling multiple pages.
- 05Where feasible, surface a single canonical option name (or an explicit mapping table on each reference page) so agents don't have to reconcile the snake_case/camelCase split across HTTP and SDK docs.
Execution coverage · INFORMATIONAL, UNSCORED
Whether an agent can actually complete a call and recover from errors is the deeper Audit layer — documented here, but not part of the Discry Score.
Execution characteristics are unusually well documented for agents. Authentication is HTTP Basic (username + API key) with a WebSave key variant, and public demo credentials (demo/demo) let an agent test without signup. Errors are documented as a dual HTTP status + PDFCrowd reason-code system (200/400/401/403/413/429/430/503 plus ~90 numbered reason codes), each with a human-readable message and, in the AI guide, symptom-to-fix mappings. Rate and concurrency limits are documented (429/430 HTTP codes and reason codes 120/121) with plan-upgrade guidance. Pagination and idempotency are not applicable/undocumented for this synchronous conversion API.