项目简介

OpenAI GPT-Image-1 MCP 服务器是一个遵循 Model Context Protocol (MCP) 的后端应用,旨在为兼容MCP的LLM客户端提供通过OpenAI GPT-Image-1模型进行图像生成和编辑的能力。它将OpenAI API的功能封装为标准化的MCP工具,使得LLM可以方便地与图像生成服务交互。

主要功能点

  • 图像生成: 允许LLM客户端通过调用工具并提供文字描述(prompt)来生成全新的图像。
  • 图像编辑: 支持LLM客户端提供现有图像(通过文件路径或Base64编码)、编辑描述(prompt)以及可选的掩码(mask),调用工具对图像进行修改。
  • 自动保存图像: 所有生成的和编辑后的图像都会自动保存到本地文件系统中(默认为用户图片目录下的'gpt-image-1'子文件夹,也可自定义路径)。
  • 详细输出: 工具调用结果包含格式化的文本消息、图像文件路径以及OpenAI API的用量(token使用情况)。
  • 错误处理: 提供详细的错误报告,帮助诊断API调用或文件操作等问题。

安装步骤

该服务器作为一个npm包发布,可以通过以下两种方式运行:

  1. 使用npx直接运行 (推荐用于快速启动):

    无需全局安装,直接执行命令:

    npx -y @cloudwerxlab/gpt-image-1-mcp

    '-y' 标志会自动确认安装提示。

  2. 全局安装后运行:

    首先全局安装包:

    npm install -g @cloudwerxlab/gpt-image-1-mcp

    然后直接运行命令:

    @cloudwerxlab/gpt-image-1-mcp

运行前准备:

  • 确保您安装了 Node.js (v14 或更高版本)。
  • 您需要一个有效的 OpenAI API Key,并且该Key有权访问 GPT-Image-1 模型。将您的API Key设置为环境变量 'OPENAI_API_KEY'。
  • (可选)设置环境变量 'GPT_IMAGE_OUTPUT_DIR' 来自定义生成的图片保存路径。

服务器配置 (用于MCP客户端连接)

MCP服务器需要由兼容的MCP客户端来启动和连接。您需要在MCP客户端的设置中添加此服务器的配置信息。典型的配置是一个JSON对象,包含服务器的名称、启动命令、参数以及环境变量。

在您的MCP客户端设置文件中(通常是 'mcp_settings.json' 或类似文件),找到或创建 'mcpServers' 对象。在该对象下添加一个新的条目,例如命名为 'gpt-image-1',并按照如下方式配置:

  • 'server_name': 服务器在客户端中显示的唯一名称 (例如 'gpt-image-1')。
  • 'command': 启动服务器的可执行文件或脚本 (例如 'npx' 或 '@cloudwerxlab/gpt-image-1-mcp' 如果已全局安装)。
  • 'args': 传递给启动命令的参数 (例如使用npx时的 '["-y", "@cloudwerxlab/gpt-image-1-mcp"]')。
  • 'env': 一个对象,包含启动服务器时需要设置的环境变量 (例如 '{"OPENAI_API_KEY": "您的OpenAI API密钥", "GPT_IMAGE_OUTPUT_DIR": "可选:图片保存路径"}')。

请将 '"您的OpenAI API密钥"' 替换为您实际的API Key。'"可选:图片保存路径"' 可以根据需要设置或删除。

基本使用方法

一旦MCP客户端配置并成功启动了 OpenAI GPT-Image-1 MCP 服务器,LLM就可以通过服务器提供的工具与OpenAI进行图像交互。

  • 生成图片: LLM会调用名为 'create_image' 的工具,并提供一个 'prompt' 参数(文字描述)以及可选的尺寸、质量、数量等参数。
  • 编辑图片: LLM会调用名为 'create_image_edit' 的工具,提供 'image' 参数(要编辑的图片,可以是文件路径或Base64)、'prompt' 参数(编辑描述)以及可选的 'mask' 参数(掩码)、尺寸、质量等。

服务器接收到工具请求后,会调用OpenAI API,将结果保存到本地,并将包含保存路径、Base64数据(取决于客户端支持)和用量信息的响应返回给LLM客户端。LLM客户端(如支持图片显示)会向您展示生成的或编辑后的图片,并提供相关的文字说明。

信息

分类

AI与计算