MCP Mistral OCR
Realizar OCR en archivos locales y URLs (imágenes, PDFs) usando la API de Mistral AI.
Documentación
MCP Mistral OCR
Un servidor MCP que proporciona capacidades de OCR utilizando la API de OCR de Mistral AI. Este servidor puede procesar tanto archivos locales como URLs, soportando imágenes y PDFs.
Características
- Procesar archivos locales (imágenes y PDFs) usando el OCR de Mistral
- Procesar archivos desde URLs con especificación explícita del tipo de archivo
- Soporte para múltiples formatos de archivo (JPG, PNG, PDF, etc.)
- Resultados guardados como archivos JSON con marcas de tiempo
- Contenerización con Docker
- Gestión de paquetes con UV
Variables de Entorno
MISTRAL_API_KEY: Tu clave de API de Mistral AIOCR_DIR: Ruta del directorio para el procesamiento de archivos locales. Dentro del contenedor, siempre se asigna a/data/ocr
Instalación
Instalación mediante Smithery
Para instalar Mistral OCR para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @everaldo/mcp/mistral-crosswalk --client claude
Usando Docker
- Construir la imagen de Docker:
docker build -t mcp-mistral-ocr .
- Ejecutar el contenedor:
docker run -e MISTRAL_API_KEY=your_api_key -e OCR_DIR=/data/ocr -v /path/to/local/files:/data/ocr mcp-mistral-ocr
Desarrollo Local
- Instalar el gestor de paquetes UV:
pip install uv
- Crear y activar el entorno virtual:
uv venv
source .venv/bin/activate # On Unix
# or
.venv\Scripts\activate # On Windows
- Instalar las dependencias:
uv pip install .
Configuración de Claude Desktop
Añade esta configuración a tu claude_desktop_config.json:
{
"mcpServers": {
"mistral-ocr": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MISTRAL_API_KEY",
"-e",
"OCR_DIR",
"-v",
"C:/path/to/your/files:/data/ocr",
"mcp-mistral-ocr:latest"
],
"env": {
"MISTRAL_API_KEY": "<YOUR_MISTRAL_API_KEY>",
"OCR_DIR": "C:/path/to/your/files"
}
}
}
}
Herramientas Disponibles
1. process_local_file
Procesa un archivo desde el directorio OCR_DIR configurado.
{
"name": "process_local_file",
"arguments": {
"filename": "document.pdf"
}
}
2. process_url_file
Procesa un archivo desde una URL. Requiere especificación explícita del tipo de archivo.
{
"name": "process_url_file",
"arguments": {
"url": "https://example.com/document",
"file_type": "image" // or "pdf"
}
}
Salida
Los resultados del OCR se guardan en formato JSON en el directorio output dentro de OCR_DIR. Cada archivo de resultado se nombra usando el siguiente formato:
- Para archivos locales:
{original_filename}_{timestamp}.json - Para URLs:
{url_filename}_{timestamp}.jsonourl_document_{timestamp}.jsonsi no se encuentra ningún nombre de archivo en la URL
El formato de la marca de tiempo es YYYYMMDD_HHMMSS.
Tipos de Archivo Soportados
- Imágenes: JPG, JPEG, PNG, GIF, WebP
- Documentos: PDF y otros formatos de documentos soportados por Mistral OCR
Limitaciones
- Tamaño máximo de archivo: 50MB (impuesto por la API de Mistral)
- Páginas máximas de documentos: 1000 (impuesto por la API de Mistral)
