Skip to main content
Glama

Paperless-NGX MCP Server

by nloui

无纸化-NGX MCP服务器

用于与 Paperless-NGX API 服务器交互的 MCP(模型上下文协议)服务器。该服务器提供用于管理 Paperless-NGX 实例中的文档、标签、联系人和文档类型的工具。

快速入门

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 Paperless NGX MCP 服务器:

npx -y @smithery/cli install @nloui/paperless-mcp --client claude

手动安装

  1. 安装 MCP 服务器:
npm install -g paperless-mcp
  1. 将其添加到您的 Claude 的 MCP 配置中:

对于 VSCode 扩展,编辑~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

{ "mcpServers": { "paperless": { "command": "npx", "args": ["paperless-mcp", "http://your-paperless-instance:8000", "your-api-token"] } } }

对于 Claude 桌面应用程序,编辑~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "paperless": { "command": "npx", "args": ["paperless-mcp", "http://your-paperless-instance:8000", "your-api-token"] } } }
  1. 获取您的 API 令牌:
    1. 登录您的 Paperless-NGX 实例
    2. 点击右上角的用户名
    3. 选择“我的个人资料”
    4. 点击圆形箭头按钮生成新令牌
  2. 替换 MCP 配置中的占位符:
    • http://your-paperless-instance:8000为您的 Paperless-NGX URL
    • your-api-token替换为你刚刚生成的令牌

就这样!现在您可以让 Claude 帮您管理 Paperless-NGX 文档了。

示例用法

以下是您可以要求克劳德做的一些事情:

  • “显示所有标记为‘发票’的文件”
  • “搜索包含‘纳税申报表’的文件”
  • “创建一个名为‘收据’、颜色为 #FF0000 的新标签”
  • “下载文档 #123”
  • “列出所有通讯员”
  • “创建一个名为‘银行对账单’的新文档类型”

可用工具

文档操作

列出文档

获取所有文档的分页列表。

参数:

  • page(可选):页码
  • page_size(可选):每页文档数
list_documents({ page: 1, page_size: 25 })
获取文档

通过 ID 获取特定文档。

参数:

  • id:文档ID
get_document({ id: 123 })
搜索文档

跨文档的全文搜索。

参数:

  • 查询:搜索查询字符串
search_documents({ query: "invoice 2024" })
下载文档

通过 ID 下载文档文件。

参数:

  • id:文档ID
  • original(可选):如果为 true,则下载原始文件而不是存档版本
download_document({ id: 123, original: false })
批量编辑文档

对多个文档执行批量操作。

参数:

  • documents:文档 ID 数组
  • 方法:以下之一:
    • set_correspondent:设置文档的通讯员
    • set_document_type:设置文档的文档类型
    • set_storage_path:设置文档的存储路径
    • add_tag:为文档添加标签
    • remove_tag:从文档中删除标签
    • 修改标签:添加和/或删除多个标签
    • 删除:删除文档
    • 重新处理:重新处理文档
    • set_permissions:设置文档权限
    • 合并:合并多个文档
    • split:将一个文档拆分为多个文档
    • 旋转:旋转文档页面
    • delete_pages:从文档中删除特定页面
  • 基于方法的附加参数:
    • 通讯员:set_correspondent 的 ID
    • document_type:set_document_type 的 ID
    • storage_path:set_storage_path 的 ID
    • 标签:add_tag/remove_tag 的 ID
    • add_tags:modify_tags 的标签 ID 数组
    • remove_tags:modify_tags 的标签 ID 数组
    • 权限:具有所有者、权限、合并标志的 set_permissions 对象
    • metadata_document_id:用于合并以指定元数据源的 ID
    • delete_originals:合并/拆分的布尔值
    • pages:用于拆分的字符串“[1,2-3,4,5-7]”或用于删除页面“[2,3,4]”
    • 度数:旋转数(90、180 或 270)

例子:

// Add a tag to multiple documents bulk_edit_documents({ documents: [1, 2, 3], method: "add_tag", tag: 5 }) // Set correspondent and document type bulk_edit_documents({ documents: [4, 5], method: "set_correspondent", correspondent: 2 }) // Merge documents bulk_edit_documents({ documents: [6, 7, 8], method: "merge", metadata_document_id: 6, delete_originals: true }) // Split document into parts bulk_edit_documents({ documents: [9], method: "split", pages: "[1-2,3-4,5]" }) // Modify multiple tags at once bulk_edit_documents({ documents: [10, 11], method: "modify_tags", add_tags: [1, 2], remove_tags: [3, 4] })
后文档

将新文档上传至 Paperless-NGX。

参数:

  • file:Base64编码的文件内容
  • filename:文件的名称
  • 标题(可选):文档的标题
  • created(可选):文档创建的日期时间(例如“2024-01-19”或“2024-01-19 06:15:00+02:00”)
  • 通讯员(可选):通讯员的 ID
  • document_type(可选):文档类型的 ID
  • storage_path(可选):存储路径的ID
  • 标签(可选):标签 ID 数组
  • archive_serial_number(可选):存档序列号
  • custom_fields(可选):自定义字段 ID 数组
post_document({ file: "base64_encoded_content", filename: "invoice.pdf", title: "January Invoice", created: "2024-01-19", correspondent: 1, document_type: 2, tags: [1, 3], archive_serial_number: "2024-001" })

标签操作

列表标签

获取所有标签。

list_tags()
创建标签

创建新标签。

参数:

  • 名称:标签名称
  • 颜色(可选):十六进制颜色代码(例如“#ff0000”)
  • 匹配(可选):要匹配的文本模式
  • matching_algorithm(可选):”any”,”all”,”exact”,”regular expressio”,”fuzzy”之一
create_tag({ name: "Invoice", color: "#ff0000", match: "invoice", matching_algorithm: "fuzzy" })

通讯员行动

列表通讯员

联络所有通讯员。

list_correspondents()
创建通讯员

创建新的通讯员。

参数:

  • 姓名:通讯员姓名
  • 匹配(可选):要匹配的文本模式
  • matching_algorithm(可选):”any”,”all”,”exact”,”regular expressio”,”fuzzy”之一
create_correspondent({ name: "ACME Corp", match: "ACME", matching_algorithm: "fuzzy" })

文档类型操作

列出文档类型

获取所有文档类型。

list_document_types()
创建文档类型

创建一个新的文档类型。

参数:

  • 名称:文档类型名称
  • 匹配(可选):要匹配的文本模式
  • matching_algorithm(可选):”any”,”all”,”exact”,”regular expressio”,”fuzzy”之一
create_document_type({ name: "Invoice", match: "invoice total amount due", matching_algorithm: "any" })

错误处理

如果出现以下情况,服务器将显示清晰的错误消息:

  • Paperless-NGX URL 或 API 令牌不正确
  • Paperless-NGX 服务器无法访问
  • 请求的操作失败
  • 提供的参数无效

发展

想要贡献或修改服务器吗?以下是您需要了解的信息:

  1. 克隆存储库
  2. 安装依赖项:
npm install
  1. 对 server.js 进行更改
  2. 本地测试:
node server.js http://localhost:8000 your-test-token

该服务器由以下组件构建:

  • litemcp :用于构建 MCP 服务器的 TypeScript 框架
  • zod :TypeScript 优先模式验证

API 文档

此 MCP 服务器实现了 Paperless-NGX REST API 的端点。有关底层 API 的更多详细信息,请参阅官方文档

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

实现与 Paperless-NGX API 服务器的交互,通过自然语言界面支持文档管理、标记和元数据操作。

  1. 快速入门
    1. 通过 Smithery 安装
    2. 手动安装
  2. 示例用法
    1. 可用工具
      1. 文档操作
      2. 标签操作
      3. 通讯员行动
      4. 文档类型操作
    2. 错误处理
      1. 发展
        1. API 文档

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            A server providing tools to read, write, and edit Microsoft Word (docx) files through the Model Context Protocol, allowing operations like complete document reading, content creation, targeted paragraph editing, and text insertion.
            Last updated -
            4
            10
            Python
            MIT License
          • -
            security
            F
            license
            -
            quality
            A simple Model Context Protocol server that enables searching and retrieving relevant documentation snippets from Langchain, Llama Index, and OpenAI official documentation.
            Last updated -
            Python
            • Apple
            • Linux
          • -
            security
            A
            license
            -
            quality
            A server that provides structured access to markdown documentation from NPM packages, Go Modules, or PyPi packages, enabling informed code generation by exposing these docs as resources or tools.
            Last updated -
            1
            TypeScript
            MIT License
          • -
            security
            F
            license
            -
            quality
            A Model Context Protocol server for ingesting, chunking and semantically searching documentation files, with support for markdown, Python, OpenAPI, HTML files and URLs.
            Last updated -
            Python
            • Apple

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/nloui/paperless-mcp'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server