MCP server for Paperless-ngx 3.x — full REST API coverage, schema-aware, token-frugal.
Connect Runs on your machine
claude mcp add mcp-paperless-ngx -e PAPERLESS_URL=<PAPERLESS_URL> -e PAPERLESS_TOKEN=<PAPERLESS_TOKEN> -e PAPERLESS_PUBLIC_URL=<PAPERLESS_PUBLIC_URL> -e PAPERLESS_TOOLSETS=<PAPERLESS_TOOLSETS> -e PAPERLESS_READ_ONLY=<PAPERLESS_READ_ONLY> -e PAPERLESS_HEADERS=<PAPERLESS_HEADERS> -e PAPERLESS_DOWNLOAD_DIR=<PAPERLESS_DOWNLOAD_DIR> -e PAPERLESS_MAX_PAGE_SIZE=<PAPERLESS_MAX_PAGE_SIZE> -e PAPERLESS_TIMEOUT_MS=<PAPERLESS_TIMEOUT_MS> -e PAPERLESS_API_VERSION=<PAPERLESS_API_VERSION> -- npx -y [email protected]
{
"mcpServers": {
"mcp-paperless-ngx": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"PAPERLESS_URL": "<PAPERLESS_URL>",
"PAPERLESS_TOKEN": "<PAPERLESS_TOKEN>",
"PAPERLESS_PUBLIC_URL": "<PAPERLESS_PUBLIC_URL>",
"PAPERLESS_TOOLSETS": "<PAPERLESS_TOOLSETS>",
"PAPERLESS_READ_ONLY": "<PAPERLESS_READ_ONLY>",
"PAPERLESS_HEADERS": "<PAPERLESS_HEADERS>",
"PAPERLESS_DOWNLOAD_DIR": "<PAPERLESS_DOWNLOAD_DIR>",
"PAPERLESS_MAX_PAGE_SIZE": "<PAPERLESS_MAX_PAGE_SIZE>",
"PAPERLESS_TIMEOUT_MS": "<PAPERLESS_TIMEOUT_MS>",
"PAPERLESS_API_VERSION": "<PAPERLESS_API_VERSION>"
}
}
}
}
{
"mcpServers": {
"mcp-paperless-ngx": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"PAPERLESS_URL": "<PAPERLESS_URL>",
"PAPERLESS_TOKEN": "<PAPERLESS_TOKEN>",
"PAPERLESS_PUBLIC_URL": "<PAPERLESS_PUBLIC_URL>",
"PAPERLESS_TOOLSETS": "<PAPERLESS_TOOLSETS>",
"PAPERLESS_READ_ONLY": "<PAPERLESS_READ_ONLY>",
"PAPERLESS_HEADERS": "<PAPERLESS_HEADERS>",
"PAPERLESS_DOWNLOAD_DIR": "<PAPERLESS_DOWNLOAD_DIR>",
"PAPERLESS_MAX_PAGE_SIZE": "<PAPERLESS_MAX_PAGE_SIZE>",
"PAPERLESS_TIMEOUT_MS": "<PAPERLESS_TIMEOUT_MS>",
"PAPERLESS_API_VERSION": "<PAPERLESS_API_VERSION>"
}
}
}
}
{
"servers": {
"mcp-paperless-ngx": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"PAPERLESS_URL": "<PAPERLESS_URL>",
"PAPERLESS_TOKEN": "<PAPERLESS_TOKEN>",
"PAPERLESS_PUBLIC_URL": "<PAPERLESS_PUBLIC_URL>",
"PAPERLESS_TOOLSETS": "<PAPERLESS_TOOLSETS>",
"PAPERLESS_READ_ONLY": "<PAPERLESS_READ_ONLY>",
"PAPERLESS_HEADERS": "<PAPERLESS_HEADERS>",
"PAPERLESS_DOWNLOAD_DIR": "<PAPERLESS_DOWNLOAD_DIR>",
"PAPERLESS_MAX_PAGE_SIZE": "<PAPERLESS_MAX_PAGE_SIZE>",
"PAPERLESS_TIMEOUT_MS": "<PAPERLESS_TIMEOUT_MS>",
"PAPERLESS_API_VERSION": "<PAPERLESS_API_VERSION>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
PAPERLESS_URLRequired | Base URL of the Paperless-ngx instance |
PAPERLESS_TOKENRequired, secret | Paperless-ngx API token |
PAPERLESS_PUBLIC_URLOptional | URL used when building links, if the instance is reachable under a different name from outside |
PAPERLESS_TOOLSETSOptional | Comma-separated toolsets, or all |
PAPERLESS_READ_ONLYOptional | Expose only tools that cannot change anything |
PAPERLESS_HEADERSOptional | Extra request headers; needed behind forward-auth proxies such as Authentik |
PAPERLESS_DOWNLOAD_DIROptional | Where downloaded files are written |
PAPERLESS_MAX_PAGE_SIZEOptional | Hard ceiling on list page sizes |
PAPERLESS_TIMEOUT_MSOptional | Request timeout in milliseconds |
PAPERLESS_API_VERSIONOptional | REST API version sent in the Accept header |
Details
| Package | [email protected] (NPM, stdio) |
| First published | 20 Aug 2026 |
| Last updated | 20 Aug 2026 |
| Registry name | io.github.tobee89/mcp-paperless-ngx |
More other servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
