Briefing

mcp-sync: Unified MCP Server Config Management Across Editors

ai-dev
by Vektor Memory · Claude

Use mcp‑sync to unify MCP server configs across editors, encrypt secrets with the local vault, and run diff in CI to detect drift.

What to do now

Run mcp‑sync export to generate .mcp.json, then run mcp‑sync sync on all editors, and add mcp‑sync diff to your CI pipeline.

Summary

During a rapid MCP server stack update, a missing comma in a Windsurf config caused the server to silently fail, exposing a silent configuration drift problem across three editors—Claude Desktop, Cursor, and Windsurf.

After rotating an API key two weeks later, the same issue recurred in five different editor config files, each with its own JSON quirks, highlighting the lack of a unified source of truth for MCP server definitions. The team built mcp‑sync to solve this by introducing a single .mcp.json file that holds all server definitions and three commands—export, diff, and sync—to pull, compare, and push configurations.

mcp‑sync uses a strict merge pattern that preserves non‑MCP settings, and a local encrypted vault (AES‑256‑GCM, machine‑bound key) stores API keys so that the .mcp.json can be committed without secrets. The diff command performs canonical comparison, ignoring field ordering and vault references, and exits non‑zero on drift, making it CI‑friendly. Sync adds missing servers without wiping existing editor settings, and export pulls the current state from all editors into the single file. The tool also handles connector‑specific translations, such as converting url to serverUrl for Windsurf and servers to mcpServers for VS Code. By centralizing MCP configuration, mcp‑sync eliminates manual edits and reduces silent failures across development environments.

Key changes

  • mcp‑sync introduces .mcp.json as single source of truth
  • Three commands: export, diff, sync
  • Vault uses AES‑256‑GCM, machine‑bound key
  • Canonical comparison ignores ordering and vault refs
  • Merge pattern preserves non‑MCP config
  • Sync adds missing servers without wiping existing settings
  • Diff exits non‑zero on drift, usable in CI

Affects

internal

Customer impact

Analyzing matches…

Ask about this story

Impact on an agency? Which customers? Compare historically Risks of waiting