vision-eyes
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vision-eyesAnalyze the attached image in detail and identify the object."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Vision Eyes MCP — локальные «глаза» для ИИ-агентов
Один мега-инструмент vision_eyes. 100% локально (Pillow + numpy).
Без cloud API, без ключей, без оплаты.
Когда агент вызывает инструмент — получает детальный разбор кадра:
размер, яркость, RGB-статистика, доминантные цвета (k-means),
сетка 3×3 с координатами, гистограмма яркости, крупные однородные
регионы с bbox, резкость, плотность краёв, симметрия.
Попиксельно: pixel x,y. Зум: crop. Координаты: grid. Diff: compare.
Установка в 1 команду
pip install "git+https://github.com/Mishaadevv/vision-eyes-mcp.git"Проверка:
python -m vision_eyes_mcp.server --help # или просто запустится по stdioRelated MCP server: Vision MCP Server
Подключение
opencode (opencode.json)
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"vision-eyes": {
"type": "local",
"command": ["python", "-m", "vision_eyes_mcp.server"],
"enabled": true
}
}
}С uv (если установлен):
{ "mcp": { "vision-eyes": { "type": "local",
"command": ["uvx", "--from", "git+https://github.com/Mishaadevv/vision-eyes-mcp.git", "vision-eyes-mcp"] } } }Cline (.cline/mcp_settings.json или настройки MCP)
{
"mcpServers": {
"vision-eyes": {
"command": "python",
"args": ["-m", "vision_eyes_mcp.server"]
}
}
}Claude Code (claude mcp add)
claude mcp add vision-eyes -- python -m vision_eyes_mcp.serverCodex (~/.codex/config.toml)
[mcp_servers.vision-eyes]
command = "python"
args = ["-m", "vision_eyes_mcp.server"]Cursor / Windsurf / любой stdio-клиент
Command:
pythonArgs:
-m vision_eyes_mcp.server
Картинки прямо из чата + финальный ответ
Не нужно сохранять файлы: агент передаёт вложение из чата как image_base64
(поддерживаются data:image/...;base64,...), а правило в AGENTS.md
заставляет его делать это автоматически. Скопируй AGENTS.md в свой проект.
Финальное название объекта даёт action=classify — локальный CLIP
(zero-shot, без облака и оплаты). Включение одной командой:
pip install torch --index-url https://download.pytorch.org/whl/cpu
pip install "vision-eyes-mcp[local-ai] @ git+https://github.com/Mishaadevv/vision-eyes-mcp.git"Первый запуск classify скачает веса CLIP (~350 МБ) с HuggingFace,
дальше работает офлайн.
vision_eyes action=classify image_path="tank.png" lang=ru
vision_eyes action=classify image_path="tank.png" labels="T-34 tank, M46 Patton tank, Tiger tank" lang=ruСкриптовые детекторы (без моделей, v0.3.0)
action=analyze detail=deep добавляет секцию «Подсказки для опознания» —
гипотезы, не факты:
кандидаты в ствол (длинные прямые в средней зоне кадра + куда зумить для проверки),
покрытие хаки/олива и пустынного загара (военная техника?),
улица/ангар по верхней полосе и ровности света.
Инструмент предлагает — агент проверяет кропами своим зрением.
Использование (агентом)
vision_eyes action=analyze image_path="C:/pics/photo.png" detail=deep lang=ru
vision_eyes action=pixel image_path="C:/pics/photo.png" x=120 y=80
vision_eyes action=crop image_path="C:/pics/photo.png" x0=40 y0=50 x1=300 y1=400 scale=4
vision_eyes action=grid image_path="C:/pics/photo.png" grid_step=100
vision_eyes action=compare image_path="a.png" image_path2="b.png"Координаты: x 0..W-1 слева направо, y 0..H-1 сверху вниз.
detail: standard | deep (по умолч.) | ultra.
Вход: image_path ИЛИ image_url ИЛИ image_base64.
Как это даёт «каждый пиксель»
analyze— весь кадр цифрами + bbox регионов.crop— сохраняет увеличенный кроп, агент смотрит его своим зрением.pixel— точный цвет точки + окрестность 5×5 и патч 32×32.grid— сетка координат для привязки зон.
Семантику («что за объект») докручивает сам агент своим VLM по кропам — сервер даёт ему цифры и зумы, которых нет при обычном просмотре.
Локальная разработка
pip install -e ".[dev]" # dev-экстры нет, хватит: pip install -e .
python -m vision_eyes_mcp.server # stdioЗависимости: mcp>=1, pillow>=10, numpy>=1.24. Совместимо с MCP SDK v1 (FastMCP) и v2 (MCPServer).
Лицензия MIT.
Available Tools
1 toolvision_eyesVision Eyes — локальный разбор изображенияA
LOCAL image eyes for AI agents. No cloud, no API keys, no payments — Pillow+numpy only. action='analyze' gives full breakdown (size, brightness, RGB stats, dominant colors, 3x3 grid, brightness histogram, homogeneous regions with bboxes, sharpness, edge density). action='pixel' returns exact color at x,y + neighborhood. action='crop' saves an enlarged crop so the agent can look closer with its own vision. action='grid' saves a coordinate-grid overlay. action='compare' diffs two images. action='classify' gives the FINAL name of the object via local CLIP zero-shot (needs optional local-ai install, still no cloud; pass labels='a, b, c' for exact candidates, e.g. labels='T-34 tank, M46 Patton tank, Tiger tank'). Give image_path OR image_url OR image_base64 (chat attachments as base64/data-URL work). Coordinates: x 0..W-1 left->right, y 0..H-1 top->bottom.
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | x для pixel | |
| y | No | y для pixel | |
| x0 | No | crop left | |
| x1 | No | crop right | |
| y0 | No | crop top | |
| y1 | No | crop bottom | |
| lang | No | ru | en | ru |
| scale | No | Увеличение кропа 1-8 | |
| action | No | analyze | pixel | crop | grid | compare | classify | analyze |
| detail | No | standard | deep | ultra | deep |
| labels | No | Кандидаты для classify через запятую, напр. 'T-34 tank, Tiger tank' | |
| grid_step | No | Шаг сетки в px | |
| image_url | No | HTTP(S) URL картинки | |
| image_path | No | Локальный путь к файлу | |
| image_url2 | No | Второй URL для compare | |
| output_dir | No | Куда сохранять crop/grid | |
| image_path2 | No | Второй файл для compare | |
| image_base64 | No | base64 (можно data:image/..;base64,..) | |
| image_base642 | No | Второй base64 для compare |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It clearly states local-only operation, no API keys/payments, the Pillow+numpy dependency, the optional local-ai install for classify, and the coordinate convention (x left→right, y top→bottom). It does not mention error cases or what happens when no image source is provided, but the main behavioral traits are transparently disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but every sentence earns its place: value proposition first, then per-action behavior, then input formats, then coordinate conventions. It is a single run-on paragraph rather than structured bullets, which slightly hurts scanability, but there is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex multi-action tool with 19 optional parameters, the description covers the action vocabulary, image input variants, the classification label contract, dependency requirements, and coordinate rules. Since an output schema exists, not detailing return values is acceptable. A minor gap is that it doesn't specify which parameters are required per action (e.g., compare needs a second image), but overall the guidance is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, setting a baseline of 3, but the description adds meaning beyond the terse per-parameter schema text: it explains the three interchangeable input sources (image_path/image_url/image_base64), the labels format with concrete examples, and which action consumes which parameters. This meaningfully helps an agent map parameters to intents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'LOCAL image eyes for AI agents' and sharply enumerates six concrete actions (analyze, pixel, crop, grid, compare, classify), each with its own output. It states exactly what the tool does — local image parsing with no cloud — and is specific enough to stand alone even without sibling tools to differentiate from.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There are no sibling tools, so no alternative selection is needed, but the description gives clear per-action usage context: pixel for exact color at coordinates, crop 'so the agent can look closer', classify with explicit label examples. It also flags the optional local-ai install requirement for classify, which is exactly the kind of conditional guidance an agent needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.3.0- First observed
vision_eyes
TDQS
Scored across 1 tool
There is only one tool, so there is no risk of selecting the wrong tool. The internal action modes are clearly separated and described, making each use case easy to distinguish.
With a single tool, there is no naming inconsistency to penalize. 'vision_eyes' is a clear, snake_case, descriptive name that matches the server's purpose.
A single tool is on the low end of tool countsainer, but the tool is not trivial since it packs many actions into an action parameter. The unified design is reasonable, though splitting it into separate tools might improve clarity.
The single tool covers a wide range of local image needs: analysis, exact pixel lookup, cropping, grid overlays, image comparison, and classification. The main gap is that it relies on optional local-ai installation for classification and lacks some advanced image operations, but core 'eyes' functionality is well covered.
Maintenance
Related MCP Connectors
Image & PDF tools for AI agents: compress, convert, resize, PDF, AI vision, pipeline.
Video, audio, and image processing for AI agents: convert, transcribe, upscale - 150+ operations.
PDF, image, video, OCR, screenshot, SQL, QR and text tools for agents. No API key, no signup.
Image processing for AI agents: resize, convert, compress, crop, and web-ready AI-generated images.
Related MCP Servers
- FlicenseAqualityNot gradedmaintenanceEnables AI agents to analyze images through vision AI providers (Gemini, OpenAI, Claude), performing tasks like image description, object detection with bounding boxes, region-specific analysis, and precise color extraction without consuming context window with raw pixels.4-
- AlicenseAqualityDmaintenanceEnables AI agents to analyze images, extract text, compare images, and analyze video through any OpenAI-compatible vision model.4151 npm20MIT
- AlicenseNot gradedqualityAmaintenanceProvides local image understanding for text-only LLMs with tools for image analysis, OCR, object detection, and cropping, all processed on-device.2MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to process images locally via file paths—converting, resizing, removing backgrounds, smart cropping, upscaling, reading or stripping metadata, and batch processing—without files ever leaving the device.MIT