Local-first vision

Free by default. Cloud when you want.

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.

Default · Free
Aa

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.

Always available
AI vision

Gemini

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.

Resized image only
AI vision

OpenAI

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.

Resized image only

Provider modes

ModeProcessing orderMeaning
no keyOCRFree local text extraction, works immediately
autoGemini → OpenAI → OCRUses every available fallback automatically
geminiGemini → OCRPrefer Gemini, keep local OCR as the safety net
openaigpt-4o-mini → OCRPrefer low-detail OpenAI vision
ocrOCR onlyAI 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

One menu, full control

The friendly terminal menu handles keys and modes. Adding or replacing a key selects that provider instantly; turning AI off keeps keys for later.

1

Open the provider menu ... in PowerShell

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.

2

Or import a copied key safely

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.

3

Check, toggle, switch

$ 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.

Start free, upgrade anytime

Local OCR works right now. Add Gemini or OpenAI whenever you're ready.

Read the privacy policy