mcp_photo
Click on "Install 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., "@mcp_photogenerate an image of a sunset over mountains"
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.
mcp_photo — MCP Image Generation Server
An MCP server for generating and editing images via the OpenRouter API. Deployed in Docker, connects to Claude Desktop through stdio transport. Supports dynamic model discovery from OpenRouter and model metadata caching for optimized performance.
Features
generate_image — generate an image from a text prompt with support for multiple models;
project— organize output intooutput/{project}/subfolders (optional, defaults to_default);save_dir— directory for saving output (optional, takes priority overproject)edit_image — image-to-image editing (replacing or transforming part of an image);
project— organize output intooutput/{project}/subfolders (optional, defaults to_default);save_dir— directory for saving output (optional, takes priority overproject)list_models — dynamic list of available models with pricing and parameter details
Related MCP server: io.github.pvliesdonk/image-generation-mcp
Requirements
Python 3.11+
Docker Desktop
OpenRouter API key (https://openrouter.ai)
Quick Start
Clone the repository:
git clone https://github.com/afr13nd77/mcp_photo.git cd mcp_photoCopy
.env.exampleto.envand add your OpenRouter API key:cp .env.example .env # Edit .env: OPENROUTER_API_KEY=sk_...Build the container:
docker compose buildStart the server:
docker compose run --rm -i mcp-photo
Claude Desktop Integration
Add the following block to your ~/.claude/claude_desktop_config.json config:
{
"mcpServers": {
"mcp-photo": {
"command": "docker",
"args": ["compose", "-f", "I:/ai_projects/mcp_photo/docker-compose.yml", "run", "--rm", "-i", "mcp-photo"]
}
}
}Supported Models
Tier | Model | ID | Price/img | Note |
Tier 1 | Gemini 3.1 Flash |
| $0.00006 | Default |
Tier 1 | Gemini 3.1 Flash Lite |
| $0.00003 | Lightweight version |
Tier 1 | GPT-4 Vision |
| $0.00003 | OpenAI vision |
Tier 1 | DALL-E 3 |
| $0.00004 | DALL-E generation |
Note: The full list of available models and their current pricing is discovered dynamically when the list_models tool is invoked. The table above lists the most commonly used Tier 1 models.
Configuration
Variable | Type | Description | Default |
| string | OpenRouter API key | (required) |
| string | Directory for saved images |
|
| string | Default model for generate_image |
|
| float | Model cache time-to-live (seconds) |
|
| float | Timeout for OpenRouter requests (seconds) |
|
| int | Maximum number of retries on error |
|
| int | Maximum text prompt length |
|
| int | Maximum source image size (bytes) |
|
| string | Comma-separated list of allowed directories for image loading | (empty — any) |
| string | Log level (DEBUG, INFO, WARNING, ERROR) |
|
Development
Install development dependencies:
pip install -e ".[dev]"Run tests:
pytestLint:
ruff check .Format:
ruff format .Version
0.1.0 — Initial release with full MCP server functionality.
Документация на русском
mcp_photo — MCP-сервер генерации изображений
MCP-сервер для генерации и редактирования изображений через OpenRouter API. Развёртывается в Docker, подключается к Claude Desktop через stdio-транспорт. Поддерживает динамическое обнаружение моделей из OpenRouter и кэширование метаданных моделей для оптимизации производительности.
Возможности
generate_image — генерация изображения по текстовому промпту с поддержкой различных моделей;
project— организация в подпапкиoutput/{project}/(опционально, по умолчанию_default);save_dir— директория для сохранения (опционально, имеет приоритет надproject)edit_image — image-to-image редактирование (замена или трансформация части изображения);
project— организация в подпапкиoutput/{project}/(опционально, по умолчанию_default);save_dir— директория для сохранения (опционально, имеет приоритет надproject)list_models — динамический список доступных моделей с информацией о ценах и параметрах
Требования
Python 3.11+
Docker Desktop
OpenRouter API key (https://openrouter.ai)
Быстрый старт
Клонируйте репозиторий:
git clone https://github.com/afr13nd77/mcp_photo.git cd mcp_photoСкопируйте
.env.exampleв.envи вставьте ваш OpenRouter API key:cp .env.example .env # Отредактируйте .env: OPENROUTER_API_KEY=sk_...Соберите контейнер:
docker compose buildЗапустите сервер:
docker compose run --rm -i mcp-photo
Подключение к Claude Desktop
Добавьте следующий блок в конфиг ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"mcp-photo": {
"command": "docker",
"args": ["compose", "-f", "I:/ai_projects/mcp_photo/docker-compose.yml", "run", "--rm", "-i", "mcp-photo"]
}
}
}Поддерживаемые модели
Уровень | Модель | ID | Цена/img | Примечание |
Tier 1 | Gemini 3.1 Flash |
| $0.00006 | По умолчанию |
Tier 1 | Gemini 3.1 Flash Lite |
| $0.00003 | Облегчённая версия |
Tier 1 | GPT-4 Vision |
| $0.00003 | OpenAI vision |
Tier 1 | DALL-E 3 |
| $0.00004 | DALL-E generation |
Примечание: полный список доступных моделей и их актуальные цены обнаруживаются динамически при запуске инструмента list_models. Таблица выше содержит Tier 1 модели, наиболее часто используемые.
Конфигурация
Переменная | Тип | Описание | По умолчанию |
| string | API ключ OpenRouter | (требуется) |
| string | Директория для сохранённых изображений |
|
| string | Модель по умолчанию для generate_image |
|
| float | Время жизни кэша моделей (секунды) |
|
| float | Таймаут для запросов к OpenRouter (секунды) |
|
| int | Максимальное количество повторов при ошибке |
|
| int | Максимальная длина текстового промпта |
|
| int | Максимальный размер исходного изображения (байты) |
|
| string | Comma-separated список допустимых директорий для загрузки изображений | (пусто — любые) |
| string | Уровень логирования (DEBUG, INFO, WARNING, ERROR) |
|
Разработка
Установка зависимостей для разработки:
pip install -e ".[dev]"Запуск тестов:
pytestПроверка кода:
ruff check .Форматирование кода:
ruff format .Версия
0.1.0 — Первый релиз с полной функциональностью MCP-сервера.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityAmaintenanceMCP server for generating, editing, and processing images via multiple providers including Kilo, OpenRouter, OpenAI, and Gemini, with local tools for background removal, resizing, and cropping.372MIT
- AlicenseAqualityAmaintenanceMulti-provider image generation MCP server that enables image generation from Claude Desktop, Claude Code, or any MCP client using OpenAI, Google Gemini, Stable Diffusion, or a placeholder provider.101MIT
- Alicense-qualityDmaintenanceMCP server for AI image generation supporting multiple providers (OpenRouter, Together AI, Replicate, fal.ai) and compatible with various MCP agents.261MIT
- Alicense-qualityDmaintenanceMCP server for generating images using OpenRouter API, supporting models like Gemini 2.5 Flash. Enables image generation with flexible options like saving to local files.Do What The F*ck You Want To Public
Related MCP Connectors
MCP server for Grok Imagine AI video generation
MCP server for Flux AI image generation
MCP server for Google Veo AI video generation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/afr13nd77/mcp_photo'
If you have feedback or need assistance with the MCP directory API, please join our Discord server