OCR文件文本提取服务

OCR.space MCP Server是一个用于从图像和PDF中提取文本的OCR服务,支持多种语言、自动处理大文件和多种输出格式。

  • by agentic-ai-forge
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 agentic-ai-forge/ocr-space-mcp

使用说明

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 status

OCR本地文件

Extract text from /path/to/document.pdf
OCR 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

许可证

麻省理工学院-见 许可证

链接