opencode-vision-mcp
by avdivo
README.md
# opencode-vision-mcp
MCP-сервер для распознавания изображений. Отправляет картинку в OpenRouter AI и возвращает текстовое описание.
Использует две модели для надёжности: быструю (primary) и запасную (fallback).
## Быстрая установка
**Linux / macOS:**
```bash
curl -sL https://github.com/avdivo/opencode-vision-mcp/raw/main/install.sh | bash
```
**Windows (PowerShell):**
```powershell
iwr https://github.com/avdivo/opencode-vision-mcp/raw/main/install.ps1 | iex
```
Скрипты установят `uv` (если нет), скачают пакет из GitHub и установят команду `opencode-vision-mcp` в систему. После установки ключ нужно будет указать в конфиге.
## Ручная установка
### 1. Установите `uv`
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
### 2. Установите пакет
```bash
uv tool install --from git+https://github.com/avdivo/opencode-vision-mcp opencode-vision-mcp
```
### 3. Добавьте в opencode.jsonc
```jsonc
{
"mcp": {
"vision": {
"command": "opencode-vision-mcp",
"args": [],
"env": {
"OPENROUTER_API_KEY": "sk-or-v1-..."
},
"timeout": 120000
}
}
}
```
## Настройка (опционально)
Модели можно переопределить через переменные окружения:
| Переменная | По умолчанию | Описание |
|-----------|-------------|---------|
| `OPENROUTER_API_KEY` | — | **Обязательно.** Ключ API OpenRouter |
| `VISION_MODEL` | `google/gemma-4-31b-it` | Основная модель |
| `VISION_FALLBACK_MODEL` | `qwen/qwen3-vl-32b-instruct` | Запасная модель |
```bash
OPENROUTER_API_KEY="sk-or-v1-..." \
VISION_MODEL="google/gemma-4-31b-it" \
VISION_FALLBACK_MODEL="qwen/qwen3-vl-32b-instruct" \
uvx --from git+https://github.com/avdivo/opencode-vision-mcp opencode-vision-mcp
```
## Как это работает
Сервер читает stdin/stdout по протоколу JSON-RPC (MCP).
Инструмент: `read_image(file_path, prompt?)`
- `file_path` — путь к изображению
- `prompt` — вопрос по картинке (по умолчанию "Опиши, что изображено на картинке")
Сервер:
1. Кодирует изображение в base64
2. Отправляет в OpenRouter (primary модель)
3. Если primary не ответила за 30 секунд — шлёт fallback модели
4. Возвращает текстовый ответ
## Цена
- Primary модель: ~$0.0002 за скриншот
- Fallback модель: ~$0.0004 за скриншот
- primary срабатывает в большинстве случаев
TDQS
A3.7/5.0
Scored across 1 tool
Disambiguation5/5
With only one tool, there is no ambiguity between tools. The purpose is clear and distinct.
Naming Consistency5/5
A single tool name follows a clear verb_noun pattern (read_image) and there is no inconsistency.
Tool Count3/5
The server has a single tool, which feels thin for a vision-oriented server. While it can handle multiple tasks within one tool, the scope suggests more tools would be expected for a complete set.
Completeness3/5
The single tool covers text, object, and scene recognition with optional questions, but lacks other common operations like listing images, generating descriptions, or handling multiple images in batch. There are moderate gaps for typical vision use cases.
Maintenance
ActivityStale
ResponsivenessNo issues