Skip to main content
Glama
atomtanstudio

chatgpt-image-bridge-mcp

ChatGPT Image Bridge

ChatGPT Image Bridge предоставляет текстовым агентам переносимый рабочий процесс с изображениями:

  1. Создайте или отредактируйте растровое изображение с помощью вошедшей в систему учетной записи Codex и ChatGPT пользователя.

  2. Сохраните его непосредственно в <project>/assets/generated/, если вызывающий код передает project_root.

  3. Изучите, сравните, расшифруйте или оцените его через отдельный визуальный проход OpenAI.

  4. Верните результаты визуального анализа в виде обычного текста, который может использовать любая основная модель.

Репозиторий является пакетом Agent Plugins 1.0. Его фактическая граница инструментов — стандартный MCP, поэтому он не привязан к Factory, DeepSeek Harness, Codex, Cursor, VS Code или другому отдельному хосту.

[!IMPORTANT] Это независимый экспериментальный мост. Он использует локально установленный интерфейс app-server Codex и встроенный навык imagegen, которые не являются стабильным публичным API провайдера. Обновление Codex может потребовать обновления адаптера. Этот проект не связан с OpenAI и не одобрен ею.

Что предоставляет

  • imagegen_status: проверяет локальный вход в Codex, право на генерацию изображений и визуальную модель.

  • generate_image: генерирует изображение и при необходимости сохраняет его в активном проекте.

  • generate_image_edit: редактирует одну-четыре локальные ссылки или ссылки на данные URL.

  • get_image_job: восстанавливает генерацию, которая переживает обычный тайм-аут MCP хоста.

  • analyze_image: превращает сгенерированное задание, локальный путь к изображению или data URL в визуальные доказательства, читаемые моделью.

Успешные задания всегда сохраняют каноническую копию в каталоге данных плагина. Указание абсолютного project_root дополнительно записывает уникально именованную, не перезаписываемую копию в assets/generated/.

Related MCP server: vision-router-mcp

Требования

  • macOS, Linux или Windows с Python 3.11 или новее.

  • uv в PATH для переносимого запуска плагина.

  • Локально установленный исполняемый файл Codex. Пакет ChatGPT для macOS обнаруживается автоматически; в других случаях поместите codex в PATH или задайте CODEX_BIN.

  • Учетная запись ChatGPT, вошедшая в Codex с поддержкой генерации изображений и моделью, которая заявляет поддержку ввода изображений.

Мост намеренно удаляет переменные окружения с API-ключами из дочернего процесса Codex. Он предназначен для использования локального входа ChatGPT/Codex пользователя, а не для незаметного расходования API-ключа.

Каждая установка использует собственный локальный вход в Codex и права учетной записи получателя. Плагин никогда не включает и не передает логин, подписку, файлы cookie или токены издателя.

Локальный запуск

uv sync
uv run chatgpt-image-bridge-mcp --stdio

Для MCP Inspector:

uv run mcp dev src/chatgpt_image_bridge_mcp/server.py

Для конечной точки Streamable HTTP только для localhost:

uv run chatgpt-image-bridge-mcp --http --port 8788

Конечная точка — http://127.0.0.1:8788/mcp. В этом альфа-релизе HTTP-режим не имеет переносимой аутентификации и принимает только привязки к loopback. Для обычных установок используйте stdio. Будущее аутентифицированное сетевое развертывание должно быть отдельной, явно проверенной функцией.

Установка в качестве Agent Plugin

Переносимые точки входа пакета:

  • plugin.json

  • mcp.json

  • skills/chatgpt-image-workflow/SKILL.md

Загрузите каталог репозитория в любой клиент Agent Plugins 1.0. Клиент предоставляет PLUGIN_ROOT и доступный для записи PLUGIN_DATA; mcp.json запускает сервер с помощью uv через stdio.

Agent Plugins стандартизирует пакет, а не универсальную команду установки. Пока клиенты не сойдутся в UX распространения, Git остается наиболее надежным источником истины.

Хосты, которые предоставляют отдельный встроенный инструмент для изображений, могут выбрать этот инструмент по имени перед обращением к MCP. Если встроенный инструмент ограничен подпиской, явно выберите инструмент generate_image этого плагина или его пространство имен сервера. См. заметки для клиентов.

Сборка пакета совместимости OpenAI/Codex

Текущий каталог плагинов OpenAI использует отдельную форму пакета .codex-plugin/plugin.json. Создайте автономный артефакт совместимости из того же исходного кода, а не поддерживайте вторую реализацию сервера:

python3 scripts/build_openai_plugin.py

Результат — dist/openai/chatgpt-image-bridge-mcp/. Он содержит тот же сервер и навык рабочего процесса, а также манифесты .codex-plugin/plugin.json и .mcp.json от OpenAI. Сохранение этого как сгенерированного вывода предотвращает расхождение в поведении между кросс-вендорным пакетом и артефактом установки для OpenAI.

Сборщик копирует только явный список разрешенных файлов для релиза и отклоняет символические ссылки, байт-код Python или путь локального чекаута. Это делает артефакт совместимости воспроизводимым из чистого Git-чекаута и предотвращает утечку игнорируемых файлов разработчика в релиз.

Настройка как обычного MCP

Клиенты, поддерживающие MCP, но не Agent Plugins, могут запускать тот же сервер напрямую. Адаптируйте внешнюю форму конфигурации под хост:

{
  "command": "uv",
  "args": [
    "run",
    "--project",
    "/absolute/path/to/chatgpt-image-bridge-mcp",
    "--locked",
    "--no-dev",
    "chatgpt-image-bridge-mcp",
    "--stdio"
  ],
  "env": {
    "CHATGPT_IMAGE_BRIDGE_MCP_DATA_DIR": "/absolute/writable/path/chatgpt-image-bridge-mcp",
    "UV_PROJECT_ENVIRONMENT": "/absolute/writable/path/chatgpt-image-bridge-mcp/venv"
  }
}

Предполагаемый рабочий процесс модели

Для генерации:

  1. Вызовите imagegen_status один раз.

  2. Вызовите generate_image с визуальным запросом и абсолютным корнем активного проекта.

  3. Используйте возвращенный relative_saved_path на веб-сайте или в приложении.

  4. Если задача требует визуального суждения, вызовите analyze_image с возвращенным job_id.

  5. Продолжайте использовать записанный анализ как визуальное доказательство. Не заменяйте растровое изображение на SVG или CSS только потому, что основная модель является текстовой.

Для существующего изображения вызовите analyze_image ровно с одним источником: job_id, image_paths или image_data_urls.

Конфигурация

Переменная

По умолчанию

Назначение

CODEX_BIN

автоопределение

Путь к исполняемому файлу Codex

CHATGPT_IMAGE_BRIDGE_MCP_DATA_DIR

PLUGIN_DATA или каталог данных пользователя

Постоянные задания и канонические ресурсы

CHATGPT_IMAGE_BRIDGE_MCP_WORK_DIR

<data>/work

Рабочий каталог для проходов Codex

CHATGPT_IMAGE_BRIDGE_MCP_MODEL

account default

Зарезервированный выбор текстовой/графической модели

CHATGPT_IMAGE_BRIDGE_MCP_VISION_MODEL

account default

Модель Codex с поддержкой зрения

CHATGPT_IMAGE_BRIDGE_MCP_IMAGE_TIMEOUT

1800

Максимальное время генерации у провайдера (секунды)

CHATGPT_IMAGE_BRIDGE_MCP_TOOL_WAIT

240

Секунды до возврата восстанавливаемого выполняющегося задания

CHATGPT_IMAGE_BRIDGE_MCP_VISION_TIMEOUT

240

Максимальное время визуального анализа (секунды)

CHATGPT_IMAGE_BRIDGE_MCP_MAX_IMAGE_BYTES

16777216

Лимит ввода/вывода на изображение

CHATGPT_IMAGE_BRIDGE_MCP_MAX_PENDING_JOBS

8

Максимум заданий в очереди плюс выполняющихся генераций

CHATGPT_IMAGE_BRIDGE_MCP_JOB_RETENTION_SECONDS

2592000

Хранение приватных метаданных заданий и канонических ресурсов; копии проекта никогда не очищаются

CHATGPT_IMAGE_BRIDGE_MCP_ALLOWED_ROOTS

не задано

Необязательный список, разделенный разделителем путей ОС, ограничивающий читаемые изображения и записываемые корни проектов

CHATGPT_IMAGE_BRIDGE_MCP_CODEX_ENV_ALLOWLIST

не задано

Необязательный список точных имен переменных окружения через запятую, передаваемых в Codex; значения могут достигать инструментов модели

По умолчанию доступ к локальным путям следует модели доверенного stdio MCP: вызывающий код может указать любой путь, который владелец учетной записи может прочитать, а сгенерированные копии проекта ограничены assets/generated/. Для общих или менее доверенных сред установите CHATGPT_IMAGE_BRIDGE_MCP_ALLOWED_ROOTS в один или несколько одобренных каталогов проектов.

Дочерний процесс Codex получает минимальную операционную среду, а не наследует окружение хост-процесса. Не добавляйте секреты в CHATGPT_IMAGE_BRIDGE_MCP_CODEX_ENV_ALLOWLIST.

Разработка

uv sync
uv run ruff check src tests scripts
uv run pytest
uv build
python3 scripts/build_openai_plugin.py

Тесты используют фиктивную среду выполнения учетной записи и не совершают вызовов к провайдеру или платных запросов на изображения. Для подтверждения конкретной сборки Codex и прав учетной записи требуется отдельный живой смоук-тест.

Перед публикацией релиза выполните указанные выше команды из чистого чекаута и проверьте одну реальную генерацию плюс один последующий вызов analyze_image с использованием упакованного плагина хотя бы в одном MCP-хосте. Совместимость во время выполнения может меняться независимо от этого репозитория, поскольку мост Codex app-server является экспериментальным.

Лицензия

MIT. См. LICENSE.

Related MCP Connectors

Related MCP Servers