<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Folay</title>
    <description>The latest articles on DEV Community by Folay (@folay).</description>
    <link>https://dev.to/folay</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3940151%2Fb039671b-494f-4029-9a8e-225b44693cf7.jpeg</url>
      <title>DEV Community: Folay</title>
      <link>https://dev.to/folay</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/folay"/>
    <language>en</language>
    <item>
      <title>How I Manage MCP Configs Across 14 AI Coding Tools</title>
      <dc:creator>Folay</dc:creator>
      <pubDate>Mon, 25 May 2026 06:24:54 +0000</pubDate>
      <link>https://dev.to/folay/how-i-manage-mcp-configs-across-14-ai-coding-tools-3i3a</link>
      <guid>https://dev.to/folay/how-i-manage-mcp-configs-across-14-ai-coding-tools-3i3a</guid>
      <description>&lt;p&gt;If you're using more than one AI coding tool in 2026, you've probably hit this problem: each tool has its own MCP config format, its own config file location, and its own quirks. Adding a new MCP server means editing 3-5 JSON files by hand.&lt;/p&gt;

&lt;p&gt;I built &lt;a href="https://mcp.folay.top" rel="noopener noreferrer"&gt;MCP Dock&lt;/a&gt; to fix this. It's a desktop app that manages MCP server configurations across all your AI clients from one interface.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Config Format Problem
&lt;/h2&gt;

&lt;p&gt;Here's what the MCP config landscape looks like right now:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Client&lt;/th&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Config Path&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Cursor&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.cursor/mcp.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;VS Code&lt;/td&gt;
&lt;td&gt;JSONC&lt;/td&gt;
&lt;td&gt;settings.json (MCP section)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Code&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.claude/mcp.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemini CLI&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.gemini/settings.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Codex CLI&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;codex config file&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OpenClaw&lt;/td&gt;
&lt;td&gt;JSON5&lt;/td&gt;
&lt;td&gt;~/.openclaw/mcp.json5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windsurf&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.windsurf/mcp.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zed&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;zed settings.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TRAE&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.trae/mcp.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kiro (AWS)&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.kiro/mcp.json&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;JetBrains&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;IDE-specific path&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Antigravity&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;td&gt;~/.antigravity/mcp.json&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;That's 12+ different file locations. Some use JSON, some use JSONC (with comments), one uses JSON5. A trailing comma that's valid in JSONC will break strict JSON parsers.&lt;/p&gt;

&lt;p&gt;When I was using just Cursor and Claude Code, manually editing two files was annoying but manageable. Now I'm using Cursor, Claude Code, Gemini CLI, and occasionally Codex CLI. Four files, four formats, four chances to break something with a misplaced comma.&lt;/p&gt;

&lt;h2&gt;
  
  
  What MCP Dock Does
&lt;/h2&gt;

&lt;p&gt;MCP Dock is an Electron app (React + Vite + Tailwind) that:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Aggregates MCP servers&lt;/strong&gt; from multiple registries — 9,200+ servers from Official Registry and Smithery, plus 3,100+ AI Skills from the skills.sh ecosystem&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Handles config format differences&lt;/strong&gt; — it knows each client's expected format and generates the right JSON/JSONC/JSON5 variant&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Writes to all selected clients at once&lt;/strong&gt; — pick a server, select which clients you want it in, one click&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backs up before every change&lt;/strong&gt; — with a diff viewer and one-click rollback&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Built-in MCP Inspector
&lt;/h3&gt;

&lt;p&gt;One feature I find myself using constantly is the Inspector. Before MCP Dock, testing a new MCP server meant:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Edit config file&lt;/li&gt;
&lt;li&gt;Restart IDE&lt;/li&gt;
&lt;li&gt;Try to use the tool&lt;/li&gt;
&lt;li&gt;If it doesn't work, check logs, edit config, restart again&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The Inspector connects to an MCP server directly and shows you the available tools, prompts, and resources in real-time. No IDE restart needed.&lt;/p&gt;

&lt;h3&gt;
  
  
  History and Rollback
&lt;/h3&gt;

&lt;p&gt;Every config change is automatically versioned. If a new MCP server breaks something, you can see exactly what changed (diff view) and roll back to any previous state.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the Data Pipeline Works
&lt;/h2&gt;

&lt;p&gt;MCP Dock's server data comes from three sources:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Official MCP Registry&lt;/strong&gt; — the canonical list maintained by the MCP community&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Smithery&lt;/strong&gt; — the largest third-party MCP server registry&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Skills Discovery&lt;/strong&gt; — automated scanning for repositories following the skills.sh standard&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data syncs weekly via GitHub Actions, gets stored in Cloudflare R2, and is served through a Cloudflare Worker. The app fetches this index on startup and caches it locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;macOS (Homebrew):&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;brew &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--cask&lt;/span&gt; OldJii/tap/mcp-dock
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Windows / Linux:&lt;/strong&gt; Download from &lt;a href="https://github.com/OldJii/mcp-dock/releases" rel="noopener noreferrer"&gt;GitHub Releases&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Website: &lt;a href="https://mcp.folay.top" rel="noopener noreferrer"&gt;mcp.folay.top&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/OldJii/mcp-dock" rel="noopener noreferrer"&gt;github.com/OldJii/mcp-dock&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Free for personal use&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;If you're juggling multiple AI coding tools and tired of editing config files, give it a try. Feedback welcome — &lt;a href="https://github.com/OldJii/mcp-dock/issues" rel="noopener noreferrer"&gt;open an issue&lt;/a&gt; or drop a comment below.&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>devtools</category>
      <category>electron</category>
    </item>
  </channel>
</rss>
