Skip to content

PDF Oxide MCP Server — extracción de PDF para asistentes de IA

pdf-oxide-mcp es un servidor Model Context Protocol que permite a los asistentes de IA leer el contenido de los PDFs. Se ejecuta en local — ningún archivo sale de tu equipo.

Instala crgx (una sola vez)

crgx es un runner tipo npx para binarios de Rust: descarga pdf_oxide_mcp automáticamente la primera vez que lo usas. No hace falta instalar nada de MCP a mano.

Linux / macOS

curl -fsSL crgx.dev/install.sh | sh

Windows (PowerShell)

irm crgx.dev/install.ps1 | iex

Configuración

Después de instalar crgx, agrega la configuración de abajo a tu herramienta de IA. Con eso basta — crgx se encarga solo de descargar y actualizar pdf_oxide_mcp.

Claude Desktop

Agrega el bloque a ~/.config/claude/claude_desktop_config.json (Linux) o ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "pdf-oxide": {
      "command": "crgx",
      "args": ["pdf_oxide_mcp@latest"]
    }
  }
}

Claude Code

Agrégalo en el .claude/settings.json de tu proyecto:

{
  "mcpServers": {
    "pdf-oxide": {
      "command": "crgx",
      "args": ["pdf_oxide_mcp@latest"]
    }
  }
}

Cursor

Agrégalo en la configuración MCP de Cursor:

{
  "mcpServers": {
    "pdf-oxide": {
      "command": "crgx",
      "args": ["pdf_oxide_mcp@latest"]
    }
  }
}

Otras opciones de instalación

Si prefieres no usar crgx, puedes instalar pdf_oxide_mcp directamente:

Homebrew (macOS / Linux)

brew install yfedoseev/tap/pdf-oxide    # incluye pdf-oxide-mcp

Cargo

cargo install pdf_oxide_mcp

Después, apunta la configuración al binario directamente:

{
  "mcpServers": {
    "pdf-oxide": {
      "command": "pdf-oxide-mcp"
    }
  }
}

Herramientas disponibles

extract

Extrae texto, Markdown o HTML desde un archivo PDF.

Parámetro Tipo Obligatorio Descripción
file_path string Ruta al archivo PDF
output_path string Ruta donde escribir el contenido extraído
format string No "text" (por defecto), "markdown" o "html"
pages string No Rango de páginas, p. ej. "1-3,7,10-12"
password string No Contraseña para PDFs cifrados
images boolean No Guarda las imágenes como archivos junto a la salida
embed_images boolean No Incrusta las imágenes en base64 dentro de markdown/html (por defecto: true)

Cómo funciona

El servidor MCP se comunica por stdio usando JSON-RPC 2.0. Cuando un asistente de IA necesita leer un PDF, envía una solicitud tools/call y recibe el contenido extraído de vuelta.

Todo el procesamiento ocurre en local con el mismo motor de extracción en Rust que usan la biblioteca y el CLI — no se envían datos a servicios externos.

Prompts que puedes darle al asistente

Una vez conectado el servidor MCP, el asistente invoca extract por su cuenta. Algunos prompts que funcionan bien:

  • “Pasa el Markdown de report.pdf a report.md.”
  • “Extrae las páginas 4–8 de contract.pdf como HTML con imágenes incrustadas y guárdalo en contract.html.”
  • bank-statement.pdf tiene contraseña (pw: hunter2) — extrae solo la tabla de transacciones como texto.”

Por debajo, el asistente lanza una llamada JSON-RPC como ésta:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "extract",
    "arguments": {
      "file_path": "/path/report.pdf",
      "output_path": "/path/report.md",
      "format": "markdown",
      "pages": "4-8",
      "images": true,
      "embed_images": true
    }
  }
}

El servidor escribe el resultado en output_path y devuelve una confirmación breve — el asistente luego lee ese archivo para incorporarlo a su contexto.