mediamcp
Научите любого ИИ-агента создавать изображения и видео
mediamcp — это MCP-сервер, который соединяет вашего ИИ-ассистента — Claude Code, Claude Desktop, Cursor, Windsurf, VS Code или любой другой клиент с поддержкой MCP — с облачными медиамоделями (Gemini Flash Image, GPT-5 Image, Seedream, Veo, Sora, …) через OpenRouter или любой OpenAI-совместимый API.
English | Русский
⭐ Баннер выше сгенерирован самим mediamcp — один вызов generate_image.
Сгенерированные файлы всегда сохраняются на диск (по умолчанию в ~/Pictures/mediamcp), а каждый ответ содержит абсолютный путь к файлу и небольшое встроенное превью — агент сразу видит, что у него получилось.
ИИ-агентам: инструкция по установке, оптимизированная специально для вас, лежит в llms-install.md.
Вам понадобится API-ключ OpenRouter — получить его можно на https://openrouter.ai/keys.
Быстрая установка
Claude Code
claude mcp add mediamcp -e OPENROUTER_API_KEY=sk-or-v1-YOUR_KEY -- npx -y mediamcpClaude Desktop
Добавьте в claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json) и перезапустите Claude Desktop:
{
"mcpServers": {
"mediamcp": {
"command": "npx",
"args": ["-y", "mediamcp"],
"env": { "OPENROUTER_API_KEY": "sk-or-v1-YOUR_KEY" }
}
}
}Cursor
Или добавьте в ~/.cursor/mcp.json:
{
"mcpServers": {
"mediamcp": {
"command": "npx",
"args": ["-y", "mediamcp"],
"env": { "OPENROUTER_API_KEY": "sk-or-v1-YOUR_KEY" }
}
}
}Windsurf
Добавьте в ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"mediamcp": {
"command": "npx",
"args": ["-y", "mediamcp"],
"env": { "OPENROUTER_API_KEY": "sk-or-v1-YOUR_KEY" }
}
}
}VS Code (GitHub Copilot)
Или добавьте в .vscode/mcp.json (ключ запрашивается отдельно и не попадает в файл):
{
"servers": {
"mediamcp": {
"command": "npx",
"args": ["-y", "mediamcp"],
"env": { "OPENROUTER_API_KEY": "${input:openrouter-key}" }
}
},
"inputs": [
{
"id": "openrouter-key",
"type": "promptString",
"password": true,
"description": "OpenRouter API key (https://openrouter.ai/keys)"
}
]
}Related MCP server: imagine-mcp
Что сможет делать ваш агент
После установки просто скажите агенту что-нибудь вроде «сгенерируй hero-изображение для моего лендинга, 16:9», «убери фон с logo.png», «сделай 8-секундное видео с океанскими волнами на закате» или «оживи logo.png в 4-секундное видео» (image-to-video). Агент сам выберет подходящий инструмент:
Инструмент | Что делает |
| Текст → изображение (одно или несколько). Сохраняет на диск, возвращает путь и встроенное превью. Поддерживает |
| Существующее изображение (одно или несколько) + инструкция → отредактированное изображение. Принимает пути к файлам, |
| Текст → видео или картинка → видео (асинхронная задача, обычно 1–5 минут). Передайте |
| Возобновляет ожидание видеозадачи по |
| Выводит слаги и цены моделей с поддержкой изображений/видео — агент сможет сам подобрать модель. |
| Диагностика: наличие и валидность ключа, эндпоинт, значения по умолчанию, возможность записи в каталог вывода. Если что-то не работает — запускайте его первым. |
Конфигурация
Всё настраивается через переменные окружения в блоке env конфигурации вашего MCP-клиента:
Переменная | По умолчанию | Назначение |
| — | Обязательна. Ваш ключ OpenRouter. |
| — | Псевдоним |
|
| Корневой URL любого OpenAI-совместимого API. |
|
| Слаг модели изображений по умолчанию. |
|
| Слаг видеомодели по умолчанию. |
|
| Куда сохранять сгенерированные файлы ( |
|
| HTTP-таймаут на один запрос. |
|
| Возвращать встроенное превью вместе с каждым результатом ( |
|
| Длинная сторона встроенного превью в пикселях. |
|
| Диалект JSON Schema, в котором публикуются схемы инструментов. Значение |
Использование другого провайдера
Укажите в MEDIAMCP_BASE_URL любой OpenAI-совместимый эндпоинт и задайте соответствующий ключ:
"env": {
"MEDIAMCP_BASE_URL": "https://your-endpoint.example.com/v1",
"MEDIAMCP_API_KEY": "your-key",
"MEDIAMCP_MODEL": "your/image-model"
}mediamcp сам определяет, какой формат API поддерживает эндпоинт: выделенный эндпоинт /images (OpenRouter), /images/generations (классический OpenAI) или chat/completions с поддержкой изображений — первый сработавший вариант запоминается.
Диагностика проблем
Попросите агента запустить инструмент
check_config— он сообщит, что именно настроено неверно и как это исправить.Ту же диагностику можно запустить из терминала:
npx -y mediamcp --check(используются переменные окружения вашей оболочки).Типичные проблемы:
«No API key configured» — добавьте
OPENROUTER_API_KEYв блокenvзаписи сервера в конфигурации MCP-клиента (а не только в профиль оболочки) и перезапустите клиент.«Out of credits (HTTP 402)» — пополните баланс на https://openrouter.ai/credits.
«Not found (HTTP 404) … for model» — неверный слаг модели; запустите
list_models.В клиенте ничего не происходит — убедитесь, что установлен Node.js ≥ 20 (
node --version).«Tool '…' has an invalid outputSchema … unsupported dialect» — клиент проверяет схемы только по JSON Schema 2020-12. mediamcp публикует 2020-12 по умолчанию, так что ошибка означает старую версию: обновитесь и убедитесь, что
check_configпоказываетtool schema dialect: 2020-12.
Разработка
git clone https://github.com/legolev/mediamcp && cd mediamcp
npm install
npm run build # сборка в dist/index.js
npm test # юнит-тесты (vitest)
npm run inspect # открыть MCP Inspector с собранным серверомЛицензия
mcp-name: io.github.legolev/mediamcp
Available Tools
6 toolscheck_configCheck mediamcp ConfigurationARead-only
Diagnose the mediamcp server setup: endpoint, API key presence and validity, default models, and output directory writability. Run this first when any other mediamcp tool fails.
Inputs: ping. Returns: ok, api_key, preview, version, +8 more
check_video_statusCheck Video StatusAIdempotent
Check a previously started video generation job (from generate_video's polling_url or video id). If the job has completed, downloads the video, saves it to disk, and returns the absolute path.
Inputs: video_id, output_dir, polling_url, filename_prefix. Returns: path, status, message, video_id, +1 more
edit_imageEdit ImageA
Edit or transform existing image(s) with a text instruction — restyle, add or remove elements, change background, or combine several images into one scene. The result is saved to disk and its absolute path is returned, along with a small inline preview.
Inputs: images (required), prompt (required), model, output_dir, +1 more. Returns: failed, images
generate_imageGenerate ImageA
Generate one or more images from a text prompt using a cloud AI model. Every image is saved to disk and its absolute path is returned, along with a small inline preview. Use edit_image instead when starting from an existing image.
Inputs: prompt (required), count, model, output_dir, +2 more. Returns: failed, images
generate_videoGenerate VideoA
Generate a video from a text prompt (async job: starts generation, then waits and polls). Video generation typically takes 1-5 minutes. The finished file is saved to disk and its absolute path is returned. If waiting times out, a polling_url is returned — pass it to check_video_status later instead of starting a new (billed) job.
Inputs: prompt (required), model, output_dir, resolution, +5 more. Returns: path, status, message, video_id, +1 more
list_modelsList Media ModelsARead-only
List image- and video-capable model slugs available on the configured endpoint, with pricing where known. Use this to pick a model value for generate_image, edit_image, or generate_video.
Inputs: refresh. Returns: note, models, source
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: config diagnostics, async video status polling, image editing, image generation, video generation, and model listing. No overlap or ambiguity.
All tool names follow a consistent verb_noun pattern (e.g., check_config, generate_image, list_models), making it easy to predict the function.
Six tools is appropriate for a media-focused server, covering configuration, generation, editing, status checking, and model discovery without being too many or too few.
Core media workflows (generate, edit, check status, list models, diagnose config) are covered. Missing a tool to list or delete previously generated files, but the surface is largely complete.
Maintenance
Related MCP Connectors
The OpenRouter MCP server plugs OpenRouter into the AI tools you already use. Once connected, your assistant can pull live OpenRouter data (models, prices, your credits, rankings, and docs) and send quick test messages, all without leaving your editor.
Chat, image, video, and audio models from many vendors behind one remote MCP server and one key.
MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.
MCP server for Google Veo AI video generation
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server for AI-powered image, audio, and video generation, enabling media creation directly from Claude, Cursor, and other MCP clients.1144 npmMIT
- AlicenseAqualityFmaintenanceProduction-grade MCP server for image and video understanding and generation across Gemini, OpenAI, and Grok.5114 PyPI4Apache 2.0
- AlicenseAqualityDmaintenanceOpen-source MCP server for AI image and video creation, enabling prompt library search, prompt enhancement, and media generation from Claude Code, Cursor, and other MCP hosts.8MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for generating and editing images using OpenRouter API, with support for multiple models and dynamic model discovery. Runs in Docker and integrates with Claude Desktop via stdio transport.MIT