🧩
Tools/MCP Client Config Generator

MCP Client Config Generator

One input, four ready-to-paste configs — Claude Desktop, Cursor, VS Code and Windsurf. Including the VS Code schema difference that breaks most installs.

4 CLIENTS
The CalculatorPage 1
Local servers are launched by the client, so command and args matter.
Each line becomes one array element — no quoting needed.
Optional. Prefer the client’s own secret store where it has one.
LOCAL (STDIO)freetoolhub · 4 configs
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) · %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
  "mcpServers": {
    "freetoolhub": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://freetoolhub.org/api/mcp"
      ]
    }
  }
}
Read only at launch — restart the app after editing.
Cursor
~/.cursor/mcp.json (global) or .cursor/mcp.json (project)
{
  "mcpServers": {
    "freetoolhub": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://freetoolhub.org/api/mcp"
      ]
    }
  }
}
Project-level config overrides the global one and can be committed for the team.
VS CodeDIFFERENT SCHEMA
.vscode/mcp.json (workspace)
{
  "servers": {
    "freetoolhub": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://freetoolhub.org/api/mcp"
      ]
    }
  }
}
Uses "servers" with an explicit "type" — not "mcpServers". The single most common install failure.
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "freetoolhub": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://freetoolhub.org/api/mcp"
      ]
    }
  }
}
Same shape as Claude Desktop.
ClientTop-level keyTransport fieldConfig file
Claude DesktopmcpServersinferredclaude_desktop_config.json
CursormcpServersinferredmcp.json
VS Codeservers"type" required.vscode/mcp.json
WindsurfmcpServersinferredmcp_config.json
Data Source & Legal Disclaimer
Effective: Config paths and schemas reviewed 2026-09
Sources: Claude Desktop, Cursor, VS Code and Windsurf MCP documentation (config paths and schemas)

Client config formats change between releases. If a config is rejected, check the client's own documentation for the current schema before assuming the generator is wrong. Env values you type here are rendered into the output verbatim — do not paste real secrets into a page you do not control.

See all data sources & update policy →
How it worksPage 2

The four clients do not share one config format — and that is the whole problem

MCP is a protocol, not a config standard. Every client picks its own file location, and most use a top-level mcpServers object — but VS Code does not. VS Code expects servers with an explicit type field ("stdio" or "http"), so pasting a working Claude Desktop config into .vscode/mcp.json fails with no useful error. It is the single most common reason a server that “works for everyone else” will not install for one person. The second-most-common: forgetting that Claude Desktop reads its config only at launch, so edits appear to do nothing until a restart. This page emits all four formats from one input, so you can stop hand-translating between them.

One server definition, four client schemas
ONE INPUTname · commandargs · env · urlClaude Desktop"mcpServers"Cursor"mcpServers"VS Code"servers" + "type"DIFFERENT SCHEMAcopy-paste breaks hereWindsurf"mcpServers"

Claude Desktop, Cursor and Windsurf all wrap the entry in mcpServers. VS Code instead uses servers with an explicit transport type — a different shape, not just a different filename.

Why the same server installs for three people and not the fourth

A team shares a working Claude Desktop config for a local stdio server. Three of them paste it into Cursor and Windsurf and it works. The fourth pastes the same JSON into .vscode/mcp.json.

  1. Claude / Cursor / Windsurf:Top-level "mcpServers" — the pasted config is accepted
  2. VS Code:Expects "servers" with an explicit "type": "stdio" — "mcpServers" is ignored
  3. Symptom:No error, no server. The tools simply never appear
  4. Fix:Emit the VS Code variant: {"servers": {"name": {"type": "stdio", "command": …, "args": […]}}}
Joke of the Day
Oct 14

What do you call a nosy pepper?

Free core, no account

Keep the Free Edition Free

No signups, no data sold. Every tool is free to use — the free tier allows 5 downloads or saves per day, and the optional Pro plan ($7/mo, $59/yr) adds unlimited downloads, batch processing, white-label exports and an ad-free experience.

☕Support me on Ko-fi— support the free tier

100% of proceeds go towards hosting & building more free tools.