Uma config para dominar todas. Configure seus servidores MCP uma vez e distribua para todas as CLIs de IA automaticamente.
Cada CLI de IA usa um formato de arquivo diferente para configurar servidores MCP (Model Context Protocol):
| CLI de IA | Arquivo de Config | Formato |
|---|---|---|
| Claude Code | .mcp.json |
JSON |
| Gemini CLI | .gemini/settings.json |
JSON |
| Kimi CLI | ~/.kimi/mcp.json |
JSON |
| OpenAI Codex | .codex/config.toml |
TOML |
| OpenCode | opencode.json |
JSON |
| GitHub Copilot CLI | .copilot/mcp-config.json |
JSON |
| VS Code | .vscode/mcp.json |
JSON |
| IntelliJ IDEA | .idea/mcp.json |
JSON |
Se voce usa multiplas ferramentas de IA (e provavelmente usa), precisa manter manualmente 8 arquivos de config diferentes com estruturas, nomes de campos e particularidades distintas. Para cada projeto.
O MCPX mantem um unico arquivo canonico (.mcpx.json) por projeto e gera automaticamente o arquivo de config correto para cada provider de IA que voce usa.
.mcpx.json ──────► .mcp.json (Claude Code)
│ ──────► .gemini/settings.json (Gemini CLI)
│ ──────► ~/.kimi/mcp.json (Kimi CLI)
│ ──────► .codex/config.toml (OpenAI Codex)
│ ──────► opencode.json (OpenCode)
│ ──────► .copilot/mcp-config.json (Copilot CLI)
│ ──────► .vscode/mcp.json (VS Code)
└───── ──────► .idea/mcp.json (IntelliJ IDEA)
npm install -g mcpx-cliNavegue ate o diretorio do seu projeto e execute:
mcpxO wizard interativo vai te guiar por:
- 🔍 Deteccao — Detecta automaticamente configs MCP existentes no seu projeto
- 📥 Importacao — Oferece importar servidores das configs detectadas
- ➕ Adicionar servidores — Wizard interativo para configurar novos servidores MCP
- 🎯 Selecionar providers — Escolha para quais CLIs de IA gerar configs
- ⚙️ Gerar — Cria o
.mcpx.jsone todos os arquivos dos providers
| Comando | Descricao |
|---|---|
mcpx ou mcpx init |
🧙 Wizard interativo de configuracao |
mcpx add [nome] |
➕ Adicionar um novo servidor MCP |
mcpx remove [nome] |
➖ Remover um servidor MCP |
mcpx list |
📄 Listar servidores MCP configurados |
mcpx sync |
🔄 Regenerar todos os arquivos de config dos providers |
mcpx import [provider] |
📥 Importar config de um provider existente |
mcpx status |
📊 Mostrar estado de sincronizacao dos providers |
| Flag | Descricao |
|---|---|
--dir, -d <caminho> |
📁 Diretorio do projeto (padrao: diretorio atual) |
--verbose |
🔊 Exibir logs detalhados |
--version, -V |
🏷️ Exibir versao |
--help, -h |
❓ Exibir ajuda |
O MCPX usa um unico arquivo .mcpx.json como fonte da verdade:
{
"version": 1,
"providers": ["claude-code", "gemini-cli", "openai-codex", "copilot-cli"],
"servers": {
"jira": {
"description": "Jira Atlassian",
"transport": "stdio",
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"JIRA_URL": "https://minhaorg.atlassian.net",
"JIRA_USERNAME": "usuario@exemplo.com",
"JIRA_API_TOKEN": "seu-token"
}
},
"github": {
"description": "GitHub MCP Server",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@anthropic-ai/mcp-github-server"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxx"
}
}
}
}| Campo | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
transport |
"stdio" | "http" |
✅ Sim | Protocolo de transporte |
command |
string |
stdio | Comando executavel |
args |
string[] |
— | Argumentos do comando |
env |
Record<string, string> |
— | Variaveis de ambiente |
cwd |
string |
— | Diretorio de trabalho |
url |
string |
http | URL do servidor |
headers |
Record<string, string> |
— | Headers HTTP |
description |
string |
— | Descricao legivel |
enabled |
boolean |
— | Ativar/desativar (padrao: true) |
Estes providers geram arquivos de config dentro do diretorio do projeto. Cada projeto tem sua propria config independente.
| Aspecto | Detalhe |
|---|---|
| Arquivo | .mcp.json |
| Formato | JSON |
| Chave raiz | mcpServers |
Exige type |
Sim "stdio" |
| Aspecto | Detalhe |
|---|---|
| Arquivo | .gemini/settings.json |
| Formato | JSON |
| Chave raiz | mcpServers |
Exige type |
Nao |
| Aspecto | Detalhe |
|---|---|
| Arquivo | .codex/config.toml |
| Formato | TOML |
| Chave raiz | mcp_servers |
| Merge inteligente | Sim — Preserva configuracoes existentes do Codex (model, approval_mode, etc.) |
| Aspecto | Detalhe |
|---|---|
| Arquivo | opencode.json |
| Formato | JSON |
| Chave raiz | mcp |
| Particularidades | command e um array (comando + args juntos), usa environment em vez de env, type: "local" |
| Aspecto | Detalhe |
|---|---|
| Arquivo | .copilot/mcp-config.json |
| Formato | JSON |
| Chave raiz | mcpServers |
| Particularidades | Exige campo tools: ["*"], precisa de alias no shell para config por projeto |
📌 Nota: O Copilot CLI nao detecta automaticamente configs MCP a nivel de projeto. O MCPX configura automaticamente um alias no shell (
copilot='copilot --additional-mcp-config @.copilot/mcp-config.json') no seu.zshrc,.bashrcouconfig.fishpara que a config do projeto seja carregada ao executarcopilot.
| Aspecto | Detalhe |
|---|---|
| Arquivo | .vscode/mcp.json |
| Formato | JSON |
| Chave raiz | servers |
| Particularidades | Campo type obrigatorio ("stdio" ou "sse"), HTTP mapeado como "sse" |
| Aspecto | Detalhe |
|---|---|
| Arquivo | .idea/mcp.json |
| Formato | JSON |
| Chave raiz | mcpServers |
| Particularidades | Sem campo type, infere pelo command vs url |
Estes providers usam um unico arquivo global compartilhado entre todos os projetos. Executar mcpx sync sobrescreve o arquivo global com os servidores do projeto atual.
| Aspecto | Detalhe |
|---|---|
| Arquivo | ~/.kimi/mcp.json |
| Formato | JSON |
| Chave raiz | mcpServers |
| Escopo | Global — afeta todos os projetos |
Apos modificar o .mcpx.json (manualmente ou via comandos), regenere todas as configs dos providers:
mcpx syncUse o wizard interativo para adicionar ou remover providers:
mcpx init
# Selecione "Alterar providers"Quando um provider e removido, o MCPX exclui o arquivo de config correspondente. Para providers globais, arquivos legados a nivel de projeto tambem sao limpos.
Ja tem servidores MCP configurados em uma das suas ferramentas de IA? Importe-os:
mcpx importO MCPX detecta configs existentes a nivel de projeto (.mcp.json, .gemini/settings.json, etc.) e permite selecionar quais servidores importar para o .mcpx.json.
src/
├── cli.ts # Setup Commander e roteamento
├── types/
│ ├── canonical.ts # McpConfigFile, McpServerConfig (schemas Zod)
│ ├── providers.ts # Interface Provider
│ └── common.ts # CommandContext, SyncResult
├── commands/
│ ├── init.ts # Wizard interativo
│ ├── add.ts / remove.ts # Gerenciamento de servidores
│ ├── list.ts / status.ts # Exibicao de informacoes
│ ├── sync.ts # Regenerar configs
│ └── import.ts # Importar de providers
├── providers/
│ ├── base.ts # Interface Provider
│ ├── registry.ts # Registry de providers (factory)
│ ├── claude-code.ts # .mcp.json
│ ├── gemini-cli.ts # .gemini/settings.json
│ ├── kimi-cli.ts # ~/.kimi/mcp.json
│ ├── openai-codex.ts # .codex/config.toml
│ ├── opencode.ts # opencode.json
│ ├── copilot-cli.ts # .copilot/mcp-config.json
│ ├── vscode.ts # .vscode/mcp.json
│ └── intellij.ts # .idea/mcp.json
├── core/
│ ├── config-store.ts # Leitura/escrita do .mcpx.json
│ ├── detector.ts # Deteccao de configs existentes
│ └── merger.ts # Sync inteligente com suporte a merge
├── wizard/
│ ├── main-wizard.ts # Fluxo interativo principal
│ ├── server-wizard.ts # Wizard de criacao de servidor
│ ├── provider-wizard.ts # Selecao de providers
│ └── step-runner.ts # Navegacao entre etapas (suporte a voltar)
└── utils/
├── fs.ts # Helpers de filesystem
├── logger.ts # Logger com cores
└── validation.ts # Validacao Zod
# Rodar todos os testes
npm test
# Rodar uma vez (CI)
npm run test:run
# Checagem de tipos
npm run typecheck| Categoria | Biblioteca |
|---|---|
| 💻 Linguagem | TypeScript 5.x (ESM) |
| 📦 Build | tsup (esbuild) |
| ⌨️ CLI Framework | commander |
| 💬 Prompts Interativos | @clack/prompts |
| 🎨 Cores | picocolors |
| 📄 TOML | smol-toml |
| ✅ Validacao | zod |
| 🧪 Testes | vitest |
| 🟢 Node minimo | >= 20 |
MIT