mcp-sync
Sync MCP server configurations across various AI coding tools.
mcp-sync
Sync MCP (Model Context Protocol) configurations across AI tools.
Overview
mcp-sync is a command-line tool that helps you manage and synchronize MCP server configurations across different AI coding tools like Claude Desktop, Claude Code, Cline, VS Code extensions, and more.
Features
- Auto-discovery: Automatically finds MCP configs on your system
- Manual registration: Add custom config file locations for future-proofing
- Global & project configs: Supports both user-wide and project-specific servers
- Conflict resolution: Smart merging with project configs taking priority
- Dry-run mode: Preview changes before applying them
- Cross-platform: Works on macOS, Windows, and Linux
Installation
Quick Usage (Recommended)
uvx mcp-sync status
uvx mcp-sync sync --dry-run
Persistent Installation
uv tool install mcp-sync
mcp-sync status
Development Install
git clone <repo-url>
cd mcp-sync
./scripts/setup.sh # Installs dependencies and git hooks automatically
Quick Start
-
Scan for existing configs:
mcp-sync scan -
Check current status:
mcp-sync status -
Add a server to global config:
mcp-sync add-server filesystem # Follow prompts to configure -
Preview sync changes:
mcp-sync diff mcp-sync sync --dry-run -
Sync configurations:
mcp-sync sync
Commands
Discovery & Status
mcp-sync scan- Auto-discover known MCP configsmcp-sync status- Show sync statusmcp-sync diff- Show config differences
Config Location Management
mcp-sync add-location <path> [--name <alias>]- Register custom config filemcp-sync remove-location <path>- Unregister config locationmcp-sync list-locations- Show all registered config paths
Sync Operations
mcp-sync sync- Sync all registered configsmcp-sync sync --dry-run- Preview changes without applyingmcp-sync sync --global-only- Sync only global configsmcp-sync sync --project-only- Sync only project configsmcp-sync sync --location <path>- Sync specific location only
Server Management
mcp-sync add-server <name>- Add MCP server to sync (interactive prompts)mcp-sync add-server <name> --command <cmd> --args <args> --env <vars> --scope <global|project>- Add server with inline parametersmcp-sync remove-server <name>- Remove server from sync (interactive prompts)mcp-sync remove-server <name> --scope <global|project>- Remove server with inline scopemcp-sync list-servers- Show all managed servers
Migration
mcp-sync vacuum- Import MCP servers from discovered configs--auto-resolve <first|last>choose conflict resolution automatically--skip-existingavoid overwriting servers already in global config
Adding Servers: When adding a server, you need to provide:
- Command: The executable to run (e.g.,
python,npx,node) - Arguments: Command-line arguments (comma-separated, optional)
- Environment: Environment variables as
KEY=valuepairs (comma-separated, optional) - Scope: Whether to add to global config (synced everywhere) or project config (this project only)
Interactive example:
mcp-sync add-server filesystem
# Prompts for: scope, command, args, env vars
Automated example:
mcp-sync add-server filesystem --command npx --args "-y,@modelcontextprotocol/server-filesystem,/home/user/docs" --scope global
Project Management
mcp-sync init- Create project.mcp.jsonmcp-sync template- Show template config
Client Management
mcp-sync list-clients- Show all supported clients and their detection statusmcp-sync client-info [client-id]- Show detailed client information and pathsmcp-sync edit-client-definitions- Edit user client definitions to add custom clients
Configuration Hierarchy
mcp-sync uses a three-tier configuration system:
-
Global Config (
~/.mcp-sync/global.json)- Personal development servers
- Synced across all tools
-
Project Config (
.mcp.jsonin project root)- Project-specific servers
- Version controlled with your project
- Takes priority over global config
-
Tool Configs (Auto-discovered locations)
- Claude Desktop, VS Code, Cline, etc.
- Updated by sync operations
Supported Tools
mcp-sync uses a configuration-driven approach to support AI tools and editors. Client definitions are managed through JSON configuration files.
Built-in client support:
- Claude Desktop - Official Claude Desktop application
- Claude Code - Claude CLI for code editing
- Cline - VS Code extension for AI assistance
- Roo - Roo VS Code extension for AI assistance
- VS Code User Settings - VS Code global user settings
- Cursor - Cursor AI code editor
- Continue - Continue VS Code extension
Run mcp-sync list-clients to see which clients are detected on your system, or mcp-sync client-info <client-id> for detailed information about specific clients.
Adding custom clients: Users can add their own client definitions by running mcp-sync edit-client-definitions. This creates ~/.mcp-sync/client_definitions.json where custom client configurations can be added. User definitions take precedence over built-in ones, allowing customization and adding support for new tools without modifying the codebase.
Example Workflow
# 1. Initialize project config
mcp-sync init
# 2. Add project-specific server
mcp-sync add-server database
# Choose "2. Project config"
# Command: python
# Args: /path/to/db-server.py
# Env: DB_URL=postgresql://...
# 3. Add global development server
mcp-sync add-server filesystem
# Choose "1. Global config"
# Command: npx
# Args: -y, @modelcontextprotocol/server-filesystem, /home/user
# 4. Sync to all tools
mcp-sync sync
# 5. Check status
mcp-sync status
Configuration File Format
MCP Server Configuration
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/directory"
]
},
"custom-server": {
"command": "python",
"args": ["/path/to/server.py"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
Development
Requirements
- Python 3.12+
- uv package manager
Setup
git clone <repo-url>
cd mcp-sync
uv sync
uv pip install -e .
Code Quality
uv run ruff check . # Linting
uv run ruff format . # Formatting
uv run pytest # Tests (when available)
Running Tests
Tests require the package to be on PYTHONPATH. Either install it in editable mode:
uv pip install -e .
uv run pytest
or set PYTHONPATH manually when invoking pytest:
PYTHONPATH=$PWD uv run pytest
License
[License details here]
Contributing
[Contributing guidelines here]
เซิร์ฟเวอร์ที่เกี่ยวข้อง
Scout Monitoring MCP
ผู้สนับสนุนPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
ผู้สนับสนุนAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Cargo MCP
Interact with Rust projects using Cargo commands like build, test, and run.
Shadcn UI MCP Server
A powerful and flexible MCP server designed to enhance the development experience with Shadcn UI components, providing tools for component management, documentation, and installation.
Authless Remote MCP Server
An authentication-free, remote MCP server designed for deployment on Cloudflare Workers.
Dify Server
Integrates the Dify AI API to generate Ant Design business component code. Supports text, image inputs, and streaming responses.
Model Context Protocol servers
A collection of reference MCP server implementations in TypeScript and Python, demonstrating MCP features and SDKs.
MCP Playground
A playground for MCP implementations featuring multiple microservices, including news and weather examples.
OpenTelemetry Collector MCP Server
An MCP server for dynamically configuring OpenTelemetry Collectors, including receivers, processors, and exporters.
AIO-MCP Server
An MCP server with integrations for GitLab, Jira, Confluence, and YouTube, providing AI-powered search and development utility tools.
xpay✦
1000+ AI tools as MCP servers — finance, lead gen, web scraping, dev tools, media, research, competitive intel, social media, and more. 80+ providers in one endpoint. Starts at $0.01/call. Get your API key at app.xpay.sh or xpay.tools
EOL MCP Server
Check software end-of-life (EOL) dates and support status using the endoflife.date API to provide accurate lifecycle and security information.