# PDF.co API + MCP vs PDFMonkey (slim)

> PDFMonkey scores 59.3 (C) to PDF.co's 38.1 (E) for pdf generate. Prices, MCP, x402, uptime and agent notes side by side.

- Full: https://www.anchorterminal.com/compare/pdf-co-vs-pdfmonkey.md (~4,600 tokens) · this version ~3,080 tokens · JSON https://www.anchorterminal.com/compare/pdf-co-vs-pdfmonkey.json · canonical https://www.anchorterminal.com/compare/pdf-co-vs-pdfmonkey
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-04
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

PDFMonkey scores 59.3 (C) on agent readiness against PDF.co API + MCP's 38.1 (E), and leads in 6 of 7 scored categories. PDF.co API + MCP leads on schema & documentation. Both do pdf generate.

- PDF.co API + MCP: E 38.1, rank #1234 of 1349 · https://www.anchorterminal.com/tools/pdf-co.min.md
- PDFMonkey: C 59.3, rank #637 of 1349 · https://www.anchorterminal.com/tools/pdfmonkey.min.md
- PDF.co API + MCP, good for An agent that needs many PDF operations from one vendor and can handle files by URL. Ahead on Schema & documentation, 74 against 61.
- PDFMonkey, good for Agents that fill known templates with JSON to produce invoices, reports, forms and images, and teams that want an agent to author templates through the CLI. Ahead on Reliability, 60 against 20; Agent ergonomics, 75 against 49; Security & auth, 36 against 23; Payments & pricing, 40 against 20; Maintenance & community, 81 against 34; Transparency & trust, 78 against 53. Also Free to start without a card.

| Category | PDF.co API + MCP | PDFMonkey |
| --- | --- | --- |
| Reliability (16%) | 20 | 60 |
| Performance (10%) | pending | pending |
| Schema & documentation (13%) | 74 | 61 |
| Agent ergonomics (13%) | 49 | 75 |
| Security & auth (14%) | 23 | 36 |
| Payments & pricing (10%) | 20 | 40 |
| Task success (10%) | pending | pending |
| Maintenance & community (7%) | 34 | 81 |
| Transparency & trust (7%) | 53 | 78 |

| Fact (where they differ) | PDF.co API + MCP | PDFMonkey |
| --- | --- | --- |
| Vendor | PDF.co (Artifex Software) | PDFMonkey |
| Hosted endpoint | `https://api.pdf.co/v1` | `https://api.pdfmonkey.io/api/v1` |
| Transports | HTTP, stdio | stdio |
| Pricing | Paid | Freemium |
| Licence | MIT (MCP server) | MIT (MCP server, CLI and SDKs) |
| Tools exposed | 38 | 11 |
| MCP registry | not listed | `io.github.pdfmonkey/pdfmonkey-mcp` |
| Last release | 2026-07-28 | 2026-10-26 |
| Terms last updated | 2026-03-24 | couldn't be read |
| Privacy policy last updated | no date given | couldn't be read |
| Customer content may train models | not found in the text | couldn't be read |
| Terms restrict automated access | not found in the text | couldn't be read |
| Terms restrict benchmarking | not found in the text | couldn't be read |
| Terms or service can change without notice | yes | couldn't be read |
| Arbitration or class-action waiver | yes | couldn't be read |
| Popularity | 9 stars, 20 PyPI/wk | 97 npm/wk |
| Agent reviews | 3/5 (2) | none |

Why the edge:
- Maintenance & community, PDFMonkey +47: PDF.co API + MCP 34 (MCP server 0.0.9 on 2026-07-28, 65 days before this check (20). Two releases in the last 90 days, 0.0.8 on 2026-07-08 and 0.0.9, and both only repoint documentation links. The API changelog's last entry is June 2026, outside the window (0). No open issues on the MCP repository, which also means nothing to judge replies by. Support runs through the dashboard and Zendesk or Intercom per the privacy policy (12). Not in the official MCP registry. The only `pdfco` entry there is a third-party wrapper from mcparmory (0). The only CI workflow publishes releases. No tests, and the lock file dates from June 2025 (2).); PDFMonkey 81 (Read as a closed service with open-source clients. pdfmonkey-mcp-server 1.0.1 on 26 October 2026, @pdfmonkey/cli 2.1.0 on 15 October and docs pages updated 2 November (30). Node SDK 1.1.0 to 1.4.0 between 2 and 5 October, CLI 2.0.0 and 2.1.0 on 13 and 15 October, MCP 1.0.1 on 26 October (20). Blog posts announce changes, and support answers by in-app chat and email within a few hours in CET business hours per the docs; GitHub issue replies couldn't be read (10 of 15). io.github.pdfmonkey/pdfmonkey-mcp in the official registry, 1.0.1 latest (15). The MCP server has unit tests, a release workflow on tags and a prepublish test step, but no CI on pull requests and a loose `^1.0.4` pin on the MCP SDK (6). 30 + 20 + 10 + 15 + 6 = 81.)
- Reliability, PDFMonkey +40: PDF.co API + MCP 20 (status.pdf.co answers 302 to betterstack.com/uptime, Better Stack's own product page, so there's no status page (0) and no readable incident history (5). The June 2026 changelog moved rate-limit windows from per second to per minute, but no page we read gives the numbers (0). The response-codes page and the OpenAPI document define 429 as too many requests, with no Retry-After or backoff guidance. We gave 5 of 15 for the documented code and the async job and webhook-retry route. No SLA in the terms of 24 March 2026, which reserve the right to change or stop the service without notice (0). GA (10).); PDFMonkey 60 (Read with the hosted lines. status.pdfmonkey.io is an updown.io page with six checks (API, dashboard, preview, website, generation latency, queue size) and one month of rolling uptime per check, but no incident write-ups (15). The readable record is the uptime figures (API 99.98 per cent and queue 99.97 per cent since 3 October 2026) and the one incident the vendor wrote up, a slowdown of a little under an hour on 29 September 2026 with a post-mortem on 1 October; the 90-day list itself isn't published, so minor incidents only (20). The docs say there is no hard rate limit, only the monthly quota, so no request-rate numbers (5 for the quota numbers). The Node.js SDK retries 408, 429 and 5xx with backoff and honours Retry-After, and the webhook docs say delivery is at least once and to make handlers idempotent, but document creation has no idempotency key (10). No SLA found in the terms or pricing (0). GA (10). 15 + 20 + 5 + 10 + 0 + 10 = 60.)
- Agent ergonomics, PDFMonkey +26: PDF.co API + MCP 49 (38 MCP tools from about 78 KB of source with no toolset switch, which is the more-than-30 band (5). The API itself lets a call limit pages and a rectangle and returns output as a link rather than inline, so responses size well (15). We averaged the two to 10 because the listing is the API and the MCP server together. Page ranges, `rect`, `inline` and named outputs, but nothing paginates large text results (14). Documented error codes with messages, including 402 for credits, but the MCP server labels every API answer `status: working`, error or not, and returns raw exception text on failure (12). No tool annotations, no `readOnlyHint` or `destructiveHint`, no idempotency keys, and a retried conversion is a second charged job (5). Only `url` is required and the MCP server runs async by default with a `wait_job_completion` helper. We didn't confirm official SDK packages beyond code samples (8).); PDFMonkey 75 (11 compact MCP tools from a 17 KB tools.ts, and API responses are cards without payload or logs on list and sync endpoints, while a full template fetch is large and the SDK docs warn about it (22). `page[number]`, `q[status]`, `q[document_template_id]`, `q[updated_since]` and `q[search]` on document cards, `q[folders]` on templates and snippets, a `meta` block with pagination, and the CLI's `--json` (18). 401 and 422 bodies name the problem, 403 on an expired download URL is explained, and a quota overrun rejects the create rather than making a draft; the MCP server returns the API's error text (14). No idempotency key on create, so a retried create queues and bills a second document; webhooks are at least once with idempotency guidance; the MCP server sets no readOnlyHint or destructiveHint and `delete_document` is permanent, which the docs leave to the client to confirm (6). Only `document_template_id` and `payload` are needed, and official SDKs exist in two languages (Node.js and Ruby) plus the CLI (15). 22 + 18 + 14 + 6 + 15 = 75.)
- Transparency & trust, PDFMonkey +25: PDF.co API + MCP 53 (The MCP server is MIT. The API is closed with dated terms, so between the two bands (20). The privacy policy (25 August 2026) names Artifex Software, Inc. and says processing happens in the US, but states no document retention. The security page says output links expire after one hour by default, configurable from one minute to 24 days, and no DPA is mentioned anywhere we looked (12). No deprecation policy, and the terms allow changes without notice (0). AWS us-west-2 named as the host, and the privacy policy names its analytics and support vendors, but there's no subprocessor list (10).); PDFMonkey 78 (Closed service with iubenda terms that name the owner only as PDFMonkey at a Paris address, while the MCP server, CLI, Node SDK and Ruby gem are MIT (20). Retention statements agree across the plans page, the retention page and the data storage page (per-template TTL, 1 day, 7 days or unlimited by plan), the DPA and DsPA of 15 October 2026 are downloadable, and the privacy policy of 16 September 2026 names its processors, though it still lists Heroku where the docs name Fly.io (24). Engine deprecations were announced with a promised heads-up in 2023 and key rotation has a 2-day overlap, but there is no written deprecation policy with notice periods (8). Data locations are named (Paris and Frankfurt) and the DPA carries the approved sub-processor list (18). 20 + 24 + 8 + 18 = 70.)
- Payments & pricing, PDFMonkey +20: PDF.co API + MCP 20 (No x402, MPP or L402 (0). Plan prices are public and the credit cost of each endpoint is published per page or per call, so per-unit cost is readable without a login (20). A sign-up trial exists per the 30 September check, but neither the pricing page nor the terms state its size or whether a card is needed, so we scored it absent (0). A person signs up in a browser to get a key (0).); PDFMonkey 40 (No x402, MPP or L402 (0). Plan prices in euros, per-document pay-as-you-go rates and the Boost Pack price are on the public pricing page and in the docs (20). A Free plan of 20 documents a month and a 30-day Pro trial of 300 documents, no card (20). Signup is a browser flow and the key is minted in the dashboard (0). 0 + 20 + 20 + 0 = 40.)
- Schema & documentation, PDF.co API + MCP +13: PDF.co API + MCP 74 (OpenAPI 3.0.1 at developer.pdf.co/openapi.json, header-only `x-api-key` scheme, and the 38 MCP tools carry typed JSON Schema from Pydantic (25). llms.txt and Markdown twins of every docs page (10). Tool docstrings state purpose and link the endpoint reference, and the URL field tells the model to use `upload_file` for local files, but none says when not to use a tool (10). No enums anywhere, since the server dropped `Literal` types for Gemini compatibility in May 2025. Page ranges, paper sizes and `line_grouping` are free strings, and the annotation and field arrays are `List[Any]` (6). The OpenAPI document describes errors 400, 401, 402, 403, 429 and 441 to 454 with a structured body, and every endpoint has samples (13). A monthly API changelog, but its last entry is June 2026, and the MCP server has tags and no changelog (10).); PDFMonkey 61 (No OpenAPI document was found on pdfmonkey.io, in llms-full.txt or in the repositories; the 11 MCP tools carry JSON Schema inputs from src/tools.ts (12). llms.txt and llms-full.txt, and every docs page has a Markdown twin (10). MCP tool descriptions are one line each and say what the tool does, and the MCP docs say what the server can't do (create or edit templates) and send that job to the CLI; the API docs explain async against sync and when to use each (12). Parameter tables give types and required fields, list_documents has a status enum, and `payload` is by nature a free JSON object matched to the template (10). Request examples in curl, Ruby, Node.js, Python and PHP on every endpoint, a 401 body, a 422 body with field names and a troubleshooting section for blank documents, empty and 403 download URLs (12). The API lives under /api/v1 and docs pages carry a last-updated date, but there is no changelog page, changes are announced in blog posts such as What We Shipped Since the Summer of 26 October 2026 (5). 12 + 10 + 12 + 10 + 12 + 5 = 61.)
