Gemini OCR

Fornece serviços de Reconhecimento Óptico de Caracteres (OCR) usando a API Gemini do Google.

Documentação

Gemini OCR MCP Server

Este projeto fornece um serviço de OCR (Reconhecimento Óptico de Caracteres) simples, porém poderoso, através de um servidor FastMCP, aproveitando as capacidades da API Google Gemini. Ele permite extrair texto de imagens fornecendo um caminho de arquivo ou uma string codificada em base64.

Objetivo

Extraia o texto da seguinte imagem:

CAPTCHA

e converta-o em texto simples, por exemplo, fbVk

Recursos

  • OCR baseado em arquivo: Extrai texto diretamente de um arquivo de imagem no seu sistema local.
  • OCR base64: Extrai texto de uma string de imagem codificada em base64.
  • Fácil de usar: Expõe a funcionalidade de OCR como ferramentas simples em um servidor MCP.
  • Alimentado por Gemini: Utiliza os modelos avançados do Google Gemini para reconhecimento de texto de alta precisão.

Pré-requisitos

  • Python 3.8 ou superior
  • Uma chave de API do Google Gemini. Você pode obter uma em Google AI Studio.

Configuração e Instalação

  1. Clone o repositório:

    git clone https://github.com/WindoC/gemini-ocr-mcp
    cd gemini-ocr-mcp
    
  2. Crie e ative um ambiente virtual:

    # Install uv standalone if needed
    
    ## On macOS and Linux.
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    ## On Windows.
    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    
  3. Instale as dependências necessárias:

    uv sync
    

Exemplo de Configuração MCP

Se você estiver executando isso como um servidor para um aplicativo MCP pai, você pode configurá-lo no seu MCP principal config.json.

Exemplo para Windows:

{
  "mcpServers": {
    "gemini-ocr-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "x:\\path\\to\\your\\project\\gemini-ocr-mcp",
        "run",
        "gemini-ocr-mcp.py"
      ],
      "env": {
        "GEMINI_MODEL": "gemini-2.5-flash-preview-05-20",
        "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY"
      }
    }
  }
}

Exemplo para Linux/macOS:

{
  "mcpServers": {
    "gemini-ocr-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/your/project/gemini-ocr-mcp",
        "run",
        "gemini-ocr-mcp.py"
      ],
      "env": {
        "GEMINI_MODEL": "gemini-2.5-flash-preview-05-20",
        "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY"
      }
    }
  }
}

Nota: Lembre-se de substituir os caminhos de exemplo pelo caminho absoluto do diretório do seu projeto.

Ferramentas Fornecidas

ocr_image_file

Realiza OCR em um arquivo de imagem local.

  • Parâmetro: image_file (string): O caminho absoluto ou relativo para o arquivo de imagem.
  • Retorna: (string) O texto extraído da imagem.

ocr_image_base64

Realiza OCR em uma imagem codificada em base64.

  • Parâmetro: base64_image (string): A string codificada em base64 da imagem.
  • Retorna: (string) O texto extraído da imagem.