智能MCP(模型上下文协议)配置同步工具,轻松管理多个AI客户端配置。
🤖 100%由Claude开发,持续进化
每个AI代理(Claude Desktop、Claude Code、Roo Code、Gemini CLI)都有自己的MCP服务器配置文件。当你在客户端上安装或修改MCP时,其他客户端不会自动同步,导致:
SyncMCP提供:
SyncMCP支持两种安装方式,选择适合你的:
无需安装,直接执行:
# 检查系统
uvx syncmcp doctor
# 查看状态
uvx syncmcp status
# 执行同步
uvx syncmcp sync
优点无需安装,自动隔离,速度更快
# 安装
pip install syncmcp
# 使用
syncmcp doctor
syncmcp status
syncmcp sync
优点命令更短,适合日常使用
git clone https://github.com/yourusername/syncmcp.git
cd syncmcp
pip install -e .
# 1. 检查系统是否正常
syncmcp doctor
# 2. 查看当前配置状态
syncmcp status
# 3. 预览同步(不实际修改)
syncmcp sync --dry-run
# 4. 执行同步
syncmcp sync
# 5. (可选)使用互动模式
syncmcp interactive
| 特性 | Claude Code | Roo Code | Claude Desktop | Gemini CLI |
|---|---|---|---|---|
| 配置层次 | ||||
| 全局配置 | ✅ | ✅ | ✅ | ✅ |
| 项目级别配置 | ✅ | ✅ | ❌ | ❌ |
| 传输类型 | ||||
stdio (本地) | ✅ | ✅ | ✅ | ✅ |
sse (远程) | ✅ | ⚠️ 未测试 | ❌ | ⚠️ 未测试 |
http (远程) | ✅ | ⚠️ 需转换为 streamable-http | ❌ | ⚠️ 未测试 |
| 特殊类型 | ||||
streamable-http | ❌ | ✅ 仅Roo独有 | ❌ | ❌ |
SyncMCP自动处理不同客户端之间的格式差异:
| 同步方向 | 转换规则 | 描述 |
|---|---|---|
| Roo Code → Claude Code | streamable-http → sse 或 http | 根据是否有headers决定 |
| Claude Code → Roo Code | sse/http → streamable-http | 统一转换为Roo格式 |
| 任意 → Claude Desktop | 过滤掉所有 http/sse 类型 | Desktop仅支持stdio |
| 任意 → Gemini | 仅同步全局配置 | Gemini不支持项目级别 |
⚠️ 重要通知:
- Claude Code 中出现的
streamable-http表示同步错误- 在Roo Code中
http必须是streamable-http- Claude Desktop 无法使用远程MCP(http/sse)
| 客户端 | 配置文件路径 |
|---|---|
| Claude Code | ~/.claude.json |
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) |
| Roo Code | ~/.roo-code/config.json |
| Gemini CLI | ~/.gemini/config.json |
自动选择最新配置并同步到所有客户端。
# 自动同步
syncmcp sync
# 预览模式(不实际修改)
syncmcp sync --dry-run
# 手动确认每个变更
syncmcp sync --strategy manual
# 同步但不建立备份
syncmcp sync --no-backup
同步期间会做什么:
查看所有客户端的状态和MCP列表。
# 查看所有客户端状态
syncmcp status
# 列出所有 MCP
syncmcp list
# 查看配置差异
syncmcp diff
# 打开配置文件
syncmcp open claude-code
所有更改都会自动备份,并支持一键恢复。
# 查看同步历史
syncmcp history
# 查看统计信息
syncmcp history --stats
# 互动式恢复备份
syncmcp restore
# 查看最近20条历史
syncmcp history --limit 20
备份特性:
全面的系统健康检查。
syncmcp doctor
检查项:
友好的终端菜单界面。
syncmcp interactive
功能:
操作方法:
↑/↓ 选择选项Enter 确认Ctrl+C 退出让AI可以直接调用SyncMCP功能。
可用工具:
sync_mcp_configs - 同步配置check_sync_status - 检查状态show_config_diff - 显示差异suggest_conflict_resolution - 建议解决方案使用示例:
您: "帮我同步所有MCP配置"
Claude: [自动执行同步并报告结果]
您: "列出所有客户端的MCP列表"
Claude: [显示详细的配置状态]
# 查看帮助
syncmcp --help
# 查看版本
syncmcp --version
# 执行同步
syncmcp sync
# 查看状态
syncmcp status
# 在Claude Code安装MCP
cd ~
claude mcp add github npx @modelcontextprotocol/server-github
# 同步到其他客户端
syncmcp sync
# 安装并测试新MCP
claude mcp add test-mcp npx test-mcp-server
syncmcp sync
# 发现问题,恢复到之前状态
syncmcp restore
# 选择同步前的备份
# 查看所有客户端的配置差异
syncmcp diff
# 预览同步会做什么
syncmcp sync --dry-run
更多示例,请参阅 EXAMPLES.md
请参阅完整的文档以获取详细信息 docs/ 目录
原因:安装后未加入PATH
解决方案:
# 检查安装
pip list | grep syncmcp
# 重新安装
pip install --force-reinstall syncmcp
# 使用doctor检查
python3 -m syncmcp doctor
症状:Python 3.9.0 (需要 >= 3.10)
解决方案:
# macOS
brew install python@3.12
# Ubuntu/Debian
sudo apt install python3.12
症状:MCP存在于Claude Code但syncmcp看不到它
原因:目前不支持项目级别的MCP
解决方案:将MCP移动到全局级别
# 在项目目录中删除
cd /path/to/project
claude mcp remove mcp-name
# 切换到非项目目录
cd ~
# 重新添加到全局
claude mcp add mcp-name npx mcp-server
# 同步
syncmcp sync
详细描述:docs/MOVE-MCP-TO-GLOBAL.md
原因:Claude Desktop 仅支持 stdio 类型
解决方案:这是正常行为,SyncMCP会自动过滤掉不支持的类型。
检查步骤:
# 1. 执行诊断
syncmcp doctor
# 2. 查看详细错误
syncmcp sync --verbose
# 3. 检查配置文件权限
ls -la ~/.claude.json
# 4. 从备份恢复
syncmcp restore
更多故障排除,请参阅 USER-GUIDE.md
[x] 核心功能
[x] 用户界面
[x] 开发者工具
请参阅详细计划 user-requirements/docs/next-requirements.md
欢迎贡献!请查阅 开发者指南 了解如何参与开发。
git checkout -b feature/amazing-feature)git commit -m 'feat: 添加神奇功能')git push origin feature/amazing-feature)遵循 常规提交:
feat: 新功能
fix: Bug修复
docs: 文档更新
style: 代码格式
refactor: 重构
test: 测试相关
chore: 构建工具
MIT许可证 - 详情见 LICENSE 文件
如果这个项目对你有帮助,请给我们一个Star ⭐️
版本:2.0.0 状态:✅ 所有核心功能完成(任务15/15) 最后更新:2025-10-28
来自Claude驱动开发 🤖