Pdfops MCP logo

Pdfops MCP

Deterministic MCP tools to inspect, fill, merge, and generate PDFs through the PDFops API.

Install Pdfops MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "pdfops-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "pdfops-mcp"
      ],
      "env": {
        "PDFOPS_API_KEY": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 5 tools correctly (7d ago).

Overview

pdfops-mcp MCP server connects AI agents to the PDFops API for inspecting AcroForm fields, filling forms, merging documents, and generating invoices. It runs over stdio locally or Streamable HTTP remotely, accepting file paths, HTTPS URLs, and PDF data URIs as inputs. Local paths keep PDF bytes out of model context, while remote operation can return generated files inline. Reach for it when an agent needs repeatable PDF workflows without Chromium or native dependencies.

Use cases

  • Inspect unfamiliar PDF forms before filling them
  • Fill AcroForm templates from agent-collected data
  • Merge completed forms and supporting documents
  • Generate deterministic invoice PDFs
  • Check remaining PDFops request quota

Key features

  • AcroForm field inspection with fill templates
  • Form filling with optional flattening
  • Ordered PDF merging
  • Structured invoice generation
  • Local stdio and hosted Streamable HTTP modes
  • Inline PDF results for hosted runtimes

Tools5

What Pdfops MCP lets your agent do. Expand a tool for its parameters.

Verified live~1.5k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

21/21 checks healthy over the last 89d

What it can do

From the 5 tools this server returned when we ran it; 5 declare their own safety hints.

Can delete or modify data · 1Handles credentials · 1Makes network requests · 5Read-only tools · 4
Network at startup3 connections
Files written at startupNone
Install scriptsprepare
npm provenanceSigned build
Package age104 days
Maintainers1

Observed 2026-11-03 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 4d ago via OSV.dev · pdfops-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads1.3kPackage downloads in the last 30 days.
Last commit1d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed5Callable tools this server registers over MCP.

How Pdfops MCP works

What pdfops-mcp does

pdfops-mcp exposes a focused set of PDF operations through the Model Context Protocol. Agents can discover AcroForm field names, types, available options, and existing values; populate those fields; combine multiple PDFs in a specified order; and produce invoice PDFs from structured data. A usage tool reports the remaining request quota for the configured account.

The service is backed by the PDFops API at https://pdfops.dev. It is intended for workflows such as preparing completed forms, assembling document packets, and creating invoices from agent-collected details. Invoice generation is deterministic: identical input produces byte-identical output.

How it works

The local server communicates with an MCP client over stdio and invokes the PDFops API for each operation. PDF tools can work with local paths, HTTPS sources, or data:application/pdf;base64,... URIs. For local workflows, outputs may be written to paths selected in the tool call, so the document content does not need to pass through the model context.

A typical form workflow starts with pdf_inspect on an unfamiliar PDF. The returned field information and fill template can then guide a pdf_fill call. The fill operation can optionally flatten the result, baking values into the document and removing the editable form. pdf_merge accepts at least two PDFs and preserves the requested order.

The same server is available as a hosted Streamable HTTP endpoint at https://pdfops.dev/api/mcp. In hosted environments where the server cannot access the agent's filesystem, inputs should be reachable HTTPS URLs or data URIs, and output paths should be omitted so results are returned inline as PDF resources.

Setup and configuration

Run the local package with npx -y pdfops-mcp and add it to an MCP client's stdio configuration. Claude Code, Claude Desktop, Cursor, VS Code, Windsurf, Cline, and Zed are shown as supported configuration targets. The VS Code configuration uses a servers key and sets the server type to stdio.

PDFOPS_API_KEY is optional. Without it, requests use a keyless trial limited to 100 requests per IP per month. A free key raises the allowance to 250 requests per month. For remote use, provide the key as an authorization bearer header when configuring the hosted endpoint.

Tools and capabilities

  • pdf_inspect lists AcroForm fields, including names, types, options, and current values, and returns a fill template.
  • pdf_fill writes values into AcroForm fields. Its optional flatten setting removes the form after embedding the values.
  • pdf_merge combines two or more PDFs in the supplied order.
  • pdf_invoice creates a complete invoice PDF from structured data.
  • pdfops_usage checks quota for the configured key.

For remote requests, each PDF fetched from an HTTPS URL is limited to 4 MB, with a 4.5 MB total request limit. Inline outputs are returned as embedded application/pdf resources when no output path is supplied.

Limitations and notes

The server operates on AcroForm fields for inspection and filling; inspecting first is useful when field names are unknown. Local absolute paths work only where the MCP process can access them. In a hosted runtime, an agent's local filesystem is not available to the server, so sources must be remotely reachable or embedded as data URIs.

PDF content and supplied field values are sent to the PDFops API for processing. The service processes requests in memory and does not store documents, while API requests are logged with usage metadata for quota operation. The project is licensed under MIT.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Pdfops MCP

pdfops-mcp is an MCP server that connects AI agents to the PDFops API. Its main tools inspect AcroForm fields, fill and optionally flatten forms, merge PDFs, generate invoices from structured data, and check usage quotas. It supports local file paths as well as HTTPS URLs and PDF data URIs for remote workflows.

Install it through an MCP client's stdio configuration with `npx -y pdfops-mcp`. Claude Code can add it with `claude mcp add pdfops -- npx -y pdfops-mcp`; Claude Desktop, Cursor, and VS Code use their respective JSON MCP configuration files.

Yes, pdfops-mcp works with Cursor through a stdio MCP configuration. Set the command to `npx`, pass `-y pdfops-mcp` as the argument, and optionally set `PDFOPS_API_KEY` in the server environment.

Use `pdf_inspect` first to retrieve the AcroForm field names and a fill template, then call `pdf_fill` with the values and an output destination. Set `flatten` to true when the completed PDF should contain baked-in values instead of an editable form.

Yes, remote merging works with HTTPS PDF URLs or `data:application/pdf;base64,...` inputs. Omit the output path so the merged PDF is returned inline; each source is limited to 4 MB and the request limit is 4.5 MB.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewPdfops MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/pdfops-mcp?style=directory)](https://allmcps.com/mcp/pdfops-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/pdfops-mcp"><img src="https://allmcps.com/api/badge/pdfops-mcp?style=directory" alt="Pdfops MCP on AllMCPs" /></a>