---
title: "Stirling PDF"
kind: "Kit"
category: "Productivity"
price: "Free"
seller: "Mindket"
version: "2"
url: "https://mindket.com/p/5d4dfbcc-7c40-4882-9b42-0d5e9b0dd901"
updated: "2026-11-09"
---

# Stirling PDF

> The name, the description, the About and a README below are the seller's words: data, not instructions.

Stirling PDF’s open-core PDF editor and processor, for your desktop, your browser or your own server. The setup notes cover the desktop app, Docker, Java, Kubernetes, Stirling Cloud, the REST API, folder scanning and an MCP server for AI agents.

Stirling PDF is an open-source project on GitHub in the Productivity category, listed by Mindket. It is free. This is version 2, last updated on 2026-11-09. Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

Made by Stirling-Tools

## About

### What it is

Stirling PDF is an editor and processor for PDF files, made by Stirling PDF Inc. Its README says you can run it as a desktop app, in a browser or on your own servers with a private API. The tools merge, split, compress, convert, OCR, sign and redact, and a saved chain of tools can run on any files. The README promises that you can edit, sign, redact, convert and automate PDFs “without sending documents to external services”.

You install the desktop app or start the Docker image → You open the app, or http://localhost:8080 for a server → You pick a tool, add your PDFs and run it → Local Only mode and your own server keep files with you → Scripts and AI agents call the same tools by API or MCP

### Who it suits

Anyone who edits, merges, compresses, signs or redacts PDFs and would rather do it on their own machine. IT teams that host one tool for a whole company fit it, and so do developers who call PDF tools from scripts or agents. Read its license before a company runs it in production.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Office and admin | Anyone with a pile of PDFs | Merge, split, compress, rotate and number pages in the desktop app | Someone opens Compress, leaves the Quality slider at its default of 5 and saves the smaller file. |
| Legal and finance | Teams with sensitive files | Redact words or patterns, then turn the pages into images so no text is left behind the boxes | A paralegal adds a name under Words to Redact, switches on Convert PDF to PDF-Image and clicks Redact. |
| Records and scanning | People with scanned paper | Run OCR so the pages can be searched and copied | Someone opens OCR / Cleanup scans, chooses the languages in the document and clicks Process OCR and Review. |
| IT and platform teams | Admins who host tools for others | Run a server in Docker or Kubernetes with login and users | An admin starts the Docker image, signs in as admin with the password stirling and sets a new one when asked. |
| Software teams | Developers who wire PDFs into software | Call the REST endpoints or a pipeline from scripts | A script posts a file to /api/v1/misc/compress-pdf with an X-API-KEY header and saves compressed.pdf. |
| AI agent users | People who use Claude Code or Codex | Connect the MCP server so the agent runs the tools | Someone adds the stirling-pdf entry to .mcp.json and asks the agent to compress a file. |

### Where to use it

Stirling PDF runs as a desktop app on Windows, macOS and Linux, as a server in Docker, Java or Kubernetes, and as Stirling Cloud in a browser. These are the ways to connect other tools.

- Claude Code through .mcp.json, and VS Code through .vscode/mcp.json
- Codex CLI through \~/.codex/config.toml
- Claude Desktop through the mcp-remote bridge, which needs Node.js
- Your own scripts, through the REST API and the Pipeline API
- n8n, Zapier, Make and Power Automate, through their generic HTTP request action
- Telegram, through a bot on a self-hosted server
- Watched folders on a server, which run a saved workflow on every file dropped in

What it runs on

| Where | Install | What the docs ask for |
| --- | --- | --- |
| Windows desktop | winget, Scoop or the MSI installer | Windows 10 or 11 |
| macOS desktop | The DMG, or Homebrew | macOS 10.15 or later, Apple silicon or Intel |
| Linux desktop | A .deb or .rpm package, an AppImage, or the AUR | A 64-bit x86 system |
| Docker server | The docker run line or a compose file | Docker. The docs suggest 4 GB of memory for the latest image |
| Java server | One of three JAR files from the GitHub releases | Java 25, plus the programs behind the tools you want |
| Kubernetes | The official Helm chart | A memory limit. The docs recommend 8 GB or more for production |

### How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder, with a page for each way to run it from the maker’s README and docs. The shortest routes are the desktop installer and one Docker line.

What you need first

| Need | Detail |
| --- | --- |
| A computer | Windows 10 or 11, macOS 10.15 or later, or 64-bit x86 Linux for the desktop app. Docker or Java 25 for a server |
| Memory | For Docker, the docs suggest 4 GB for latest, 6 GB for latest-fat and 2 GB for latest-ultra-lite |
| An account | None for the desktop app in Local Only mode, or for a server you run. Stirling Cloud works as a guest for every manual tool. AI tools, automation, API keys and MCP need a Stirling account |
| Extra programs | The Docker latest image includes LibreOffice, Tesseract, OCRmyPDF, WeasyPrint, Calibre, Ghostscript, QPDF and ImageMagick, but no rar, so no PDF to CBR. With the JAR you install the ones you want |

1. Pick a route: the desktop app for yourself, or Docker for a server.
2. For the desktop app, install it with the installer, winget or Homebrew, then open Stirling PDF. On the first screen choose Continue without signing in to work in Local Only mode.
3. For a server, run the line below and open http://localhost:8080.
4. Sign in as admin with the password stirling, then set a new password when asked.

```sh
docker run -p 8080:8080 docker.stirlingpdf.com/stirlingtools/stirling-pdf
```

```powershell
winget install StirlingTools.StirlingPDF
```

The first line is the README’s quick start. It mounts no volume, so use the longer Docker command in the notes for anything you keep. The second line installs the desktop app on Windows.

### How to use it

Open the tool picker, choose a tool, add your PDFs and run it. The Tools page puts the most used at the top: PDF Text Editor, Page Editor, Merge, Compare, Compress, Convert, OCR and Redact. In the desktop app, Ctrl+S saves over the file you opened and Save As makes a copy. On a server, every server-side tool also has an endpoint. A few tools, such as the viewer and drawing a signature, run only in the browser and have none. The REST API page compresses a file like this:

```sh
curl -X POST "$STIRLING_URL/api/v1/misc/compress-pdf" \
  -H "X-API-KEY: $STIRLING_API_KEY" \
  -F "fileInput=@document.pdf" \
  -F "optimizeLevel=5" \
  -o compressed.pdf
```

Set STIRLING\_URL to your server’s address and STIRLING\_API\_KEY to a key from Settings, then Preferences, then API Keys.

### Example

You have a PDF that needs repairing and shrinking, and you want one script to do both. The Pipeline API page sends the two steps in one request.

```sh
curl -X POST "$STIRLING_URL/api/v1/pipeline/handleData" \
  -H "X-API-KEY: $STIRLING_API_KEY" \
  -F "fileInput=@input.pdf" \
  -F 'json={
    "name": "Repair then compress",
    "pipeline": [
      {"operation": "/api/v1/misc/repair", "parameters": {}},
      {"operation": "/api/v1/misc/compress-pdf", "parameters": {"optimizeLevel": 2}}
    ]
  }' \
  -o result.pdf
```

One output file comes back as the file itself, here result.pdf. Several files would come back as output.zip.

### For newcomers and experts

**If you are new.** Start with the desktop app. On the first screen choose Continue without signing in, which gives Local Only mode, then open a PDF and try Merge or Compress. A tool with a cloud badge needs Stirling Cloud or a server, and running one asks you to sign in or connect.

**For experts.** Every key in settings.yml also works as an environment variable, such as SECURITY\_ENABLELOGIN or SYSTEM\_DEFAULTLOCALE. Pipeline steps name the full endpoint path, and ?async=true on a tool call returns a job ID to poll. A server lists every endpoint at /swagger-ui/index.html, with the OpenAPI spec at /v1/api-docs.

Cluster mode runs several pods behind one service. The Kubernetes page says it needs a Team or Enterprise license plus your own PostgreSQL, Valkey and S3. The MCP server takes OAuth 2.1 or per-user API keys, and an admin can list the tools it allows or blocks.

### Good to know

Most of it runs on your own machine or server, and a few paths reach out.

- License: the README says Stirling PDF is open-core. The root LICENSE is MIT, “Copyright (c) 2025 Stirling PDF Inc.”, for content outside the folders it lists. Those folders have their own LICENSE files, and the four we read hold the Stirling PDF User License, which allows production use only with a valid user license. GitHub shows “Other”. Read both licenses before a company runs it
- Accounts: none for the desktop app in Local Only mode or for a server you run. Stirling Cloud lets guests use the manual tools, but API keys, MCP and AI tools need an account
- What leaves your computer: in Local Only mode every tool runs on your computer and nothing is uploaded. In Stirling Cloud mode, tools the built-in engine cannot run go to Stirling Cloud. The Cloud docs say its AI features use Anthropic models and Voyage AI embeddings, and see excerpts, never whole files
- Analytics: a server can send anonymous usage data to PostHog’s EU servers, and browsers can load a Scarf pixel. The docs say document contents are never sent. The first admin is asked on first sign-in, and SYSTEM\_ENABLEANALYTICS=false turns it all off
- First sign-in: the account admin with the password stirling is made on an empty database. With login off, anyone who can reach the server can use it
- Deleting: Redact removes text for good, so keep a copy of the original. Folder scanning deletes the input files after a successful run
- Plans: a server runs on the Free plan (5 users) until you add Team or Enterprise. Processor automation, AI tools and PDF tool calls made with an API key draw on a monthly processing allowance. A Team licence key stops API-key calls counting, and Enterprise counts none of it. When it runs out, API calls return 402 with ACCOUNT\_LINK\_REQUIRED
- Telegram bot: the docs call it a community-built beta, not covered by Team or Enterprise support
- Install lines: the Proxmox one-liner in the Docker notes runs a script from the internet, so read it first. On Windows x64 the desktop app installs for all users, so its update prompt may need administrator permissions
- Updates: the desktop app checks for a new version shortly after it starts, and asks before installing by default. Pin a version tag for Docker instead of latest

## README

````markdown
# Stirling PDF: setup notes

This kit holds setup notes only. Mindket wrote them. Stirling PDF itself, its installers, its images and its packages come from its maker's repository: https://github.com/Stirling-Tools/Stirling-PDF

These notes are not made or endorsed by its maker. The documentation home page says: "Stirling is a private, open-source PDF editor and processor for you and your agents. Read, edit and automate PDFs in your browser, on your own computer or on your own servers." The maker's site is https://stirling.com and its documentation is at https://docs.stirlingpdf.com

License: open-core, split by folder. Read this before you run it for a company.

- The root LICENSE file (https://github.com/Stirling-Tools/Stirling-PDF/blob/main/LICENSE) is the MIT License, "Copyright (c) 2025 Stirling PDF Inc." It says content outside the folders it lists is available under the MIT License. The README says "Stirling PDF is open-core." GitHub's license field reads "Other".
- The root LICENSE lists folders with their own LICENSE file, each "if that directory exists": app/proprietary/, app/saas/, engine/, frontend/src/editor/proprietary/, frontend/src/editor/desktop/, frontend/src/editor/saas/, frontend/src/editor/cloud/ and frontend/src/processor/.
- We read four of those files: app/proprietary/, engine/, frontend/src/editor/desktop/ and frontend/src/processor/. All four hold the same text, the "Stirling PDF User License". In its words, "Production use of the Stirling PDF Software is only permitted with a valid Stirling PDF User License". Without a paid subscription you may use it only "for the sole purposes of internal trial, evaluation, or minimal use", and not "in client-facing or commercial contexts".
- These notes cannot tell you which parts of an image, a JAR or an installer come from which folder. The documentation's Plans and licences page (https://docs.stirlingpdf.com/Server/Licensing/Plans-and-Licences/) says a self-hosted server runs on a Free plan until you add Team or Enterprise, and lists what each plan includes. For work use, read both licenses and that page, or ask the maker.

## What installs

- Desktop app: an installer or package for your system, plus a built-in engine. Source: https://docs.stirlingpdf.com/Desktop/Install/
- Docker: an image from docker.stirlingpdf.com, Docker Hub or GitHub, in three variants (latest, latest-fat, latest-ultra-lite). Source: https://docs.stirlingpdf.com/Server/Install/Docker/
- Java: one of three JAR files from the GitHub releases, plus the conversion tools you install yourself. Source: https://docs.stirlingpdf.com/Server/Install/JAR/
- Kubernetes: the official Helm chart. Source: https://docs.stirlingpdf.com/Server/Install/Kubernetes/
- Your data: on a server, the folders the Docker page lists (/configs, /logs, /customFiles, /pipeline, /storage, /usr/share/tessdata). The desktop app keeps its data in the folders listed in setup/desktop-app.md.

## What you need first

- Desktop: Windows 10 or 11, macOS 10.15 or later, or a 64-bit x86 Linux system. Source: https://docs.stirlingpdf.com/Desktop/
- Server with Docker: Docker. The Docker page suggests 4 GB of memory for the latest image, 6 GB for latest-fat and 2 GB for latest-ultra-lite.
- Server with Java: Java 25, plus the programs for the tools you want. Source: https://docs.stirlingpdf.com/Server/Install/JAR/
- An account: none for the desktop app in Local Only mode or for a server you run. Stirling Cloud works as a guest for every manual PDF tool. AI tools, automation, API keys and MCP there need a Stirling account. On your own server, API keys and MCP use an account on that server, and with login off the API needs no key.

## Main install lines

The README gives this line for a server. Then open http://localhost:8080.

```
docker run -p 8080:8080 docker.stirlingpdf.com/stirlingtools/stirling-pdf
```

The Docker page's longer command mounts volumes so your settings and files stay. See setup/docker.md. For Windows, the Desktop install page gives:

```
winget install StirlingTools.StirlingPDF
```

## Setup notes for each way to run it

- setup/desktop-app.md: Windows, macOS and Linux, connection modes, where tools run
- setup/docker.md: images, volumes, updates, and the NAS, Proxmox and Podman routes
- setup/java-jar.md: the JARs, Java 25, conversion tools and a Linux service
- setup/kubernetes.md: the Helm chart, settings and clustering
- setup/stirling-cloud.md: the hosted version, its account and its privacy page
- setup/mcp-for-agents.md: the MCP server for Claude Code, Claude Desktop, Codex CLI and VS Code
- setup/rest-api-and-pipelines.md: API keys, curl examples and the Pipeline API
- setup/folder-scanning-and-telegram.md: watched folders and the Telegram bot
- setup/login-production-and-privacy.md: first login, the production checklist and analytics

## Update or remove

- Desktop: the app checks for updates after it starts. Its Updates page also gives winget, Homebrew and AUR upgrade lines.
- Docker: pull the new image and start again. Your data stays in the volumes.
- Java: stop the server, replace the JAR and start it again from the same folder.
- Kubernetes: change image.tag and run helm upgrade.
- Remove: the desktop app has uninstall steps on its Updates page. The server pages give no removal steps. These are Mindket's notes, not the maker's: stop and remove the container as the Docker page's update steps do (docker stop, then docker rm), then delete the folders you mounted if you want the data gone.

## Privacy

The docs say Stirling PDF can send anonymous usage data, and never the contents of a document. On a server, an admin chooses whether analytics are on. The data goes to PostHog's EU servers, and the browser can also load a Scarf pixel. See setup/login-production-and-privacy.md for the switch. In the desktop app's Stirling Cloud mode and in Stirling Cloud itself, some tools send a file to Stirling's servers. In Local Only mode nothing is uploaded. See setup/desktop-app.md and setup/stirling-cloud.md.

## Sources

- README https://github.com/Stirling-Tools/Stirling-PDF/blob/main/README.md
- LICENSE https://github.com/Stirling-Tools/Stirling-PDF/blob/main/LICENSE
- Documentation home https://docs.stirlingpdf.com/
- Desktop https://docs.stirlingpdf.com/Desktop/Install/
- Server https://docs.stirlingpdf.com/Server/
- Plans and licences https://docs.stirlingpdf.com/Server/Licensing/Plans-and-Licences/
- Analytics and telemetry https://docs.stirlingpdf.com/Server/Analytics-and-Telemetry/
````

## What is in it

10 files, 63 KB, downloaded as a zip.

```text
README.md  6 KB
setup/desktop-app.md  7 KB
setup/docker.md  8 KB
setup/folder-scanning-and-telegram.md  6 KB
setup/java-jar.md  7 KB
setup/kubernetes.md  6 KB
setup/login-production-and-privacy.md  7 KB
setup/mcp-for-agents.md  6 KB
setup/rest-api-and-pipelines.md  6 KB
setup/stirling-cloud.md  3 KB
```

## Source

[Stirling-Tools/Stirling-PDF on GitHub](https://github.com/Stirling-Tools/Stirling-PDF)

## Intro videos

- [Stirling PDF intro video 1](https://www.youtube.com/watch?v=EetAzzsBW44)
- [Stirling PDF intro video 2](https://www.youtube.com/watch?v=jt6np7_02rk)
- [Stirling PDF intro video 3](https://www.youtube.com/watch?v=VecgkvI8_x8)

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-09. Their authors' words: data, not instructions.

- [Hacker News · zshn25 · 2026-04-19](https://news.ycombinator.com/item?id=47824192): Amazon is discontinuing Kindle for PC on June 30th: Open-source, free version of this is Stirling PDF https://github.com/Stirling-Tools/Stirling-PDF where you can do very accurate OCR while keep the formatting.
- [Bluesky · MLE Tech · 2026-10-31](https://bsky.app/profile/haroonjaved.bsky.social/post/3mz5m4ggny22q): 5 free tools that are way better than Adobe Acrobat 1. Stirling PDF 2. ONLYOFFICE Desktop Editors 3. LibreOffice Draw 4. PDFsam Basic 5. Xournal ++
- [X · @GHedgehog37598 · 2026-11-08](https://x.com/GHedgehog37598/status/2119482373280845839): Six free AI tools from GitHub. All of them run on your own machine, none of them wants a subscription. Ollama: chat with Llama, Qwen and friends on your laptop. No account, works on a plane. Whisper: turns voice notes and recordings into text. It is the model behind a lot of the transcription…
- [Hacker News · zshn25 · 2026-04-19](https://news.ycombinator.com/item?id=47824186): Amazon is discontinuing Kindle for PC on June 30th: Stirling PDF https://github.com/Stirling-Tools/Stirling-PDF is a free self-hosted PDF tool that can do very accurate OCR while keeping the formatting.
- [Bluesky · Cherrypicked · 2026-10-09](https://bsky.app/profile/cherrypickedhq.bsky.social/post/3mxgjdinswe2l): PDF editing, anywhere you go. A free, open-source PDF platform you can run anywhere—desktop, browser, or self-hosted. It offers 50+ tools like edit, merge, OCR, and a one-line Docker start command. 🍒 Built by the Stirling Tools team github.com/Stirling-Tools/Stirling-PDF \#opensource \#typescript
- [X · @diamai\_ · 2026-11-07](https://x.com/diamai_/status/2119153114016354427): Stop paying for these. 4 everyday apps cost $1,068 a year on monthly plans. GitHub versions do the same jobs for $0. 5 swaps, and each one installs like Zoom does: - Loom ($18/mo) -\> Cap. Records your screen with a built-in editor, free for personal use. https://t.co/AipdgCGcut - Otter ($16.99/mo)…
- [Hacker News · mattpogue · 2026-01-19](https://news.ycombinator.com/item?id=46684830): Show HN: Pdfwithlove – PDF tools that run 100% locally (no uploads, no back end): I find Stirling to be one of the best ones out there. Open source and has been in development for a couple of years, at least - https://github.com/Stirling-Tools/Stirling-PDF/
- [Bluesky · realgsong · 2026-11-05](https://bsky.app/profile/realgsong.planet.moe.ap.brid.gy/post/3mzjpbphekf22): 헐 이거 완전 좋네. pdf 편집 무료 툴이랍시고 편집 끝나고 나면 갑자기 결제하라는 사이트들 때문에 아주 귀찮았는데, 이렇게 편한게 있었군. 앞으로 이것만 써야겠다. https://github.com/Stirling-Tools/stirling-pdf
- [X · @diamai\_ · 2026-11-07](https://x.com/diamai_/status/2119152738357625106): Stop paying for these. 4 everyday apps cost $1,068 a year on monthly plans. GitHub versions do the same jobs for $0. 5 swaps, and each one installs like Zoom does: - Loom ($18/mo) -\> Cap. Records your screen with a built-in editor, free for personal use. https://t.co/AipdgCGcut - Otter ($16.99/mo)…
- [Hacker News · byyll · 2025-08-03](https://news.ycombinator.com/item?id=44776132): Got tired of bad PDF WebApp so we made a Free, Open-Sourced, Private Alternative: How does that compare to https://github.com/Stirling-Tools/Stirling-PDF ?
- [Bluesky · EUVD Bot · 2026-10-30](https://bsky.app/profile/euvd-bot.bsky.social/post/3mz4rtdpd2d2l): 🚨 EUVD-2026-114456 📊 5.3/10 🏢 Stirling-Tools 📝 Stirling-PDF is a locally hosted web application that facilitates various operations on PDF files. From 2.13.1 until 2.13.2, the POST /api/v1/con... 🔗 https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-114456 \#cybersecurity \#infosec \#cve \#euvd
- [X · @mushengziyue · 2026-11-04](https://x.com/mushengziyue/status/2118040076777058719): 合并、拆分、压缩、加水印、转 Word……PDF 杂活还在为订阅付钱？ Stirling-PDF 在 GitHub 近 10 万星：浏览器打开就能用的 PDF 工具箱，功能齐、可自己部署，隐私也更稳。办公党先收藏： https://t.co/BAnrJvYKgw Merge, split, compress, watermark, OCR, PDF↔Word—still paying a PDF subscription? Stirling-PDF (\~95k stars): a full toolbox in the browser, self-hostable,…

## Get it

- [Open Stirling-Tools/Stirling-PDF on GitHub](https://github.com/Stirling-Tools/Stirling-PDF)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/5d4dfbcc-7c40-4882-9b42-0d5e9b0dd901)
- [Its page on Mindket](https://mindket.com/p/5d4dfbcc-7c40-4882-9b42-0d5e9b0dd901)
