Custom PDF MCP Server

Um servidor para processamento de arquivos PDF, permitindo extração de texto e tabelas, recuperação de metadados e listagem de arquivos dentro de um diretório específico.

Documentação

Servidor MCP de PDF Personalizado

Servidor de processamento de PDF personalizado construído com FastMCP, projetado para o processamento de literatura de teses de graduação.

Recursos

  • Ler texto de PDF: Suporta extração de conteúdo de texto de um PDF inteiro ou de páginas específicas
  • Extrair dados de tabelas: Opcionalmente, extrai estruturas de tabelas de PDFs
  • Obter informações do PDF: Extrai metadados do PDF (autor, título, etc.)
  • Listar arquivos PDF: Examina todos os arquivos PDF em um diretório
  • Restrição de segurança: Apenas pode acessar arquivos no diretório de trabalho atual

Métodos de instalação

Método 1: Usando uv (recomendado)

# 克隆项目
git clone https://github.com/Waicy/-pdf-mcp-.git
cd pdf-mcp

# 创建虚拟环境并安装依赖
uv sync

Método 2: Usando pip

# 克隆项目
git clone https://github.com/yourusername/pdf-mcp.git
cd pdf-mcp

# 安装依赖
pip install . --index-url https://pypi.tuna.tsinghua.edu.cn/simple

Como usar

1. Executar teste diretamente

# 如果使用 uv
uv run pdf-mcp

# 如果使用传统方式
python src/pdf_mcp_server.py

2. Configurar o Claude Desktop

Adicione a seguinte configuração em claude_desktop_config.json:

{
  "mcpServers": {
    "pdf-reader-custom": {
      "command": "uv",
      "args": [
         "--directory",
         "path/to/your/pdf-mcp",
         "run",
         "pdf-mcp"
      ]
    }
  }
}

Observação:

  • Substitua path/to/your/pdf-mcp pelo caminho real do projeto

Ferramentas disponíveis

read_pdf_text

Lê um arquivo PDF e extrai o conteúdo de texto

Parâmetros:

  • file_path: Caminho do arquivo PDF (relativo ao diretório de trabalho)
  • page_numbers: Opcional, lista de números de páginas a extrair
  • extract_tables: Opcional, se deve extrair dados de tabelas

get_pdf_info

Obtém informações básicas e metadados de um arquivo PDF

Parâmetros:

  • file_path: Caminho do arquivo PDF

list_pdfs_in_directory

Lista todos os arquivos PDF no diretório especificado

Parâmetros:

  • directory_path: Caminho do diretório, padrão é o diretório atual

Exemplos de uso

  1. Ler PDF inteiro:

    read_pdf_text("文献整理/某篇论文.pdf")
    
  2. Ler apenas páginas específicas:

    read_pdf_text("文献整理/某篇论文.pdf", [1, 2, 3])
    
  3. Extrair dados de tabelas:

    read_pdf_text("文献整理/某篇论文.pdf", extract_tables=True)
    
  4. Obter informações do PDF:

    get_pdf_info("文献整理/某篇论文.pdf")
    
  5. Listar todos os PDFs:

    list_pdfs_in_directory("文献整理")