Tesseract OCR
Local, private, instant ... works with zero API keys and zero internet. The safest fallback for every mode. The first OCR request starts a local worker.
No key means local Tesseract OCR. Add Gemini or OpenAI and the server tries AI vision first, falling back to OCR automatically when a cloud call fails, hits quota, or goes away.
Local, private, instant ... works with zero API keys and zero internet. The safest fallback for every mode. The first OCR request starts a local worker.
The compatibility path tries gemini-1.5-flash, then a fallback model. Choose a current model directly with the GEMINI_MODEL setting. Only the resized image leaves your machine.
gpt-4o-mini with an explicit low-detail setting. EXIF orientation applied, image limited to a 1024px box and compressed with sharp to keep cost predictable.
| Mode | Processing order | Meaning |
|---|---|---|
no key | OCR | Free local text extraction, works immediately |
auto | Gemini → OpenAI → OCR | Uses every available fallback automatically |
gemini | Gemini → OCR | Prefer Gemini, keep local OCR as the safety net |
openai | gpt-4o-mini → OCR | Prefer low-detail OpenAI vision |
ocr | OCR only | AI off ... never calls cloud, even with saved keys |
Client setup and provider settings are separate. Install the MCP server once, then switch providers whenever you want. Set OMNI_VISION_PROVIDER in the private .env, or use the provider menu.
Switching providers
The friendly terminal menu handles keys and modes. Adding or replacing a key selects that provider instantly; turning AI off keeps keys for later.
Open PowerShell (or your terminal) yourself and run this ... you handle the setup directly, no AI prompt needed:
$ npx --yes omni-vision-pro@latest provider
Choose Gemini or OpenAI and paste the key into a hidden prompt. Saving the key selects that provider immediately.
Copy only the key, then run this in PowerShell yourself (your AI chat can also run it for you). It never enters chat text, arguments, shell history or client JSON/TOML.
$ npx --yes omni-vision-pro@latest provider set --from-clipboard
Windows and macOS work out of the box. Linux needs wl-paste or xclip.
$ npx --yes omni-vision-pro@latest provider status
Then restart or reload your AI client. Keys added via process variables or a project .env are removed from that source.
Local OCR works right now. Add Gemini or OpenAI whenever you're ready.