Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

Docpick

de QuartzUnitversión 0.1.2i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.ArkNill/docpick

Instalar

Resumen

Descripción del creador (original en inglés)

Schema-driven document extraction with local OCR + LLM. Document in, Structured JSON out.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Documentos, hojas de cálculo y oficina

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

Necesitas

  • PyPIuv de Python instalado (para el comando uvx)

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "docpick": {
      "command": "uvx",
      "args": [
        "docpick"
      ]
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add docpick -- uvx docpick

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "docpick": {
      "command": "uvx",
      "args": [
        "docpick"
      ]
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "docpick": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "docpick"
      ]
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026

  • ! Precaución

    El creador coincide con el repo

    Quien lo publicó (ArkNill) no es el dueño del repo (QuartzUnit); puede que otra persona lo haya listado

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Documentos, hojas de cálculo y oficinai

  • Más estrellas que el 0% de los otros 2171 servidores de esta categoría
  • Publicado en el registro más recientemente que el 5% de los otros 2171 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 35% de los otros 2171 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Docpick?

Superó 0 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (0.1.2) llegó al registro hace 8 meses.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Agent-Native Google Calendar - manage events, sync, and public booking

Se ejecuta en la nube★ 7620MITActualizado hace 2 meses
Instalar

Excel MCP Server

de haris-musa

Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.

Se ejecuta en tu computadora★ 4276MITActualizado hace 6 días
Instalar

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

Se ejecuta en tu computadora★ 847MITActualizado hace 3 días
Instalar

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

Docpick

한국어 문서 · llms.txt

Document in, Structured JSON out. Locally. With your schema.

docpick is a lightweight, schema-driven document extraction pipeline that combines local OCR engines with local LLMs to extract structured JSON from any document — invoices, receipts, bills of lading, tax forms, and more.

  • Zero cloud dependency — runs entirely on your machine (CPU or GPU)
  • Custom schemas — define your own Pydantic models or use 8 built-in document schemas
  • Validation built-in — checkdigit verification, cross-field rules, cross-document consistency
  • Apache 2.0 — no GPL/AGPL dependencies

Install

pip install docpick            # core (LLM extraction only)

pip install docpick[paddle] # + PaddleOCR (recommended) pip install docpick[easyocr] # + EasyOCR (Korean-optimized) pip install docpick[got] # + GOT-OCR2.0 (GPU, vision-language) pip install docpick[all] # all OCR backends

Requirements: Python 3.11+ / LLM endpoint (vLLM, Ollama, or OpenAI-compatible)

Quick Start

Python API
from docpick import DocpickPipeline

from docpick.schemas import InvoiceSchema

pipeline = DocpickPipeline() result = pipeline.extract("invoice.pdf", schema=InvoiceSchema)

print(result.data) # Structured dict matching schema print(result.validation) # Validation errors/warnings print(result.confidence) # Per-field confidence scores

CLI
# Extract structured data

docpick extract invoice.pdf --schema invoice --output result.json

OCR only (no LLM)

docpick ocr document.png --lang ko,en

Validate extracted JSON

docpick validate result.json --schema invoice

Batch process a directory

docpick batch ./documents/ --schema invoice --output ./results/ --concurrency 4

List available schemas

docpick schemas list

Show schema details

docpick schemas show invoice

Built-in Schemas

SchemaDocument TypeKey Validations
invoiceCommercial invoicesLine item sums, tax ID checkdigit, date order
receiptRetail/restaurant receiptsTotal = subtotal + tax + tip
bill_of_ladingOcean/air B/LContainer weight sums, ISO 6346, HS code format
purchase_orderPurchase ordersPO total = line items, delivery date order
kr_tax_invoiceKorean e-tax invoice (세금계산서)Business number checkdigit (x2), supply/tax/total sums
bank_statementBank statementsIBAN mod97, period date order
id_documentPassport/ID (ICAO 9303)MRZ, ISO 3166 country codes, date ranges
certificate_of_originCertificate of OriginISO 3166 alpha-2 country codes

Custom Schemas

Define your own schema with Pydantic:

from pydantic import BaseModel

from docpick import DocpickPipeline from docpick.validation.rules import SumEqualsRule, RequiredFieldRule

class MyDocument(BaseModel): """Custom document schema.""" company_name: str | None = None total_amount: float | None = None tax_amount: float | None = None net_amount: float | None = None items: list[dict] | None = None

class ValidationRules: rules = [ RequiredFieldRule("company_name"), SumEqualsRule(["net_amount", "tax_amount"], "total_amount"), ]

pipeline = DocpickPipeline() result = pipeline.extract("my_document.pdf", schema=MyDocument)

Or use a JSON Schema file:

docpick extract document.pdf --schema my_schema.json

Validation

Check Digit Algorithms
AlgorithmUse Case
kr_business_numberKorean business registration number (10 digits)
luhnCredit card numbers
iso_6346Shipping container numbers
iban_mod97International bank account numbers
awb_mod7Air waybill numbers
mrzMachine Readable Zone (passport/ID)
Cross-Field Rules
RuleDescription
SumEqualsRuleSum of fields equals target (with tolerance)
DateBeforeRuleDate A must precede Date B
RequiredFieldRuleField must be non-null and non-empty
FieldEqualsRuleTwo fields must be equal
RangeRuleNumeric field within min/max bounds
RegexRuleField matches regex pattern
Cross-Document Validation

Validate consistency across related documents (e.g., Invoice + B/L + Packing List):

from docpick.validation.cross_document import create_trade_document_validator

validator = create_trade_document_validator() result = validator.validate({ "invoice": invoice_data, "bl": bl_data, "packing_list": packing_list_data, "certificate": certificate_data, }) print(result.is_valid)

OCR Engines

EngineTypeGPULanguagesBest For
PaddleOCRTraditional OCROptional111General documents (default)
EasyOCRTraditional OCROptional80+Korean text
GOT-OCR2.0Vision-LanguageRequiredMultiComplex layouts
VLMVision-LanguageRequiredMultiDirect image → JSON
2-Tier Auto Engine

The default auto engine uses confidence-based fallback:

  1. Tier 1 (CPU): PaddleOCR → EasyOCR
  2. Tier 2 (GPU): GOT-OCR2.0 → VLM

If Tier 1 average confidence falls below threshold (default 0.7), automatically escalates to Tier 2.

LLM Providers

ProviderEndpointDefault Model
vLLMhttp://localhost:8000/v1Qwen/Qwen3.5-32B-AWQ
Ollamahttp://localhost:11434qwen3.5:7b

Configure via CLI or YAML:

docpick config set llm.provider ollama

docpick config set llm.base_url http://localhost:11434 docpick config set llm.model qwen3.5:7b

Error Handling

The pipeline is designed to be resilient:

  • OCR failure → automatic fallback to next available engine
  • LLM JSON parse failure → automatic retry with correction prompt (up to 1 retry)
  • Partial results → returns whatever was extracted, with errors logged in result.errors
  • Document load failure → returns empty result with error message
result = pipeline.extract("damaged.pdf", schema=InvoiceSchema)

if result.errors: print("Pipeline warnings:", result.errors) if result.data: print("Partial extraction:", result.data)

Batch Processing

Process entire directories with parallel workers:

from docpick.batch import BatchProcessor

from docpick.schemas import InvoiceSchema

processor = BatchProcessor(concurrency=4) result = processor.process_directory( "./invoices/", schema=InvoiceSchema, recursive=True, )

print(f"Processed {result.succeeded}/{result.total} files") for path, extraction in result.results.items(): print(f"{path}: {extraction.data.get('total_amount')}")

Architecture

flowchart TD

A["📄 Document\n(PDF / Image)"] --> B["DocumentLoader\n(pypdfium2)"] B --> C["Tier 1: OCR\n(PaddleOCR / EasyOCR)\nCPU"] C --> D{"Confidence\n≥ threshold?"} D -->|"yes"| F["LLM Extractor\n(vLLM / Ollama)\nSchema prompt"] D -->|"no"| E["Tier 2: VLM\n(GOT / VLM)\nGPU"] E --> F F --> G["Pydantic Validation"] G --> H["✅ ExtractionResult"]

License

Apache 2.0 — all dependencies are Apache 2.0 or MIT licensed.


Part of the QuartzUnit ecosystem — composable Python libraries for data collection, extraction, search, and AI agent safety.

Pregunta a PopNx