One CLI to manage MCP servers across every AI client you use.
MCP users run 3–6 clients: Claude Desktop, Cursor, Windsurf, Zed, Continue, VS Code, and more. Every client has a different config location and schema. Installing a new MCP server means manually editing 6 JSON files. mcp-sync solves this by giving you a single command to sync your servers across every client simultaneously.
npm install -g mcp-syncmcp-sync listShows installed servers across all detected clients.
mcp-sync add filesystem --command npx --args -y @modelcontextprotocol/server-filesystem /Users/me/dataAdds a new server to your canonical configuration.
mcp-sync add --from-github modelcontextprotocol/serversAutomatically scrapes the install snippet from the GitHub README.
mcp-sync remove filesystemRemoves the server from all clients.
mcp-sync enable filesystem --for claude-desktop,cursor
mcp-sync disable filesystem --for windsurfmcp-sync syncEnsures every enabled server is present and correctly formatted in every target client's config.
mcp-sync diffShows the differences between your canonical config and the actual JSON files used by the clients.
mcp-sync export > mcp-servers.yaml
mcp-sync import mcp-servers.yamlExport or import your complete server configuration for easy backup or sharing.
mcp-sync doctorDetects broken paths, missing binaries, and authentication misconfigurations.
import { clients, readConfig, addServer } from 'mcp-sync';
const all = await clients.detect();
const cfg = await readConfig('cursor');
await addServer({ name: 'fs', command: 'npx', args: ['-y', '@mcp/fs'] }, { targets: ['all'] });