What is PDF Agent Stack?
PDF Agent Stack is the collective name for four independent MCP servers and three Skills that give AI agents the ability to read, verify, and write PDFs — grounded in the spec.
Components
| Kind | Name | Role | Distribution |
|---|---|---|---|
| MCP | pdf-spec-mcp | Consult the PDF specification (ISO 32000 and 16 more documents) | npm · GitHub |
| MCP | pdf-reader-mcp | Observe a PDF's internal state (19 observation tools) | npm · GitHub |
| MCP | pdf-verify-mcp | Verify authenticity and conformance (7 judgment tools) | npm · GitHub |
| MCP | pdf-writer-mcp | Generate PDFs following the spec (20 creation/editing tools) | npm · GitHub |
| Skill | pdf-trust | Vet incoming PDFs and confirm trust (Trust Report) | GitHub |
| Skill | pdf-publish | Generate through a quality-gated pipeline (Publish Report) | GitHub |
| Skill | pdf-read | Pull what you need out of large or unreadable PDFs (Read Report) | GitHub |
Two libraries sit under the servers and are published on their own:
- pdf-constraints — the data library behind pdf-verify's clause checking, transcribing ISO 32000 clauses into machine-checkable constraint tables. Usable on its own, including as a CLI in CI
- normativepdf — the PDF library pdf-writer writes through, in which every behaviour is tied to an ISO 32000 clause
On architecture and responsibilities
How these fit together and run — see Architecture & Responsibilities for the details.
An agent may call the MCPs directly, or leave the orchestration to a Skill. With the Skills installed, the call order, how to read the verdicts, and the report format are all fixed for you.
Try it in 5 minutes
- Set up pdf-reader following Getting Started
- Point it at a local PDF: "Show me this PDF's metadata and structure"
- For a signed PDF, add pdf-verify: "Has this PDF been tampered with?"
- Move on to real workflows in Use Cases