Skip to main content
Glama

opencode-eyes-nvidia 👁️

MCP-сервер, предоставляющий возможность описания изображений с использованием хостируемого API NVIDIA NIM (https://integrate.api.nvidia.com/v1) с мультимодальной моделью MiniMax-M3.

Даёт «глаза» моделям, не обладающим мультимодальными возможностями. Передайте изображение — и получите подробное текстовое описание.

Возможности

Инструмент

Описание

describe_image

Описывает содержимое изображения, по умолчанию использует мультимодальную LLM MiniMax-M3

list_vision_models

Выводит список доступных мультимодальных (зрительных) моделей на API NVIDIA

Related MCP server: vision-mcp

Мультимодальные модели

Модель по умолчанию — minimaxai/minimax-m3 (вход: изображение/видео → выход: текст, контекст 1M, поддерживает рассуждения). Переключение возможно через NVIDIA_MODEL или параметр model в describe_image:

ID модели

Описание

minimaxai/minimax-m3

MiniMax-M3 мультимодальная MoE VLM (по умолчанию, поддерживает изображение/видео)

meta/llama-3.2-11b-vision-instruct

Meta Llama 3.2 11B Vision

meta/llama-3.2-90b-vision-instruct

Meta Llama 3.2 90B Vision

nvidia/llama-3.1-nemotron-nano-vl-8b-v1

NVIDIA Nemotron Nano VL 8B

google/gemma-3-27b-it

Google Gemma 3 27B IT

nvidia/nemotron-nano-12b-v2-vl

NVIDIA Nemotron Nano 12B v2 VL

qwen/qwen3.5-397b-a17b

Qwen 3.5 397B A17B VLM

Переменные окружения

Переменная

Обязателен

Значение по умолчанию

Описание

NVIDIA_API_KEY

Нет*

—

Один NVIDIA API Key (получить на https://build.nvidia.com, формат nvapi-...)

NVIDIA_API_KEYS

Нет*

—

Несколько ключей, разделённых запятой / точкой с запятой / пробелом / новой строкой

NVIDIA_API_KEY_1 … NVIDIA_API_KEY_N

Нет*

—

Нумерованные ключи, начиная с NVIDIA_API_KEY_1

NVIDIA_BASE_URL

Нет

https://integrate.api.nvidia.com/v1

Базовый адрес API

NVIDIA_MODEL

Нет

minimaxai/minimax-m3

Мультимодальная модель, используемая по умолчанию

NVIDIA_TIMEOUT

Нет

120

Тайм-аут запроса к API (в секундах)

NVIDIA_MAX_DIMENSION

Нет

2048

Максимальная длинная сторона изображения масштабируется до этого числа пикселей перед отправкой, 0 — без масштабирования

NVIDIA_JPEG_QUALITY

Нет

85

Качество JPEG-сжатия перед отправкой (0–100)

NVIDIA_THINKING_MODE

Нет

(пусто)

Режим рассуждений MiniMax-M3: enabled / disabled / adaptive

NVIDIA_ROTATION_MAX_RETRIES

Нет

Количество ключей

Общее количество попыток ротации (по всем ключам)

NVIDIA_ROTATION_BACKOFF

Нет

2

Секунды ожидания после каждого сбоя (ожидание сброса квоты)

* Нужно настроить хотя бы один ключ: достаточно любого из NVIDIA_API_KEY, NVIDIA_API_KEYS или NVIDIA_API_KEY_1..N; можно настраивать одновременно (объединяются с удалением дубликатов).

Ротация ключей (автоматическое переключение нескольких ключей)

Поддерживается настройка нескольких API-ключей: запросы используют ключи по порядку, при ошибке происходит автоматическое переключение на следующий ключ. Исходный ключ не удаляется — он лишь перемещается в конец очереди и ожидает обновления своей квоты. Весь процесс автоматический, без ручного вмешательства.

Принцип работы:

  1. При запуске все ключи объединяются в одну очередь (без дубликатов, по порядку NVIDIA_API_KEY → NVIDIA_API_KEYS → NVIDIA_API_KEY_1..N).

  2. Запрос по умолчанию использует первый ключ из очереди.

  3. При возникновении повторяемой ошибки (HTTP 401 / 403 / 404 / 408 / 429 / 5xx или тайм-аут соединения): первый ключ перемещается в конец очереди, ожидается NVIDIA_ROTATION_BACKOFF секунд, затем выполняется повторная попытка со следующим ключом.

  4. Если после перебора всех ключей (всего NVIDIA_ROTATION_MAX_RETRIES попыток) успеха нет, выбрасывается последняя ошибка.

  5. Состояние очереди сохраняется между вызовами — ограниченный по лимитам ключ оказывается в конце, а к моменту следующего оборота его квота, как правило, уже обновляется.

Пример:

# 方式一:逗号分隔多个 Key
set NVIDIA_API_KEYS=nvapi-key-1,nvapi-key-2,nvapi-key-3

# 方式二:编号 Key
set NVIDIA_API_KEY_1=nvapi-key-1
set NVIDIA_API_KEY_2=nvapi-key-2

# 方式三:单个 Key(向后兼容)
set NVIDIA_API_KEY=nvapi-key-1

В конфигурации OpenCode передайте переменные окружения MCP-серверу:

{
  "mcp": {
    "opencode-eyes-nvidia": {
      "type": "local",
      "command": ["python", "-m", "opencode_eyes_nvidia"],
      "enabled": true,
      "timeout": 120000,
      "environment": {
        "NVIDIA_API_KEYS": "{env:NVIDIA_API_KEYS}"
      }
    }
  }
}

Установка

pip install -r requirements.txt

Или установка из исходного кода:

pip install .

Запуск

# 设置环境变量(Windows,至少一种)
set NVIDIA_API_KEY=nvapi-你的key
# 或 set NVIDIA_API_KEYS=nvapi-key-1,nvapi-key-2

# 启动服务
python -m opencode_eyes_nvidia

Настройка в OpenCode

{
  "mcp": {
    "opencode-eyes-nvidia": {
      "type": "local",
      "command": ["python", "-m", "opencode_eyes_nvidia"],
      "enabled": true,
      "timeout": 120000,
      "environment": {
        "NVIDIA_API_KEYS": "{env:NVIDIA_API_KEYS}",
        "NVIDIA_API_KEY": "{env:NVIDIA_API_KEY}"
      }
    }
  }
}

Ручное тестирование

Проверка через stdio без запуска opencode:

$env:NVIDIA_API_KEY = "nvapi-xxx"
python -m opencode_eyes_nvidia

Затем отправьте MCP JSON-RPC сообщение в другом терминале, например:

{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"0.0.0"}}}
{"jsonrpc":"2.0","id":2,"method":"tools/list"}
{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"describe_image","arguments":{"image_path":"C:/path/to/photo.jpg"}}}

Отличия от opencode-eyes

  • API заменён с NVIDIA NIM (https://integrate.api.nvidia.com/v1)

  • Модель по умолчанию заменена с step-3.8-flash на MiniMax-M3 (minimaxai/minimax-m3)

  • Добавлены инструмент list_vision_models и возможность переключения между несколькими моделями

  • Поддерживается управление режимом рассуждений thinking_mode для MiniMax-M3

  • Добавлена ротация нескольких API-ключей: при ошибке автоматически переключается на следующий ключ, а исходный перемещается в конец очереди для ожидания обновления квоты

Лицензия

GXP9

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for analyzing images using multiple vision LLM providers (OpenCode, OpenAI, Anthropic, Google, and custom OpenAI-compatible endpoints). Provides tools to analyze single or multiple images, list providers, and test vision capabilities.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server that gives text-only AI agents the ability to understand images via vision tools, including multi-image analysis, OCR, comparison, and structured extraction. It uses providers like OpenAI, Anthropic, Gemini, and OpenRouter to return plain text descriptions.
    10
    7 npm
    MIT