MCP Server for PDF Forms

Fill PDF forms from Claude, Cursor, Claude Code or any MCP client. One npx command, your FillWise API key, two tools. Works with interactive and flat PDFs.

Overview

The FillWise MCP server lets an AI assistant fill PDF forms for you. You keep working in Claude, Cursor or Claude Code, say "fill this visa application from the passport photo in my downloads", and the assistant calls FillWise, writes the completed PDF next to the original and tells you how many fields it filled.

It is the same engine as the PDF form API, wrapped as two MCP tools. No template to build, no field map to maintain, no code to write: one npx command and an API key from your account.

Key Capabilities

Capability What it means for you
fill_pdf Takes a PDF path on disk, source text and optional attachments, writes <name>.filled.pdf next to the original
fill_pdf_base64 Same tool for clients without file access: PDF in as base64, filled PDF out as base64
Any source data Plain text in any language, or up to four attached documents the AI reads: passport photos, scans, other PDFs
Interactive and flat PDFs Real form fields are filled through the fields. Flat forms get values drawn at label positions. The result says which mode was used
Page selection pages: "1, 3-6" fills only the pages you need of a long packet
Readable errors A spent quota, a scanned PDF or a bad key comes back as a sentence the assistant can act on, not a status code

How It Works

  1. Create a key at fillwise.ai/account, section API keys. It is shown once, so copy it right away.
  2. Add the server to your client. The package is on npm as fillwise-mcp, Node.js 18 or newer is required.
  3. Ask the assistant to fill a form. It picks the tool, sends the PDF and your data, and saves the result.

Claude Desktop, in claude_desktop_config.json (Settings, Developer, Edit Config):

{
  "mcpServers": {
    "fillwise": {
      "command": "npx",
      "args": ["-y", "fillwise-mcp"],
      "env": { "FILLWISE_API_KEY": "fw_live_..." }
    }
  }
}

Claude Code, one command:

claude mcp add fillwise -e FILLWISE_API_KEY=fw_live_... -- npx -y fillwise-mcp

Cursor uses the same JSON as Claude Desktop in .cursor/mcp.json, in the project or in your home folder.

A prompt that works once the server is added:

Fill ~/Downloads/schengen-application.pdf using the passport photo ~/Downloads/passport.jpg. Travel dates 12 to 26 May 2026, purpose tourism, staying at Hotel Adlon, Berlin.

Use Cases

Who What they hand to the assistant
Travel and visa agencies "Fill the visa form for each passport in this folder"
Legal and immigration Intake notes into court and immigration PDFs during a client call
HR and staffing Candidate details from the ATS export into onboarding packets
Developers A form-filling step inside an agent workflow, without writing an HTTP client
Anyone with a pile of PDFs The same twelve values into every form, dictated once

Limits and Honest Gaps

Common Questions

What is an MCP server?

MCP (Model Context Protocol) is the standard AI assistants use to call outside tools. Once the FillWise server is added, the assistant can fill a PDF form itself when you ask it to, instead of you switching to another app.

Which assistants work with it?

Any MCP client: Claude Desktop, Claude Code, Cursor, Windsurf, VS Code with Copilot agent mode and others. The server runs over stdio on your machine, so the assistant reads and writes files where you point it.

Do I need a separate plan?

No. Fills made through the MCP server go through the same API and spend the same balance as the Chrome extension: one successful fill is one auto-fill from your plan.

Where does my data go?

The PDF and the source text go from your machine to the FillWise API over HTTPS and from there to the AI provider for one fill. Nothing from the fill is stored on our side. Details are on the privacy and data security page.

Does it fill scanned PDFs?

No. A scan has no text layer, so there is nothing to anchor the values to; the tool returns a clear error instead of a half-filled document. Fillable PDFs and digital flat PDFs work.

Try it on your next form

Install the FillWise Chrome extension and fill your first form in under a minute.

Get Chrome extension