API y MCP

Entra un PDF.
Sale Markdown limpio.

Una llamada REST — o un servidor MCP nativo que tu agente IA puede usar directamente. Markdown, elementos estructurados y chunks listos para embeddings con trazabilidad a la fuente.

Consigue tu clave API gratis

Plan gratis · sin tarjeta · prueba anónima sin clave

REST en una llamada

Envía la URL de un PDF por POST y recibe el ExtractedDocument canónico, de forma síncrona. Los Doc Links también tienen endpoints REST (/api/v1/links): cada herramienta muestra abajo su espejo REST. Especificación OpenAPI (JSON)

curl -X POST https://doc.page/api/v1/extract \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer dk_live_..." \
  -d '{
    "url": "https://example.com/report.pdf",
    "outputs": ["markdown", "elements", "chunks"]
  }'
{
  "schemaVersion": "1.0",
  "source": { "engine": "server-pdfjs", "pages": 12 },
  "markdown": "# Title\n...",
  "elements": [{ "id": "el_0001", "type": "heading", "page": 1, "text": "Title" }],
  "chunks":   [{ "id": "ch_0001", "text": "...", "tokens": 486, "page": 1,
                 "section": "Introduction", "elementIds": ["el_0002"] }]
}

Servidor MCP nativo

Apunta tu agente al endpoint y podrá leer PDFs por sí mismo. Funciona con Claude Code, Claude Desktop, Cursor y cualquier cliente MCP.

claude mcp add --transport http docpage https://doc.page/api/mcp
{
  "mcpServers": {
    "docpage": {
      "type": "http",
      "url": "https://doc.page/api/mcp",
      "headers": { "Authorization": "Bearer dk_live_..." }
    }
  }
}

Herramientas

  • extract_pdf — Extracción completa: Markdown + elementos estructurados, chunks opcionales. El modo "hybrid" añade tablas reconstruidas y bounding boxes. REST: POST /api/v1/extract
  • get_chunks — Chunks semánticos al tamaño de tokens que pidas, cada uno con página, sección y los ids de los elementos de origen.
  • list_tables — Todas las tablas del PDF como filas y columnas estructuradas, cada una con página y bounding box para citas verificables.
  • create_doc_link API key — Publica un PDF como enlace doc.page con seguimiento (expiración, aviso de apertura). El enlace aparece en tu biblioteca como cualquier Doc Link. REST: POST /api/v1/links
  • list_doc_links API key — Lista los Doc Links de la cuenta con su estado y visitas totales: así un agente recupera los enlaces que creó en sesiones anteriores. REST: GET /api/v1/links
  • get_doc_link_stats API key — Analítica de lectura de un enlace: visitas, emails capturados, países, empresas del visitante y tiempo de lectura por página. REST: GET /api/v1/links/:id
  • revoke_doc_link API key — Desactiva un enlace para que deje de servirse. El documento y sus stats siguen en la biblioteca; libera hueco del plan gratis. REST: DELETE /api/v1/links/:id
  • classify_document próximamente — Enruta documentos sin extracción completa: tipo (factura, contrato, CV…), idioma, texto nativo vs. escaneado, necesidad de OCR.

Qué recibes

Toda respuesta es el mismo objeto canónico, sea cual sea el motor:

Dos motores, un esquema: el motor por defecto ("fast") está centrado en prosa (sin tablas ni bbox); "hybrid" ejecuta un motor semántico más pesado que reconstruye tablas y bounding boxes. Si hybrid no está disponible temporalmente, la respuesta cae a fast con un warning explícito.

Hecho para documentos reales

Donde brilla

  • Informes de negocio y estados financieros con tablas regladas
  • Facturas, albaranes y pedidos: las líneas salen como filas estructuradas
  • Contratos, pólizas y prosa legal con jerarquía de encabezados limpia
  • Manuales y documentación técnica, directos a pipelines RAG
  • Libros, artículos y prosa larga para resúmenes o audio

Donde conviene cautela

  • Tablas académicas sin bordes y con notación matemática pueden salir como texto, no como filas estructuradas: el contenido nunca se pierde, pero revisa confidence.tables
  • Tablas densas con celdas multi-fila fusionadas pueden perder algo de alineación
  • PDFs escaneados (sin capa de texto) aún no: el OCR está en el roadmap

Límites y planes

Sin claveClave gratisPremium
Páginas / mes50010.000
Peticiones / minuto1060
Extracciones / día25 por IPsegún cuotasegún cuota
Tamaño máx. de PDF25 MB25 MB25 MB

Crea y gestiona claves en los ajustes de tu cuenta (pestaña "Claves API"). Cada página del PDF procesado cuenta como una página.

Clave gratis

$0

500 páginas cada mes. Sin tarjeta.

Crea tu clave gratis

Premium

4,99 $ al mes

10.000 páginas cada mes — más todo lo que Premium desbloquea en Doc Links.

Hazte Premium — 4,99 $/mes

Packs de créditos

$5 / $30

Pago único. Los créditos no caducan y se usan cuando se agota tu cuota mensual.

Errores

Preguntas frecuentes

¿Guardáis los PDFs que envío?

No. El documento se descarga, se procesa en memoria y se descarta. Solo se guardan contadores agregados de uso (páginas, peticiones) para la medición.

¿De verdad hay un plan gratis?

Sí, dos: sin clave tienes un pequeño cupo diario por IP para probar, y una clave API gratuita te da 500 páginas al mes.

¿Funciona con PDFs escaneados (OCR)?

Todavía no. El motor actual extrae la capa de texto de PDFs digitales. El OCR está previsto como parte del modo híbrido.

¿Reconstruye tablas?

Sí: usa el modo "hybrid" o la herramienta list_tables. Un motor semántico más pesado reconstruye cada tabla como filas y columnas estructuradas, con su página y bounding box para citar la fuente exacta. El motor "fast" por defecto sigue siendo solo prosa.

¿Por qué un servidor MCP?

Para que los agentes IA usen doc.page sin código de integración: conectas el endpoint una vez y el agente extrae PDFs o pide chunks RAG en lenguaje natural.