MCP Config Generator
Generate MCP server config for Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, Codex CLI and Gemini CLI from one list, with secrets kept in env variables.
The interactive tool loads here when JavaScript runs.
About this toolWhat is the MCP Config Generator?
Every AI client stores MCP servers in its own file with its own key names. This generator takes one list of servers (local commands with arguments and environment variables, or remote URLs with headers) and writes the exact config for Claude Desktop, Claude Code, Cursor, VS Code, Windsurf (now Devin Desktop), OpenAI's Codex CLI and Gemini CLI, with notes on where each file lives.
Start from presets for the official reference servers (filesystem, fetch, git, memory), GitHub's remote and Docker servers, Microsoft's Playwright server and RedBison's own MCP endpoint, which gives a model 500+ calculators and developer utilities without a key. Secrets marked as such are written as each client's environment or input reference instead of plain text. The config is generated in your browser.
- Seven clients: Claude Desktop, Claude Code, Cursor, VS Code, Windsurf / Devin, Codex CLI, Gemini CLI
- Local stdio and remote streamable HTTP or SSE servers
- Secrets as env references, VS Code inputs or Codex env_vars instead of plain text
- claude mcp add commands for local, project and user scope plus .mcp.json
- Presets including RedBison's MCP endpoint and the official reference servers
- Optional cmd /c wrapping for npx on native Windows
- Checks for missing commands, bad URLs and tokens pasted in plain text
Updated
How to use the MCP Config Generator
- Click presets to add servers, or add a blank one.
- For a local server, enter the command and arguments and any environment variables; tick Secret for keys so they are read from your environment.
- For a remote server, enter the URL and headers; write tokens as ${VAR}, for example Bearer ${GITHUB_PAT}.
- Pick a client (and a scope for Claude Code), and turn on the Windows option only if npx fails to start on Windows.
- Copy or download the file, put it where the note says, set the listed environment variables and restart the client.
Worked examples
GitHub remote server in Codex
Input
URL https://api.githubcopilot.com/mcp/, header Authorization: Bearer ${GITHUB_PAT}Output
[mcp_servers.github] url = "https://api.githubcopilot.com/mcp/" and bearer_token_env_var = "GITHUB_PAT"
Codex reads the token from the environment, so config.toml holds no secret.
Same server in VS Code
Input
Same server, VS Code tab
Output
"headers": { "Authorization": "Bearer ${input:github-pat}" } and an inputs entry with "password": trueVS Code prompts for the token the first time the server starts and keeps it in secure storage.
Background and insight
MCP servers reach clients in two ways. A local server runs over stdio: the client starts a process (npx, uvx, node, docker) and exchanges JSON-RPC messages on its stdin and stdout. A remote server uses streamable HTTP at a URL; the older HTTP+SSE transport still exists but Claude Code's documentation calls it deprecated and the Python SDK says not to build new servers on it.
The file formats were checked against each client's documentation on 1 November 2026. Claude Desktop and Cursor use an "mcpServers" object; Cursor adds ${env:NAME} interpolation. VS Code uses "servers", requires "type" on each entry and offers an "inputs" array so it can prompt for a password and store it securely. Claude Code adds servers with claude mcp add at local, project or user scope, and project scope writes a .mcp.json that expands ${VAR}. Codex uses TOML tables named [mcp_servers.<name>] with env_vars and bearer_token_env_var for secrets, and Gemini CLI uses "httpUrl" for streamable HTTP and "url" for SSE.
Claude Desktop's config file only launches local processes. Remote servers are added as connectors in the app's settings, or bridged through the community mcp-remote package, which the generator writes for you when a remote server is in the list.
Common use cases
Setting up a new machine
Recreate the same servers in every client you use from one definition.
Sharing servers with a team
Generate a Claude Code .mcp.json or VS Code mcp.json that is safe to commit because secrets stay in env variables.
Trying a new client
Move your existing servers into Cursor, Codex or Gemini CLI without learning another format.
Documenting your own server
Produce copy-paste install snippets for every client for your README.
Tips and limitations
- Restart the client after editing its file; most only read MCP config at start-up.
- Use absolute paths for local servers and for folders you grant to the filesystem server.
- If a stdio server does not start, run its command in a terminal first. Anything it prints to stdout other than protocol messages breaks the connection.
- Prefer remote servers that support OAuth; the client handles login and you do not store a long-lived token.
- Name servers with letters, digits and hyphens. Gemini CLI's docs recommend hyphens over underscores because its policy parser splits tool names on underscores.
- Only add servers you trust: a server can read whatever its process can, and tool descriptions are text the model will read.
Frequently asked questions
Where is claude_desktop_config.json?
On macOS at ~/Library/Application Support/Claude/claude_desktop_config.json, on Windows at %APPDATA%\Claude\claude_desktop_config.json, and on Linux at ~/.config/Claude/claude_desktop_config.json. Settings > Developer > Edit Config opens it.
Why does VS Code use "servers" instead of "mcpServers"?
That is VS Code's own format for .vscode/mcp.json. It also needs a "type" of stdio, http or sse on each server, and supports an "inputs" array for secrets.
How do I keep API keys out of a shared MCP config?
Reference environment variables instead of pasting values: ${VAR} in Claude Code's .mcp.json, ${env:VAR} in Cursor, ${input:id} prompts in VS Code, env_vars or bearer_token_env_var in Codex. The generator does this for anything marked secret.
What is the difference between Claude Code local, project and user scope?
Local (the default) is just you in the current project, stored in ~/.claude.json. Project writes .mcp.json in the repository so the team shares it. User makes the server available in all your projects.
Do I still need cmd /c for npx on Windows?
Sometimes. npx is a batch file on Windows, and clients that start processes directly cannot always run it. Try the plain command first and switch on the Windows option if the server fails to start.
Can Claude Desktop connect to a remote MCP server?
Yes, as a custom connector in its settings on plans that support connectors. The config file itself starts local processes, so the generator also offers an mcp-remote bridge entry.
Is my configuration sent to RedBison?
No. The config is built in your browser. Only if you add the RedBison preset will your client later talk to RedBison's MCP server.
Is there an in-depth guide to the MCP Config Generator?
Yes. “How to Set Up MCP Servers in Claude, Cursor, VS Code, Codex and Gemini CLI” covers the background, how it works, common pitfalls and worked examples. Read the full guide.
Related Tools You May Like
Free, in-browser tools that pair well with this one.