PDF Modifier
Modify PDF text, replace with regex, and analyze layout while preserving fonts.
Open source Open in the app JSON README (API)
About
Modify PDF text, replace with regex, and analyze layout while preserving fonts.
Details
- Kind
- MCP servers
- Topic
- Files & documents
- Publisher
- mlorentedev
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 1.6.0
- Stars
- 1
- Forks
- 2
- Last push
- 2026-08-18T01:15:04Z
- Repository state
- ativo
- Language
- Python
- Added
- 2026-08-29 04:00:50
- Updated
- 2026-08-29 04:00:50
- Origin id
io.github.mlorentedev/pdf-modifier-mcp
README
# PDF Modifier MCP **CLI + MCP server + Web UI** for PDF text replacement with font style preservation. [](https://github.com/mlorentedev/pdf-modifier-mcp/actions/workflows/ci.yml) [](https://pypi.org/project/pdf-modifier-mcp/) [](https://www.python.org/downloads/) [](https://mlorentedev.github.io/pdf-modifier-mcp/) [](https://opensource.org/licenses/MIT) ## Quick start ```bash pip install pdf-modifier-mcp # CLI pdf-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-mcp ``` ## Interfaces | Interface | Description | Run | |-----------|-------------|-----| | **CLI** | `pdf-mod` — batch jobs, scripting, CI pipelines | `make run cli ARGS="..."` | | **MCP Server** | `pdf-modifier-mcp` — AI agents edit PDFs | `make run mcp` | | **Web UI** | FastAPI + SvelteKit — drag & drop, preview, replace | `make 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 # Setup make setup # Run tests make test # Full check (lint + type + test) make check # Start dev stack (Docker) make up # API: http://localhost:8000 | Web: http://localhost:8080 # Start servers locally make run api # FastAPI dev server make run frontend # SvelteKit dev server ``` ## Documentation - [Full documentation site](https://mlorentedev.github.io/pdf-modifier-mcp/) - [Architecture Decision Records](docs/adr/) - [Troubleshooting](docs/troubleshooting/) - [Lessons learned](docs/lessons.md) ## License MIT