PDF Modifier

io.github.mlorentedevPublished by GitHub account mlorentedevv1.6.0Updated Oct 27, 2026

Modify PDF text, replace with regex, and analyze layout while preserving fonts.

VerifiedSTDIODesktop onlyFiles & StorageDeveloper Tools

Overview

AI-generated overview

Local MCP server that lets an assistant inspect PDF structure, fonts and hyperlinks, then edit PDF text with font-preserving replacements.

What you can do
  • Read a PDF's structure and inspect the fonts it uses
  • List existing hyperlinks in a document
  • Modify PDF content, including find-and-replace text and regex-based bulk replacements while keeping font family, weight, size and color
  • Create clickable links or neutralize existing ones
  • The same package also ships a command-line tool and a web UI for drag-and-drop editing
When to use it
Useful when an assistant needs to edit wording inside existing PDFs, such as fixing drafts, renaming fields or bulk-replacing patterns, without losing the original typography, or when you want to inspect a PDF's layout, fonts and links before changing it.
Requirements
Runs as a local process on the user's machine (desktop only, no web executable). Installed from PyPI as pdf-modifier-mcp and typically launched with uvx, so Python and uv are needed. No authentication, environment variables or headers are declared.
Before you install
The modify tool writes changes to PDF content, so work on copies and keep backups. Regex-based bulk replacement can alter more text than intended; preview results before relying on them. The web UI and API components are separate from the MCP server and are not required for assistant use.

Installation

In SourceWeft

  1. Open PDF Modifier in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

PDF Modifier

CLI + MCP server + Web UI for PDF text replacement with font style preservation.

[CI] [PyPI] [Python 3.12+] [Docs] [License: MIT]

Quick start

bash
pip install pdf-modifier
# CLIpdf-mod modify input.pdf output.pdf -r "Draft=Final"
# MCP server (for Claude/Cursor/Codex)claude mcp add -s user pdf-modifier -- uvx pdf-modifier

Interfaces

InterfaceDescriptionRun
CLIpdf-mod — batch jobs, scripting, CI pipelinesmake run cli ARGS="..."
MCP Serverpdf-modifier — AI agents edit PDFsmake run mcp
Web UIFastAPI + SvelteKit — drag & drop, preview, replacemake up (Docker) or make run api + make run frontend

Features

  • Text replacement — find and replace with font style preservation (family, weight, size, color)
  • Regex support — pattern-based bulk replacements (--regex)
  • Hyperlinks — create clickable links or neutralize existing ones
  • Batch processing — apply same replacements to multiple files
  • Web UI — drag & drop PDF upload, structure browser, page preview with zoom, text highlighting
  • MCP tools — read_pdf_structure, inspect_pdf_fonts, list_pdf_hyperlinks, modify_pdf_content

Development

bash
# Setupmake setup
# Run testsmake test
# Full check (lint + type + test)make check
# Start dev stack (Docker)make up# API: http://localhost:8000 | Web: http://localhost:8080
# Start servers locallymake run api          # FastAPI dev servermake run frontend     # SvelteKit dev server

Documentation

License

MIT

Source: README.md at commit 4d6be5a

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.6.0LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.