OCR.space MCP服务器
    
Python MCP服务器 OCR空间 -使用OCR从图像和PDF中提取文本。
特性
- 六个综合工具:
- ocr_file -从本地图像/PDF中提取文本 - ocr_url -从URL处的图像/PDF中提取文本 - ocr_auto - 智能OCR 自动处理超大文件 - split_pdf -将大型PDF拆分为与API兼容的区块 - list_languages -显示支持的OCR语言 - check_tier_status -验证API配置
- 自动超大文件处理:
- PDF太大?自动按页面分割,OCR每个块,连接结果 - 图像太大?自动压缩,同时保持质量
- 双层支持:
- 免费层:1 MB限制,美国服务器 - 专业版:5 MB限制,欧盟GDPR合规端点
- 全面支持API参数:
- 26+种语言,包括自动检测 - 两个OCR引擎(针对不同用例进行了优化) - 表优化模式 - 自动旋转检测 - 可搜索的PDF生成 - 将结果保存为TXT或JSON格式
安装
# With uv (recommended)
uv sync
# With pip
pip install -e .配置
API密钥
在获取免费API密钥 ocr.space/ocrapi/freekey.
对于PRO功能(较大的文件、欧盟端点),请在以下网址注册 ocr.space/ocrapi.
环境变量
复制 .envrc.example 到 .envrc 并配置:
# Required: Free tier API key
export OCR_SPACE_API_KEY="your-free-api-key"
# Optional: PRO tier for GDPR-compliant EU processing
export OCR_SPACE_PRO_API_KEY="your-pro-api-key"
export OCR_SPACE_PRO_ENDPOINT="https://eu.api.ocr.space/parse/image"然后启用 direnv allow.
克劳德代码/MCP配置
添加到 .mcp.json:
{
"mcpServers": {
"ocr-space": {
"command": "uv",
"args": ["run", "--project", "/path/to/ocr-space-mcp", "ocr-space-mcp"],
"env": {
"OCR_SPACE_API_KEY": "${OCR_SPACE_API_KEY}",
"OCR_SPACE_PRO_API_KEY": "${OCR_SPACE_PRO_API_KEY}",
"OCR_SPACE_PRO_ENDPOINT": "${OCR_SPACE_PRO_ENDPOINT}"
}
}
}
}OpenCode配置
添加到 opencode.json:
{
"mcp": {
"ocr-space": {
"command": "uv",
"args": ["run", "--project", "/path/to/ocr-space-mcp", "ocr-space-mcp"],
"env": {
"OCR_SPACE_API_KEY": "${OCR_SPACE_API_KEY}",
"OCR_SPACE_PRO_API_KEY": "${OCR_SPACE_PRO_API_KEY}",
"OCR_SPACE_PRO_ENDPOINT": "${OCR_SPACE_PRO_ENDPOINT}"
}
}
}
}用法
检查配置
Check my OCR.space tier statusOCR本地文件
Extract text from /path/to/document.pdfOCR this image using the PRO tier: /path/to/scan.png参数:
| 参数 | 说明 | 默认值 |
|---|---|---|
file_path | 图像/PDF路径(必填) | - |
tier | free 或 pro | free |
language | OCR语言代码 | eng |
ocr_engine | 1(快速)或2(准确) | 1 |
output_path | 将结果保存到文件 | - |
output_format | txt 或 json | txt |
detect_orientation | 自动旋转图像 | false |
scale | 高档低分辨率图像 | false |
is_table | 针对表格进行优化 | false |
is_create_searchable_pdf | 生成可搜索的PDF | false |
从URL进行OCR
Extract text from https://example.com/document.png大文件的智能OCR(OCR_auto)
这 ocr_auto 工具自动处理超过API大小限制的文件:
OCR this large document: /path/to/big-scan.pdf它是如何工作的:
- PDF文件:按页面分割成块,对每个块进行OCR,连接结果
- 图像:压缩(质量+大小调整)直到低于限制,然后进行OCR
参数: 同 ocr_file,但没有大小限制错误!
仅拆分PDF
如果你只想在没有OCR的情况下分割一个大的PDF:
Split /path/to/large.pdf for free tier processing在临时目录中创建多个较小的PDF文件(或指定 output_dir).
列出语言
What OCR languages are supported?支持的语言: 阿拉伯语、保加利亚语、中文(简体/繁体)、克罗地亚语、捷克语、丹麦语、荷兰语、英语、芬兰语、法语、德语、希腊语、匈牙利语、意大利语、日语、韩语、波兰语、葡萄牙语、俄语、斯洛文尼亚语、西班牙语、瑞典语、泰语、土耳其语、乌克兰语、越南语。
使用 language=auto 引擎2用于自动语言检测。
层级比较
| 功能 | 免费 | PRO |
|---|---|---|
| 文件大小限制 | 1 MB | 5 MB |
| 服务器位置 | 仅限美国 | 欧盟可用 |
| 费率限制 | 500/天 | 无限制 |
| GDPR合规性 | 否 | 是(欧盟端点) |
| 价格 | 免费 | 每月30美元 |
OCR引擎
| 发动机 | 最适合 |
|---|---|
| 发动机1 | 更快的处理速度、亚洲语言、大图像 |
| 发动机2 | 自动语言检测、特殊字符、旋转文本 |
发展
# Install with dev dependencies
uv sync --extra dev
# Run linter
uv run ruff check .
# Format code
uv run ruff format .
# Run tests
uv run pytest -v
# Run tests with coverage
uv run pytest --cov=ocr_space_mcp --cov-report=term-missing许可证
麻省理工学院-见 许可证
链接
-
