Image generation in ChatGPT: MCP connector setup
Enable developer mode, add a custom connector pointing at the MCP endpoint with your key as a query parameter, and eleven image tools become callable in the conversation. The server is a standard remote MCP endpoint, so the same tools are equally reachable from the OpenAI Agents SDK, from the Responses API, and — if you would rather skip MCP entirely — from plain REST calls in any language.
Endpoint and auth
Endpoint
https://mcp.imagemcpserver.com/mcpStreamable HTTP. No SDK required.
Auth header
x-api-key: sk-img-gen-…Authorization: Bearer also accepted.
URL-only clients
?apikey=sk-img-gen-…For clients that cannot send headers.
Can your account actually do this?
Worth settling before you touch a config, because for a lot of people the answer is no and it has nothing to do with the server. Custom MCP connectors in the ChatGPT app are gated twice over.
Developer mode has to be on
The toggle that enables custom MCP connectors has lived under Connectors, under Advanced, and under Workspace Settings → Permissions & Roles at different times. Search the settings for “developer mode” rather than following any fixed click path — including this one.
Your plan has to expose it
Custom connectors have been a workspace feature, and for much of their life an admin-only one. Individual Plus and Pro accounts have frequently had no such option at all. If the UI is not there, that is a question for whoever administers your workspace.
Why this page is light on screenshots
OpenAI has moved this surface more than once, and a click path printed today is often wrong by the time someone reads it. So this page gives you the two things that do not change — the endpoint and the auth — plus a route through the API that works regardless of what the app offers your account. Checked September 2026.
Three ways in
ChatGPT custom connector
The connector form takes a URL, not a set of headers — so the key rides in the query string. That is what the ?apikey= form exists for. Paste the URL below with your own key substituted, and the image tools appear in the conversation the same way any other connector’s do.
⚠️ Use a dedicated key for this
A key in a query string can end up in logs, history and proxy records in a way a header does not. Issue a separate key for the connector so you can revoke it on its own, and do not reuse it in a repository or in CI.
Server URL, with the key
https://mcp.imagemcpserver.com/mcp?apikey=sk-img-gen-…Where headers are supported instead
x-api-key: sk-img-gen-…Both reach the same server. Prefer the header anywhere the client can send one.
OpenAI Agents SDK / Responses API
Both accept a hosted MCP server as a tool source. You register the endpoint once and the model can call any of the eleven tools during a run — which is the route to take when you are building a product rather than chatting.
tools: [
{
type: "mcp",
server_label: "imagemcp",
server_url: "https://mcp.imagemcpserver.com/mcp",
headers: {
"x-api-key": process.env.IMAGEMCP_API_KEY
}
}
]Skip MCP — call the REST API
Every tool is also a plain HTTP endpoint. If you are writing the orchestration yourself, there is no reason to add a protocol layer between your code and a POST request.
await fetch(
"https://api.imagemcpserver.com/v1/generate",
{
method: "POST",
headers: {
Authorization: `Bearer ${key}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ prompt, aspectRatio: "16:9" }),
}
);What you get that a built-in image feature does not give you
A ledger
Every call recorded with its tool, model and exact credit cost. Not an estimate — the number you were charged.
Eight operations
Generation is one of them. Cutting out, upscaling, vectorising and compressing are the ones that turn an image into an asset.
Model choice
Route to a fast model for drafts and a premium one for finals, or bring your own OpenRouter key and pay the provider directly.
Portability
The same key and the same tools work from Claude, Cursor, VS Code, a cron job and your production backend.
ChatGPT & OpenAI questions
How do I add an MCP server to ChatGPT?
Turn on developer mode in your workspace settings, then create a custom connector pointing at the server URL. OpenAI has moved that toggle more than once — it has lived under Connectors, under Advanced, and under Workspace Settings → Permissions & Roles — so look for "developer mode" or "create custom MCP connectors" rather than a fixed click path. Checked September 2026.
Why can I not see the custom connector option?
Almost always an account gate rather than anything to do with the server. Custom connectors have been restricted to workspace plans and, for much of their life, to workspace admins — Plus and Pro accounts frequently have no such option at all. If you cannot find it, check with whoever administers your workspace before debugging the endpoint.
Can ChatGPT use any MCP server?
Any server that speaks remote MCP over HTTP, subject to that account gating. The constraint in practice is not the protocol, it is whether your plan exposes the connector UI and whether the server can authenticate in the way the connector form allows.
What is the endpoint and how do I authenticate?
The server speaks streamable HTTP MCP at https://mcp.imagemcpserver.com/mcp. It accepts your key three ways: an x-api-key header, an Authorization: Bearer header, or an ?apikey= query parameter. The query parameter is the one that matters for ChatGPT, because the connector form takes a URL rather than arbitrary headers.
Is it safe to put the key in the URL?
It is a real trade-off. A key in a query string can end up in server logs, browser history and proxy records in a way a header does not. If you use the query-parameter form, issue a dedicated key for it from the dashboard so it can be revoked on its own without disturbing your other integrations, and do not reuse it in a repository or CI.
What if my ChatGPT plan has no connector option?
Use the API instead of the app. The OpenAI Agents SDK and the Responses API both accept a remote MCP server and both can send headers, so the same eleven tools are available to anything you build — and the REST endpoints work from any language with no MCP layer at all.
Is this different from ChatGPT’s own image generation?
Yes, in what surrounds it. This gives you a credit ledger you can read, a request log per call, a choice of underlying models including your own OpenRouter account, and eight distinct operations — background removal, upscaling, vector output, compression — rather than generation alone.
Does it work with other MCP-capable assistants?
Any client that speaks the Model Context Protocol can connect. The remote endpoint is standard streamable HTTP, and there is a stdio process for clients that prefer to spawn one locally.