Skip to main content
Glama
2xapi

2Xapi.com GPT-image MCP Server

by 2xapi

2Xapi.com GPT-image MCP Server

把 OpenAI 兼容的文生图/图生图接口封装成 MCP 工具。接入 Claude Code / Codex / Cursor / Claude Desktop 等客户端后,对话里说「画一只柴犬」就能出图,发一张图说「改成动漫风」就能改图。每位用户使用自己的 API Key,消耗计费到各自账号。

效果演示

左:generate_image 文生图(「一只可爱的橘猫,坐在窗台上,简单插画风格」);中/右:对左图用 edit_image 图生图改风格(全部为真实调用输出)。

文生图

图生图 · 改水彩风 + 樱花

图生图 · 改水墨风

文生图示例

图生图水彩示例

图生图水墨示例

Related MCP server: openai-image-gen

核心功能

  • 🎨 文生图 generate_image:文字描述生成图片,返回图片 URL + 结构化结果

  • ✏️ 图生图 edit_image:传 1-10 张图 + 文字指令,改风格 / 合成 / 扩图(走 /images/edits,multipart 上传)

  • 🖼 mask 局部重绘:可选 mask 图(alpha 通道 PNG,透明区域=重绘区),只改指定区域

  • 📥 四种图片输入:本地文件路径 / http(s) URL / data: URI / 裸 base64(URL 自动下载再上传)

  • 🛡 输入安全校验:单文件 ≤50MB;本地路径白名单(IMAGE_ALLOWED_ROOTS,默认仅主目录);npm 版用 sharp 校验真实格式(扩展名不符自动纠正),超 4MB 或 1024px 自动压缩后上传

  • 🔐 API Key 脱敏:错误信息里的 key 自动打码;配置查看时只显示掩码

  • 🚦 AI 审核闸门(可选):提示词先过审核模型再进生图账号,减少风控/封号(fail-open,审核服务不可达时自动放行)

  • ⚙️ 对话内配置set_config / set_moderation 改端点、key、模型、尺寸,立即生效,无需重启

  • 📊 结构化结果structuredContent 返回文件路径 + file:// URI + usage 用量(include_preview=true 可选附加内联 JPEG 预览;默认关闭,避免部分 Responses 流式客户端报错)

使用方法

接入客户端后,直接用自然语言对话即可,AI 会自动选工具:

你说

调用

「画一只柴犬,竖图」

generate_image(prompt=..., size="1024x1536")

「画 3 张星空壁纸」

generate_image(prompt=..., n=3)

「把这张图改成动漫风」(发图或给路径)

edit_image(images=["/path/to/photo.jpg"], prompt="改成动漫风")

「把这两张图合成一张」

edit_image(images=["a.png", "b.png"], prompt="合成一张")

「只重绘帽子区域」(提供 mask 图)

edit_image(images=["a.png"], prompt="换一顶帽子", mask="mask.png")

「查看当前配置」

get_config()

「模型换成 dall-e-3」

set_config(model="dall-e-3")

「更新 key 为 sk-yyy」

set_config(api_key="sk-yyy")

「列出后端有哪些模型」

list_image_models()

mask 说明:alpha 通道 PNG,透明区域 = 重绘区,不透明 = 保留;需后端支持(2xapi.com 中转站已验证支持)。

一键安装(npm 版,推荐)

前提:Node.js 18+。发布到 GitHub Releases 后:

Claude Code

claude mcp add -s user gpt-image \
  --env IMAGE_API_KEY=你的key \
  -- npx -y https://github.com/wenkezhi8/2Xapi.com-GPT-image-MCP-Server/releases/download/v0.3.1/gpt-image-mcp-server-0.3.1.tgz

Codex

codex mcp add GPT-image \
  --env IMAGE_API_KEY=你的key \
  -- npx -y https://github.com/wenkezhi8/2Xapi.com-GPT-image-MCP-Server/releases/download/v0.3.1/gpt-image-mcp-server-0.3.1.tgz

Claude Desktop / Cursor(手动配置)

{
  "mcpServers": {
    "GPT-image": {
      "command": "npx",
      "args": ["-y", "https://github.com/wenkezhi8/2Xapi.com-GPT-image-MCP-Server/releases/download/v0.3.1/gpt-image-mcp-server-0.3.1.tgz"],
      "env": {
        "IMAGE_API_KEY": "你的key"
      }
    }
  }
}
  • 🤖 AI 一键部署:把仓库地址发给任何 AI(Codex / Claude),它会读 AGENTS.md 自动完成部署

  • 一键脚本(二选一):

    • ./install.sh(需先发布 GitHub Release):IMAGE_API_KEY=你的key ./install.sh,自动检测 claude/codex 并接入

    • ./deploy.sh(本地构建,不依赖 Release):./deploy.sh --client codex --key 你的key

  • 📄 部署文档:GPT-image MCP Server部署文档.md(约 5 分钟,含给 AI 的提示词模板)

  • 🐍 Python 版:src/(手动部署用,支持 uvx / uv run,零额外依赖;预览功能需另装 Pillow)

  • ⚡ npm 版:gpt-image-mcp-server/(一键安装,推荐)

环境变量

变量

作用

必填

IMAGE_API_KEY

你自己的 API Key(计费到你的账号)

IMAGE_API_BASE_URL

覆盖接口根地址(到 /v1);默认用内置端点

按需

IMAGE_CONFIG_PATH

覆盖配置文件保存路径(默认 ~/.gpt-image-mcp/config.json

按需

IMAGE_ALLOWED_ROOTS

允许读取的本地图片路径白名单(: 分隔,默认仅主目录);本地路径输入必须落在白名单内

按需

key 与端点必须配套:你的 key 是哪家供应商的,端点就填哪家的。

默认端点说明

  • 本项目默认端点:https://2xa.cc.cd/v1 —— 这是 2xapi.com 中转站的 OpenAI 兼容生图接口(官网 https://2Xapi.com),本 MCP 默认配套的就是这个方案。

  • 使用 2xapi.com 中转站的 API Key 可直接运行,无需配置端点

  • 如果想使用其他 API 端点(OpenAI 官方、Azure、其他中转站等),需要自己更换

    • 一键安装/npx 方式:设置环境变量 IMAGE_API_BASE_URL=https://你的端点/v1

    • Python 版:修改 config.jsonapi_base_url 字段

    • 更换后 key 必须与该端点配套,否则报 401。

工具

工具

作用

generate_image

文生图,返回图片 URL(可自动存本地)

edit_image

图生图(图文生图):传 1-10 张图 + 文字指令,改图 / 合成 / 扩图;支持 mask 局部重绘

get_config

查看当前配置(API Key 自动打码)

set_config

对话里改端点 / key / 模型 / 尺寸,立即生效

set_moderation

配置 AI 审核闸门(可选,fail-open)

list_image_models

列出后端可用模型

目录结构

.
├── docs/images/                      ← README 演示配图
├── GPT-image MCP Server部署文档.md   ← 部署文档(必读)
├── gpt-image-mcp-server/            ← npm 版(TypeScript,一键安装)
├── src/                             ← Python 版(uvx/uv run)
├── pyproject.toml / uv.lock
└── LICENSE

安全

  • config.json 含真实 API Key,已被 .gitignore 排除,不要提交、不要外发

  • 分发代码前删除 config.json;只保留 config.example.json 模板。

Available Tools

6 tools
edit_imageEdit image(s) (img2img)A

Edit, transform, combine or extend one or more input images following a text prompt (image + text to image, aka img2img) via the configured OpenAI-compatible images/edits API. Each image reference can be a local file path, an http(s) URL, a data: URI, or raw base64. An optional mask marks the region to regenerate. Returns the edited image URL(s) and metadata; optionally saves locally. Endpoint, key and default model come from config (see get_config / set_config).

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo
maskNo
saveNo
sizeNo
modelNo
imagesYes
promptYes
qualityNo
include_previewNo

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full behavioral burden. It discloses supported image reference formats, mask usage, return behavior ('Returns the edited image URL(s) and metadata'), optional local saving, and configuration-derived credentials/model. It does not detail local save destination/overwrite behavior or API rate-limit/cost effects, but overall it provides substantial operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, followed by compact, non-redundant sentences covering accepted input formats, mask behavior, output/save behavior, and configuration source. Every sentence adds useful information without padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 9 parameters, no annotations, no output schema, and zero schema descriptions, so the description needs to be quite comprehensive. It covers the essential workflow and several optional behaviors, but leaves size/quality/n/include_preview semantics and output metadata shape undocumented, which limits how confidently an agent can use the full parameter surface.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for undocumented parameters. It adds meaning for images (local path, URL, data URI, base64), mask (region to regenerate), save (optional local saving), and model (default from config), but it does not clarify n, size, quality, or include_preview beyond their bare schema names and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise verb set ('Edit, transform, combine or extend') applied to 'one or more input images' and clarifies the modality as 'image + text to image, aka img2img'. This clearly distinguishes the tool from the sibling generate_image, which would operate without input images.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the use case clear: editing/transforming existing images with a prompt via the images/edits API. It also points to get_config/set_config for endpoint/key/model configuration, but it does not explicitly state when to prefer generate_image or list_image_models instead, leaving alternatives to inference rather than instruction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_imageGenerate image (GPT-image)A

Generate one or more images from a text prompt via the configured OpenAI-compatible image API. Endpoint, key and default model come from config (see get_config / set_config); per-call args override them. Returns the image URL, and the local path if save_dir is set or save=true.

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo
saveNo
sizeNo
modelNo
promptYes
qualityNo
include_previewNo

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses the external API dependency, config-based endpoint/key/model resolution, per-call overrides, and the return value (image URL plus local path under save conditions). This is solid coverage, though it could also mention rate limits, errors, or data-sent-to-third-party implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three focused sentences with no filler. The primary purpose is front-loaded, and each sentence contributes: what it does, how configuration works, and what it returns.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description captures the core flow, configuration dependency, and return contract, but there is no output schema and no annotations. Missing details such as accepted size/quality values, what include_preview does, save_dir mechanics, and error behavior leave meaningful gaps for an agent invoking this tool correctly in varied cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does add meaning for n ('one or more'), model (per-call override), and save (triggers local path). However, it does not explain size, quality, include_preview, or valid value formats, leaving several parameters dependent on their self-explanatory names only.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific action and resource: 'Generate one or more images from a text prompt.' This clearly identifies the tool's purpose and naturally distinguishes it from the sibling edit_image, which would modify existing images rather than generate new ones.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides useful context by pointing to get_config / set_config and explaining that per-call arguments override defaults, implying the tool relies on prior configuration. However, it does not explicitly state when to choose generate_image over edit_image or list_image_models, so usage guidance remains implicit rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_configShow GPT-image configA

Show the current GPT-image configuration: API endpoint, model, default size, save directory, and config file path. The API key is masked. Use set_config to change any of these values.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears responsibility for behavioral disclosure. It usefully reveals that the API key is masked, and the verb 'Show' implies a read-only operation. However, it does not mention potential errors (e.g., missing config file) or other side effects, though for a simple getter this is minor.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the main purpose and immediately listing the returned fields. The second sentence adds the masking detail and a pointer to set_config, with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless getter with an output schema present, the description fully covers what the tool does and what it returns. It names all output fields and notes masking, which is sufficient context for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema provides no param details and the description doesn't need to explain any. The baseline for 0 parameters is 4, which is appropriate; no additional param semantics are required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states a specific action ('Show') on a specific resource ('the current GPT-image configuration') and enumerates the exact fields returned. It clearly distinguishes from the sibling set_config by indicating this tool displays rather than modifies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use this tool (to view configuration) and provides an alternative: 'Use set_config to change any of these values.' This effectively explains when not to use it for modifications.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_image_modelsList backend modelsA

List the models exposed by the configured image backend (GET /models).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that the operation is a list/GET, implying read-only behavior, and specifies the HTTP endpoint. However, it does not mention potential pagination, error handling, or whether it requires authentication, though these may be less relevant for a simple list operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action and resource. It includes the endpoint in parentheses without fluff, making every word meaningful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no annotations) and the presence of an output schema, the description is largely complete. It explains what is listed and from where. A brief note about usage in the image generation workflow could add context but is not strictly necessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema is empty, so schema coverage is 100% vacuously. Per the rubric, 0 parameters warrants a baseline of 4. The description adds no parameter-specific details, but none are needed since there are no parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb 'List' and resource 'models exposed by the configured image backend'. It also includes the HTTP endpoint (GET /models), which distinguishes it from sibling tools like generate_image or set_config.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is given on when to use this tool versus alternatives. The context implies it is for viewing available models before image generation, but there is no direct statement such as 'use this before calling generate_image' or 'instead of other configuration tools'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_configUpdate GPT-image configA

Update one or more GPT-image settings and persist them to the config file. Any field left null/omitted is unchanged. Changes take effect immediately for subsequent generate_image calls — no restart needed. Fields: api_base_url, api_key, model, size, save_dir.

ParametersJSON Schema
NameRequiredDescriptionDefault
sizeNo
modelNo
api_keyNo
save_dirNo
api_base_urlNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It explains persistence to a config file, that null/omitted fields remain unchanged, and that changes apply immediately without restart. This is valuable behavioral insight beyond a basic 'update' statement, though it does not cover potential validation or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences: purpose, behavior, and field list. It is front-loaded and each sentence earns its place. No filler or repetition of schema information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a config-update tool with no annotations and 5 parameters, the description covers the key aspects: partial update semantics, persistence, immediate effect, and the relevant fields. An output schema exists, so not explaining the return value is acceptable. It could have added a note about validation or file location, but overall it is complete enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It lists all five field names and explains the null/omitted behavior, which adds meaning beyond the raw schema. However, it does not elaborate on the role or allowed values of each field, relying on the self-explanatory names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Update one or more GPT-image settings and persist them to the config file,' which is a specific verb + resource. It also lists the exact fields involved, making it easy to distinguish from sibling tools like get_config (read) and generate_image (use).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by noting that changes take effect immediately for subsequent generate_image calls, implying this is the tool to use before generating images. It does not explicitly name alternatives or exclusions, but the intended usage is clear from the context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_moderationConfigure pre-generation moderationA

Configure the moderation gate that screens every prompt BEFORE it reaches the image API. When enabled, prompts judged as disallowed are rejected to protect the account from risk control. Any argument left null is unchanged. Changes persist to config.json and take effect immediately. Pass enabled=false to turn moderation off.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNo
promptNo
api_keyNo
enabledNo
api_base_urlNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for disclosing behavior. It covers the screening timing, rejection of disallowed prompts, persistence to config.json, immediate effect, and the null-unchanged semantics, which is comprehensive and goes well beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, with four sentences each adding unique value: purpose, behavior, null semantics, persistence, and disabling. There is no redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description thoroughly covers the tool's behavior and effects, and an output schema exists to document return values. However, it leaves the meanings of key parameters undefined, which is a significant gap for a configuration tool with no schema descriptions. This prevents full completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage for its five parameters, so the description must compensate. It only explains that null arguments are unchanged and that enabled=false turns moderation off, leaving model, prompt, api_key, and api_base_url unexplained. This is insufficient for an agent to correctly set these parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: configuring a moderation gate for pre-generation screening. It uses a specific verb 'Configure' and identifies the resource as the moderation gate, effectively distinguishing it from sibling tools like set_config and generate_image.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool—to configure moderation screening before image API calls—and explains how to disable it. However, it does not explicitly mention alternatives or exclusion criteria, though the focus on moderation makes the use case fairly unambiguous.

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. Dates show when Glama detected each change.

  1. 2 tool updatesv0.3.1
    • Changededit_image1 field changed
      • changedInput schema / properties / include_preview / default
        Previous value: -trueNew value: +false
    • Changedgenerate_image1 field changed
      • changedInput schema / properties / include_preview / default
        Previous value: -trueNew value: +false
  2. 2 tool updatesv0.3.0
    • Addededit_image
    • Changedgenerate_image2 fields changed
      • addedInput schema / properties / include_preview
        Added value: +{
        +  "default": true,
        +  "title": "Include Preview",
        +  "type": "boolean"
        +}
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "result": {
        -      "title": "Result",
        -      "type": "string"
        -    }
        -  },
        -  "required": [
        -    "result"
        -  ],
        -  "title": "generate_imageOutput",
        -  "type": "object"
        -}New value: +null
  3. 5 tool updatesv0.1.0
    • First observedgenerate_image
    • First observedget_config
    • First observedlist_image_models
    • First observedset_config
    • First observedset_moderation

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: configuration get/set, moderation control, image generation, image editing, and model listing. There is no meaningful overlap or ambiguity between tool boundaries.

Naming Consistency5/5

All tools follow a consistent verb_noun snake_case pattern: get_config, set_config, set_moderation, generate_image, edit_image, list_image_models. Verb choice and naming style are uniform throughout.

Tool Count5/5

Six tools is well-scoped for an image generation MCP server: configuration, moderation, generation, editing, and model discovery. Each tool earns its place without unnecessary bloat or missing essentials.

Completeness4/5

The core workflow is covered: configuring the backend, generating images, editing images, and listing available models. The only minor gap is that get_config does not explicitly expose current moderation settings, though set_moderation persists them to config.json.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/2xapi/2Xapi.com-GPT-image-MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server