PDF文本提取与管理服务

基于Model Context Protocol (MCP)的PDF服务器,提供文本提取、文件管理和外部系统集成功能,适用于数据表、论文和合同等PDF文档的自动化管理。

  • by Dev-91
  • HTML
  • 本地部署
  • 9 星标
  • 更新于
在 GitHub 查看 Dev-91/MCP_PDF_Server

使用说明

MCP PDF服务器

MCP PDF Server是基于Model Context Protocol(MCP)的服务器,可以有效地管理PDF文件。

该项目使作为嵌入式开发人员的我,可以在Cursor等AI编码工具中直接阅读和总结PDF数据表文档,或者通过问答等方式更方便地完成开发工作。其主要目的是帮助AI快速了解PDF数据表的内容,并立即提供所需信息。

该项目由两个主要组件组成:

  • manager服务器:基于FastAPI的网页,提供用户通过Web UI上传或下载PDF文件、查看和管理文件列表的功能。此外,它还提供了用于与外部系统集成的RESTful API。
  • mcp服务器:基于manager_server管理的PDF文件,提供文件名搜索和文本提取功能。提取的文本可以通过MCP协议与外部系统(如Cursor等)相关联。

主要功能:

  • PDF文本提取(支持本地文件和URL)
  • 基于文件名的PDF搜索
  • 查看和管理PDF列表
  • PDF文件Web上传/下载支持
  • 提供RESTful API和Web服务
  • 通过MCP协议连接外部系统(Curator、Cursor等)

通过RESTful API和Web UI,您可以轻松与外部系统集成,并在Docker和本地环境中轻松部署和操作。适合数据表、论文、合同等各种PDF文档的自动化管理和检索。

主要功能

  • 从可通过本地PDF文件和URL访问的PDF中提取文本
  • /app/datasheets 提供子PDF文件列表
  • 以文件名提供PDF搜索功能
  • 基于PyPDF2的可靠文本提取和异常处理
  • 提供基于FastMCP的标准化MCP工具

作为Docker运行

  1. 映像构建

    docker build -t mcp-pdf-server:1.0.0 .
    
  2. 运行容器

    docker run -d \
      -v /호스트/경로/데이터:/app/datasheets \
      -p 5050:5050 \
      -p 5080:5080 \
      --name mcp-pdf-server \
      mcp-pdf-server:1.0.0
    
    • /호스트/경로/데이터将PDF文件放入容器中 /app/datasheets可以从访问。
    • 使用50505080端口。
  3. 使用docker-compose时

    # docker-compose.yml의 /path/to/your/datasheets를 실제 PDF 폴더 경로로 수정하세요.
    docker-compose up -d --build
    

直接在本地(Python)上运行

  1. 依赖性安装

    pip install -r requirements.txt
    
  2. 运行服务器

    python mcp_server/mcp_pdf_server.py
    # 또는
    uvicorn manager_server.main:app --host 0.0.0.0 --port 5080
    

MCP工具(API)说明

  • read_local_pdf
    输入本地PDF文件路径以提取文本。

  • read_url_pdf
    输入PDF文件的URL以提取文本。

  • 服务器_pdf_list
    /app/datasheets 返回所有子PDF文件的列表。

  • server_pdf_search
    输入文件名,搜索服务器上的PDF文件,并提取PDF中的文本。

路线指南

  • PDF数据必须 /app/datasheets 必须位于路径(坞站容器内)。
  • 使用坞站时,请将主机的PDF文件夹 /app/datasheets请用挂载。
  • 源代码为 /app/mcp_server位于(基于容器内部)。

许可证

Apache许可证2.0
作者:Dev91