About MCP Mistral OCR
MCP Mistral OCR is an MCP server that runs OCR on local and URL-based images and PDFs using Mistral AI's OCR API. It saves results as timestamped JSON files and can be run in Docker or locally.
Key features
- 01Process local images and PDF files
- 02Process URL files with explicit file type
- 03Save results as timestamped JSON files
- 04Docker containerization support
- 05UV-based package management
Use cases
- 01Run OCR on scanned documents from Claude Desktop
- 02Process files stored in a configured OCR_DIR directory
- 03Extract text from images or PDFs hosted at a URL
MCP support
This project is an MCP server that exposes the process_local_file and process_url_file tools to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMCP Mistral OCR
An MCP server that provides OCR capabilities using Mistral AI's OCR API. This server can process both local files and URLs, supporting images and PDFs.
Features
- Process local files (images and PDFs) using Mistral's OCR
- Process files from URLs with explicit file type specification
- Support for multiple file formats (JPG, PNG, PDF, etc.)
- Results saved as JSON files with timestamps
- Docker containerization
- UV package management
Environment Variables
MISTRAL_API_KEY: Your Mistral AI API keyOCR_DIR: Directory path for local file processing. Inside the container, this is always mapped to/data/ocr
Installation
Installing via Smithery
To install Mistral OCR for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @everaldo/mcp/mistral-crosswalk --client claude
Using Docker
- Build the Docker image:
docker build -t mcp-mistral-ocr .
- Run the container:
docker run -e MISTRAL_API_KEY=your_api_key -e OCR_DIR=/data/ocr -v /path/to/local/files:/data/ocr mcp-mistral-ocr
Local Development
- Install UV package manager:
pip install uv
- Create and activate virtual environment:
uv venv
source .venv/bin/activate # On Unix
# or
.venv\Scripts\activate # On Windows
- Install dependencies:
uv pip install .
Claude Desktop Configuration
Add this configuration to your 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"
}
}
}
}
Available Tools
1. process_local_file
Process a file from the configured OCR_DIR directory.
{
"name": "process_local_file",
"arguments": {
"filename": "document.pdf"
}
}
2. process_url_file
Process a file from a URL. Requires explicit file type specification.
{
"name": "process_url_file",
"arguments": {
"url": "https://example.com/document",
"file_type": "image" // or "pdf"
}
}
Output
OCR results are saved in JSON format in the output directory inside OCR_DIR. Each result file is named using the following format:
- For local files:
{original_filename}_{timestamp}.json - For URLs:
{url_filename}_{timestamp}.jsonorurl_document_{timestamp}.jsonif no filename is found in the URL
The timestamp format is YYYYMMDD_HHMMSS.
Supported File Types
- Images: JPG, JPEG, PNG, GIF, WebP
- Documents: PDF and other document formats supported by Mistral OCR
Limitations
- Maximum file size: 50MB (enforced by Mistral API)
- Maximum document pages: 1000 (enforced by Mistral API)
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.
