MCP client setup: add image tools wherever your agent lives
One endpoint and one API key work in all seven clients below — but each wraps them in a different config shape, and that is what usually breaks. The server is a standard Model Context Protocol endpoint. Pick your client for the exact file, the exact field names and the gotcha specific to it.
Choose your client
Claude Desktop
The chat app. Paste one JSON block, quit and reopen, and Claude can make images mid-conversation.
config claude_desktop_config.json
transport npx bridge
Claude Code
One command. Watch the scope flag — the default is local, meaning this project only.
config claude mcp add
transport HTTP or skill/CLI
Cursor
User or project scope, and ${env:…} works inside headers so a project config is safe to commit.
config ~/.cursor/mcp.json
transport HTTP or npx bridge
Windsurf
Cascade picks up all eleven tools after a panel refresh — within its ceiling of 100 tools overall.
config ~/.codeium/windsurf/mcp_config.json
transport HTTP via serverUrl
GitHub Copilot
Agent mode, servers rather than mcpServers, and the key prompted for rather than committed.
config .vscode/mcp.json
transport HTTP
Cline
Autonomous plans, with an autoApprove array drawn along the line between fixed and model-priced calls.
config MCP Servers panel
transport HTTP · set type explicitly
ChatGPT & OpenAI
Gated by developer mode and plan. The connector form takes a URL, so the key rides in the query string.
config Custom connector / Agents SDK
transport HTTP · key in query
Any other MCP client
Point it at the endpoint and send your key as a header. If it can only spawn processes, use the npx bridge; if it can only take a URL, append the key as a query parameter.
https://mcp.imagemcpserver.com/mcpGeneric setup docs →What each client actually needs
Same endpoint, same key, seven different wrappers. Every one of these clients differs from the others in at least one field name — which is why a config that works in Cursor does nothing in VS Code. Checked September 2026.
| Client | Config lives in | Top-level key | Remote URL field | Scope |
|---|---|---|---|---|
| Claude Desktop | claude_desktop_config.json | mcpServers | bridge only | One global file |
| Claude Code | claude mcp add | — (CLI flags) | --transport http | local · project · user |
| Cursor | ~/.cursor/mcp.json | mcpServers | url | user or project |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | mcpServers | serverUrl or url | One global file |
| GitHub Copilot | .vscode/mcp.json | servers | url + "type": "http" | workspace · user · remote |
| Cline | MCP Servers panel · ~/.cline/mcp.json | mcpServers | url + "type": "streamableHttp" | One global file |
| ChatGPT | Custom connector UI | — (no file) | URL field, key in query | Per account |
servers vs mcpServers
VS Code is the odd one out. Everything else uses mcpServers, and a config moved between them fails silently rather than erroring.
The transport default
Cline falls back to legacy SSE when type is omitted. Set "type": "streamableHttp" or it talks the wrong dialect.
Headers are not universal
ChatGPT’s connector form has no header field, so the key goes in the query string there — and nowhere else.
The three things every client needs
If your client is not listed, you still have everything you need. Two of these three never change; only the third does — and the table above is what that variation looks like in practice.
The endpoint
https://mcp.imagemcpserver.com/mcpStreamable HTTP. There is also a stdio process for clients that prefer to spawn one locally.
The credential
x-api-key: sk-img-gen-…Authorization: Bearer works too, and ?apikey= for clients that cannot send headers.
The config location
client-specificA JSON file, a CLI command or a settings panel. That is the only part that varies.
What shows up after you connect
Eleven tools, each with a full JSON schema. The agent learns the parameters, the enums and the required fields from the protocol — you never have to explain the API in a prompt.
generate_imagegenerate_transparent_imageedit_imageremove_backgroundupscale_imagetext_to_svgcompress_imageconvert_formatmulticallget_user_infolist_modelsFirst thing to ask, in any client
“How many image credits do I have left?”
It forces a real tool call, the call is free, and a real number back means the whole chain — config, transport, key, account — is working. If it answers vaguely, the server is not loaded.
MCP client questions
Which clients support MCP?
The seven documented here — Claude Desktop, Claude Code, Cursor, Windsurf, GitHub Copilot in VS Code, Cline and ChatGPT — plus a growing number of others. Support is not uniform, though: clients differ in the config key they expect, whether they can reach a remote server without a bridge, and how narrowly you can scope or approve individual tools.
Do I still need the npx mcp-remote bridge?
Less often than you used to. Cursor, Claude Code, VS Code, Windsurf and Cline can all reach a remote HTTP server directly. Claude Desktop is the notable holdout for a header-authenticated server like this one, because its custom connector form takes a URL and OAuth rather than arbitrary headers — so the bridge is still the route there.
Why does a config that works in one client fail in another?
Almost always a field name. VS Code uses servers where everyone else uses mcpServers. Windsurf wants serverUrl. Cline needs an explicit "type": "streamableHttp" or it falls back to legacy SSE. The endpoint and the key are identical everywhere; the wrapper around them is not.
Can I use the same API key in every client?
Yes, and one key works across the REST API and the CLI too. In practice it is worth issuing a separate key per surface — editor, CI, production — so any one of them can be revoked without disturbing the others.
What if my client is not listed?
You still have everything you need. Point it at the endpoint and send your key as an x-api-key header; if it can only spawn a process, use the npx bridge; if it can only accept a URL, append the key as a query parameter. Those three shapes cover every MCP client we have seen.
Where these details come from
Each client’s row was checked against that vendor’s own documentation while writing its guide; the sources are linked at the foot of every page above. Client MCP surfaces move quickly, so each guide carries the date its claims were verified.
You need a key before any of this works
Free account, 30 credits a month, no card. The key is issued instantly and works in every client on this page.