One input, four ready-to-paste configs — Claude Desktop, Cursor, VS Code and Windsurf. Including the VS Code schema difference that breaks most installs.
{
"mcpServers": {
"freetoolhub": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://freetoolhub.org/api/mcp"
]
}
}
}{
"mcpServers": {
"freetoolhub": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://freetoolhub.org/api/mcp"
]
}
}
}{
"servers": {
"freetoolhub": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://freetoolhub.org/api/mcp"
]
}
}
}{
"mcpServers": {
"freetoolhub": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://freetoolhub.org/api/mcp"
]
}
}
}| Client | Top-level key | Transport field | Config file |
|---|---|---|---|
| Claude Desktop | mcpServers | inferred | claude_desktop_config.json |
| Cursor | mcpServers | inferred | mcp.json |
| VS Code | servers | "type" required | .vscode/mcp.json |
| Windsurf | mcpServers | inferred | mcp_config.json |
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.
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.
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.
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.
Why did the cow cross the road?
No signups, no data sold. The core of every tool is free forever — the optional Pro plan adds batch processing, unlimited downloads, white-label exports and an ad-free experience.
☕Support me on Ko-fi— keep tools free100% of proceeds go towards hosting & building more free tools.