lemopian/mistral-ocr-mcp
If you are the rightful owner of mistral-ocr-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Mistral OCR MCP Server is a Model Context Protocol server that provides OCR functionality using Mistral's OCR API, enabling text extraction from PDF files and images.
Mistral OCR MCP Server
A Model Context Protocol (MCP) server that provides OCR (Optical Character Recognition) functionality using Mistral's OCR API. This server allows you to extract text content from PDF files and images through MCP-compatible clients like Cursor and Claude Desktop.
š For more context and practical usage examples, read the related article: How I Use Mistral Document AI to Consolidate My Notes
Usage example flowchart
Features
- Extract text from PDF files and images (JPG, JPEG, PNG, TIFF, BMP)
- Returns structured content with page-by-page breakdown
- Integrates seamlessly with MCP clients
- Built with FastMCP for optimal performance
Prerequisites
- uv package manager
- Python 3.10.1 or higher
- Mistral API Key : https://console.mistral.ai/api-keys
Installation
-
Clone the repository:
git clone https://github.com/lemopian/mistral-ocr-mcp.git cd mistral-ocr-mcp
-
Install dependencies using uv:
uv sync
-
Set up environment variables: Create a
.env
file in the project root:echo "MISTRAL_API_KEY=your_mistral_api_key_here" > .env
Configuration for MCP Clients
Add the following configuration to your MCP client config file:
{
"mcpServers": {
"mistral-ocr": {
"command": "/Users/yourusername/.local/bin/uv",
"args": [
"--directory",
"/path/to/mistral-ocr-mcp",
"run",
"main.py"
]
}
}
}
Important: Replace /path/to/mistral-ocr-mcp
with the actual path to your cloned repository.
Usage
Once configured, the server provides the following tool:
extract_file_content
Extracts text content from PDF files and images.
Parameters:
file_path
(string): Local path to the PDF or image file
Returns:
- Extracted text content as a string
Supported formats:
- PDF files (
.pdf
) - Image files (
.jpg
,.jpeg
,.png
,.tiff
,.bmp
)
Example usage :
Please extract the text from this document: /path/to/your/document.pdf
Development
Running the server directly
uv run main.py
Project structure
mistral-ocr-mcp/
āāā mistral_ocr/ # Package directory
ā āāā __init__.py # Package initialization
ā āāā extractor.py # Mistral OCR functionality
āāā docs/ # Documentation
ā āāā flowchart.png # Architecture flowchart
āāā main.py # MCP server implementation
āāā pyproject.toml # Project dependencies and configuration
āāā uv.lock # Dependency lock file
āāā .env # Environment variables (create this)
āāā .gitignore # Git ignore rules
āāā README.md # This file
Environment Variables
MISTRAL_API_KEY
: Your Mistral API key (required)
Troubleshooting
-
"MISTRAL_API_KEY must be set" error:
- Ensure you've created a
.env
file with your Mistral API key - Verify the API key is valid
- Ensure you've created a
-
"File not found" error:
- Check that the file path is correct and accessible
- Ensure the file format is supported
-
MCP connection issues:
- Verify the path to
uv
is correct in your MCP configuration - Ensure the repository path is absolute and correct
- Check that all dependencies are installed with
uv sync
- Verify the path to