Skip to content

Releases: Open-Document-Alliance/PDF-Tools

PDF Tools v0.8.6: New Sign Mode and URL-to-PDF Workflows

24 Apr 19:42

Choose a tag to compare

PDF Tools v0.8.6: New Sign Mode and URL-to-PDF Workflows

PDF Tools v0.8.6 adds the new Sign mode to the MCPB viewer and makes signing/form workflows more dependable in Claude Desktop and other local MCP hosts.

The biggest upgrade is that PDFs can now move from "view/fill/manage pages" into an actual signing workflow: Claude can find signature/date zones, the viewer exposes a Sign tab, users can draw or reuse signatures, and date/signature boxes can be placed on the PDF. When Claude detects where a signature or date belongs, it now gets exact, visible coordinates in the tool response, not just hidden structured metadata. That makes it easier for Claude to explain what it found, inspect tricky PDFs, and place signatures on the line instead of near the line.

If you use PDF Tools for W-9s, business forms, municipal applications, rotated pages, or local-first PDF workflows, this is the build to install.

Highlights

  • Added the new viewer Sign mode: Signature and Date zones, saved/drawn signatures, manual signature fields, signing packets, text stamping, inspect-region, region preview, and preview-to-zone flows.
  • Validated Sign mode on W-9 signature/date rows so detected zones land on the actual signing row, not on printed labels.
  • Added visible coordinate output to detect_signature_zones, including page, x, y, width, height, label, confidence, and source.
  • Fixed rotated-page signing overlays so signatures and dates rotate with the page instead of remaining upright on sideways pages.
  • Added page-bounded reading and search tools: read_pdf_pages and search_pdf_text, so Claude can work with targeted excerpts instead of always reading a whole document.
  • Added visual rendering tools: render_pdf_page and render_pdf_region, including a macOS PDF renderer fallback for tougher scanned or image-heavy PDFs.
  • Added fetch_pdf_from_url, giving Claude a local-machine path for downloading PDF URLs that often fail from sandboxed shell/web fetches.
  • Added Claude Desktop allowed-directory sandbox settings so users can explicitly control which local folders PDF Tools may read from or write to.
  • Hardened same-document save behavior across fill/sign/text/page-management flows so follow-up edits keep using the active working document instead of creating confusing duplicate files.
  • Preserved quoted CSV values, including values with commas, in bulk fill workflows.
  • Hardened XFA form display after force_xfa=true fills, including a Claude Desktop sanity check that rendered the filled output without Invalid PDF Structure.
  • Added a non-standard municipal PDF fixture from Sandy Springs, GA to the golden placement checks, with pinned SHA256 bytes and required release-gate coverage.
  • Rebuilt and reinstalled the final 0.8.6 MCPB in Claude Desktop after adversarial review, then validated coordinate detection, W-9 display, Sandy Springs display, and XFA output display.
  • Validated the ZIP/share-package path by extracting it into a clean temporary directory, installing production dependencies with an isolated npm cache, and launching the server over MCP stdio.

Since the Last Public Release

The previous public GitHub release was v0.7.3, so v0.8.6 includes more than the final placement polish. The broader release adds the Sign tab/mode, signature and date zone handling, region inspection/rendering, PDF URL fetching, safer local directory controls, active-document lifecycle hardening, and a much larger automated/manual validation suite.

This release also improves Claude's task reliability by breaking PDF work into more purpose-built MCP tools. Instead of one brittle "download/read/fill/sign" operation, Claude can now fetch a PDF URL locally, read bounded page ranges, search text, render full pages or regions, detect signature/date zones, and then use Sign mode to apply the result.

Validation

Release gates completed for this build:

  • npm test: passed 19 files / 179 tests, with the known Vitest close-timeout warning after successful completion.
  • RELEASE_GATES=1 npm test -- test/golden-set-placement.test.js: passed, including the required URL-backed Sandy Springs fixture.
  • npm run build:ui: passed.
  • npm run smoke:ui-dev: passed.
  • Claude Desktop reinstall: passed with installed extension version 0.8.6.
  • Claude Desktop W-9 coordinate/display sanity: passed.
  • Claude Desktop XFA output display sanity: passed.
  • Claude Desktop Sandy Springs display/signature-zone sanity: passed.
  • Playwright MCP checks for inspect-region, preview-to-zone, draw-signature, and rotated overlays: passed.
  • Clean extracted share-package MCP stdio install: passed with 37 tools exposed.
  • MCPB artifact inspection: passed; generated local evidence files such as *-sign.png, .playwright-mcp/, and .test-tmp*/ are not included.

One known test-infrastructure caveat remains: npm run smoke:ui-preview-zone is still flaky in the agent-browser harness. The product behavior it covers was validated through Playwright MCP and recorded in the durable test ledger.

Artifacts

Attach these files to the GitHub release:

  • pdf-toolkit-mcp.mcpb
  • pdf-toolkit-mcp.zip

SHA256:

e754aee83ee7a3a4ecdfb6e7d54b6404a3a84c199552afdb3b1adac7ee7e8104  pdf-toolkit-mcp.mcpb
ad61574c42d5c4446fdd05a216ab1abc33220abe668de3a118c1df612ae9ff55  pdf-toolkit-mcp.zip

Install

Claude Desktop users should download pdf-toolkit-mcp.mcpb from this release and double-click it to install.

Users of Cursor or another local MCP host can use pdf-toolkit-mcp.zip or the source checkout and point their MCP config at server/index.js.

Compatibility Notes

PDF Tools remains local-first: PDFs, saved profiles, and saved signatures stay on the user's machine. This release targets Claude Desktop and local MCP hosts; it does not add a remote connector for Claude Cowork / web-hosted Claude.

v0.7.3

10 Apr 18:41

Choose a tag to compare

Fix: Viewer crash in Claude Desktop

pdfjs-dist 5.6.205 (upgraded in v0.7.2) uses Map.prototype.getOrInsertComputed — an ES2025 API only available in Chrome 134+. Claude Desktop's Electron ships an older Chromium, causing "Failed to render page" errors for every PDF in the interactive viewer.

Changes

  • Pin pdfjs-dist to 5.4.624 (last compatible version)
  • Add viewer-compat test to catch Chromium-incompatible APIs in future builds
  • Add upgrade safeguards to CLAUDE.md and release checklist

Install

Download pdf-toolkit-mcp.mcpb and open it in Claude Desktop.

v0.7.2

09 Apr 00:24

Choose a tag to compare

PDF Tools v0.7.2

This patch release fixes a few regressions in the interactive viewer and page-management flow, with a focus on correctness and cross-platform behavior.

Fixed

  • Fixed Manage Pages save behavior on Windows-style file paths.

    • The viewer now builds output paths correctly for both POSIX and Windows paths when saving managed PDFs.
  • Fixed rotated-page orientation detection in get_page_analysis.

    • Page analysis now accounts for page rotation metadata, so 90°/270° rotated pages are classified by their displayed orientation instead of their raw media-box dimensions.
  • Fixed the page-manager save flow so the viewer reopens the saved PDF directly.

    • The app now consumes the returned tool result itself instead of relying on host-side forwarding behavior.
  • Fixed stderr suppression so it no longer silences unrelated concurrent writes.

    • Warning suppression is now scoped to the async operation that needs it, reducing packaging/runtime risk in multi-request scenarios.

Internal improvements

  • Added targeted regression tests for:

    • Windows/POSIX host path handling
    • rotated-page analysis
    • tool-result payload parsing
    • scoped stderr suppression
  • Synced the Cursor share bundle with the runtime fixes so the packaged stdio server matches the main server behavior.

Verification

Release build checks completed successfully:

  • npm test
  • npm run build:ui
  • mcpb pack
  • node package-for-friend.js

Release artifacts

Attached to this release:

  • pdf-toolkit-mcp-0.7.2.mcpb
  • pdf-toolkit-mcp.zip

v0.7.1

08 Apr 23:28

Choose a tag to compare

PDF Tools v0.7.1

This is a patch release focused on runtime consistency and packaging.

What changed

  • upgraded the MCP, viewer, and PDF toolchain
  • updated pdfjs-dist to 5.6.205
  • updated @modelcontextprotocol/sdk to 1.29.0
  • synced the Cursor share bundle with the main runtime
  • fixed share-package drift in metadata, helper files, and built viewer assets
  • updated the share installer flow to consistently use pdf-tools
  • tightened packaging rules so local repo files are less likely to leak into the Desktop bundle

Validation

Built and checked locally with:

  • npm test
  • npm run build:ui
  • node package-for-friend.js
  • mcpb pack
  • MCP stdio smoke tests against both the main server and the share server

Artifacts

  • pdf-toolkit-mcp.mcpb for Claude Desktop
  • pdf-toolkit-mcp.zip for Cursor and other stdio MCP hosts

v0.7.0 — Visual Page Manager + AI Page Analysis

27 Mar 00:13

Choose a tag to compare

What's New

Visual Page Manager

  • "Manage Pages" mode in the PDF viewer — toggle between reading and page management
  • Thumbnail grid with lazy rendering (IntersectionObserver, 120px thumbnails)
  • Pointer-events drag to reorder pages — works in all MCP App sandboxes
  • Click to select (single, Shift+range, Ctrl/Cmd+multi), rotate CW/CCW, mark for delete
  • "Save as new file" applies all changes in one pass — original is never modified
  • Keyboard accessible (Tab, Space, Arrow keys) with ARIA roles and focus management
  • Reduced motion support via prefers-reduced-motion

New Tools

apply_page_plan — Reorder, rotate, and delete PDF pages in a single operation. Accepts a plan object with page_order (which pages to keep, in what order) and rotations (per-page rotation degrees). Pages omitted from the order are deleted. Saves as a new file.

get_page_analysis — Analyze every page in a PDF: dimensions, orientation (portrait/landscape), text length, first 100 characters of text, and image presence. Automatically identifies blank pages and pages with minority orientation. Claude uses this to suggest cleanup actions like removing blank backs and rotating sideways pages.

Also Included

  • DESIGN.md — full design system for the MCP App UI
  • Test suite: 16 new tests for both tools (35 total, vitest)
  • Integer validation for page numbers, password forwarding to pdfjs-dist
  • Partial write cleanup on failure

Install

Download pdf-toolkit-mcp.mcpb below and open it with Claude Desktop, or install from the Claude Desktop extension directory.


Full changelog: v0.6.0...v0.7.0

v0.6.0 — Merge, Split, Rotate, Reorder

24 Mar 17:26

Choose a tag to compare

What's New

PDF Tools now handles the most common PDF operations — merge, split, rotate, and reorder pages — all locally on your computer. No uploading to web tools required.

5 New Tools

  • merge_pdfs — Combine multiple PDFs into a single document with visual verification
  • split_pdf — Split by page ranges ("1-5,6-10") or at regular intervals ("every 5")
  • rotate_pdf_pages — Rotate specific or all pages by 90°, 180°, or 270°
  • reorder_pdf_pages — Rearrange pages in any order
  • get_pdf_info — Quick metadata lookup (page count, file size, dimensions, form fields)

Improvements

  • Manipulation tools open the interactive viewer so you can immediately see the result
  • New loadPdf helper centralizes PDF loading with better error messages
  • Profile name validation prevents path traversal (security fix)
  • CSV filename sanitization in bulk_fill_from_csv (security fix)
  • Fixed setRotation API to use pdf-lib's degrees() helper
  • First automated tests (19 unit tests for page range parsing via vitest)
  • 3 new prompts in the extension listing for merge/split/rotate scenarios
  • Updated listing: "PDF Tools - View, Fill, Merge, Split, Extract, Analyze"

Stats

  • 19 tools total (was 14)
  • 12 files changed, 1,649 insertions
  • 19 automated tests (first test suite for the project)

Full Changelog

v0.5.1...v0.6.0

v0.5.1

17 Mar 14:53

Choose a tag to compare

Tool Annotations for Anthropic MCP Directory

Adds MCP tool annotations to all 14 tools as required by Anthropic's directory review (#21).

Changes:

  • All tools now include annotations with title, readOnlyHint, destructiveHint, idempotentHint, and openWorldHint
  • Fixed .mcpbignorepdf-toolkit-mcp-share/ was leaking into the bundle (stale pdf-filler-mcp-share/ pattern)
  • Added read_pdf_bytes to manifest.json tools array

v0.5.0

16 Mar 23:05

Choose a tag to compare

Interactive PDF Viewer

PDF Tools now includes a full interactive PDF viewer powered by PDF.js, rendered inline in Claude Desktop conversations via MCP Apps.

New: display_pdf tool

  • View any PDF with page navigation, zoom, and fullscreen
  • Search text across all pages with highlighted results
  • Select and copy text directly from PDFs
  • Automatically detects form fields and shows them in a sidebar with fill progress
  • Keyboard shortcuts (arrow keys, Ctrl+F, +/-, Escape)
  • Dark mode support via host theme sync
  • Page position saved per document

How it works

The viewer uses chunked byte streaming (read_pdf_bytes) via the MCP Apps ext-apps SDK. PDF.js loads pages on demand through PDFDataRangeTransport — no need to load the entire file into memory.

Other changes

  • Upgrade to MCP Apps ext-apps SDK v1.2.2
  • Upgrade MCP SDK to v1.27.1, @napi-rs/canvas to v0.1.97
  • Manifest version upgraded to 0.3
  • Tool descriptions now include local filesystem path hints to prevent Claude from using container paths
  • read_pdf_fields and display_pdf descriptions updated to prevent redundant tool calls
  • Profile directory migrated from ~/.pdf-filler-profiles to ~/.pdf-toolkit-files (automatic migration on first run)
  • Author updated to Open Document Alliance
  • New view_and_analyze_pdf prompt
  • Added Vite build pipeline for single-file HTML viewer
  • Added scripts/reinstall.sh for development testing

Artifacts

  • pdf-toolkit-mcp.mcpb — Claude Desktop extension (double-click to install)

Full Changelog

v0.4.1...v0.5.0

v0.4.1

16 Jan 05:10

Choose a tag to compare

Fixes #6 by suppressing PDF font warnings on stderr during PDF parsing/rendering, preventing JSON-RPC parse errors in Claude Desktop/Cursor.

Artifacts:

  • pdf-toolkit-mcp.mcpb
  • pdf-toolkit-mcp.dxt
  • pdf-toolkit-mcp.zip

PDF Tools v0.4.0 - Document Analysis & Intelligence

26 Sep 18:50

Choose a tag to compare

🚀 What's New in v0.4.0

🎯 Expanded Scope: Now PDF Tools

Renamed to better reflect the comprehensive PDF capabilities beyond just form filling.

✨ New Capabilities

  • 📖 Document Analysis - Analyze research papers, contracts, technical manuals (300+ pages)
  • 📊 Data Extraction - Extract tables and structured data from any PDF type
  • 🔍 Contract Comparison - Compare multiple versions to identify changes
  • 📝 Enhanced Prompts - 10+ specialized prompts for different use cases:
    • Research paper analysis & literature review
    • Contract comparison & legal review
    • Financial statement extraction
    • Technical documentation summarization
    • Bulk invoice processing
    • Interactive Q&A sessions

🛠 Technical Improvements

  • Better environment variable handling for default directories
  • Enhanced resource URI generation for Claude's PDF API
  • Improved documentation and examples
  • Extended keyword coverage for discoverability

📦 Installation

For Claude Desktop

Download pdf-filler-simple.dxt and install via Settings → Extensions

For Cursor IDE

Download pdf-filler-mcp.zip, unzip, and run the installer

🎯 Perfect For

  • Researchers analyzing academic papers
  • Lawyers comparing contracts
  • Engineers reviewing technical specs
  • Businesses processing invoices
  • Anyone working with complex PDFs

💡 Quick Start

Just ask Claude:

  • "Analyze this research paper and extract key findings"
  • "Compare these two contracts and show me what changed"
  • "Extract all tables from this financial report to CSV"
  • "Fill this W-9 with my business information"

📖 Full Documentation

See the README for complete usage instructions