About Mcp Ocr
Mcp Ocr is an MCP server that extracts text from images using Tesseract OCR. It accepts local files, image URLs and raw bytes, and is aimed at agent workflows that need to read text from pictures.
Key features
- 01Text extraction from images using Tesseract
- 02Local file, URL and raw byte inputs
- 03Support for multiple OCR languages
- 04Automatic Tesseract installation on macOS and Linux
Use cases
- 01Extracting text from scans or screenshots
- 02Letting an agent read text contained in images
MCP support
This project is an MCP server that exposes perform_ocr and get_supported_languages tools to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
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 OCR Server
A production-grade OCR server built using MCP (Model Context Protocol) that provides OCR capabilities through a simple interface.
Features
- Extract text from images using Tesseract OCR
- Support for multiple input types:
- Local image files
- Image URLs
- Raw image bytes
- Automatic Tesseract installation
- Support for multiple languages
- Production-ready error handling
Installation
# Using pip
pip install mcp-ocr
# Using uv
uv pip install mcp-ocr
Tesseract will be installed automatically on supported platforms:
- macOS (via Homebrew)
- Linux (via apt, dnf, or pacman)
- Windows (manual installation instructions provided)
Usage
As an MCP Server
- Start the server:
python -m mcp_ocr
- Configure Claude for Desktop:
Add to
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"ocr": {
"command": "python",
"args": ["-m", "mcp_ocr"]
}
}
}
Available Tools
perform_ocr
Extract text from images:
# From file
perform_ocr("/path/to/image.jpg")
# From URL
perform_ocr("https://example.com/image.jpg")
# From bytes
perform_ocr(image_bytes)
get_supported_languages
List available OCR languages:
get_supported_languages()
Development
- Clone the repository:
git clone https://github.com/rjn32s/mcp-ocr.git
cd mcp-ocr
- Set up development environment:
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e .
- Run tests:
pytest
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Security
- Never commit API tokens or sensitive credentials
- Use environment variables or secure credential storage
- Follow GitHub's security best practices
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
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.