Baton

Servidor MCP local para Baton: edite solicitações de API nativas do git, coleções, ambientes e scripts.

Documentação

Baton — Configuração do MCP

Deixe seu assistente de IA trabalhar em um workspace do Baton. Baton é um cliente de API nativo em git (uma alternativa ao Postman): requisições, coleções e ambientes são arquivos YAML simples em um repositório que você possui. O servidor MCP roda localmente, edita esses arquivos da mesma forma que o aplicativo faz, e cada alteração aparece no aplicativo instantaneamente e passa pela revisão do git como qualquer outra alteração.

  • Servidor: baton
  • Transporte: stdio (processo local)
  • Pacote: @dudko.dev/baton-mcp — Node.js 24+
  • Autenticação: nenhuma — ele roda localmente com as permissões do seu usuário; segredos nunca passam por ele.

O que você pode fazer

Por padrão, o assistente pode ler e escrever no workspace, mas não enviar requisições:

FerramentaO que faz
workspace_infoOrientação: nome, configurações, ambientes, árvore de coleções.
list_requestsRequisições com método, URL e tags.
get_requestUma requisição analisada mais seu YAML bruto — segredos aparecem apenas como referências.
upsert_requestEscreve uma requisição como YAML determinístico.
move_requestMove ou renomeia uma requisição, mantendo seu id.
delete_requestExclui uma requisição.
upsert_collectionCria ou atualiza uma coleção ou pasta.
list_environmentsAmbientes, apenas com nomes de segredos.
upsert_environmentEscreve um ambiente (apenas nomes de segredos).
get_script / upsert_scriptLê e escreve scripts de pré-requisição e teste.
run_request / run_collectionExecuta uma requisição ou coleção — apenas com --allow-run.

Instalar no Claude Code (plugin)

/plugin marketplace add dudko-dev/baton-mcp-setup
/plugin install baton@baton
/reload-plugins

O plugin inicia o servidor no diretório atual do projeto, então abra o Claude Code em (ou abaixo de) seu workspace do Baton. Para apontar para outro lugar, ou para permitir que o assistente execute requisições, adicione o servidor manualmente (abaixo) com --workspace <dir> e/ou --allow-run.

Prefere não usar o marketplace? Adicione o servidor diretamente:

claude mcp add baton -- npx -y @dudko.dev/baton-mcp --workspace /path/to/workspace

Conectar a partir de outros clientes

Claude Desktop

claude_desktop_config.json (Configurações → Desenvolvedor → Editar Config):

{
  "mcpServers": {
    "baton": {
      "command": "npx",
      "args": [
        "-y",
        "@dudko.dev/baton-mcp"
      ]
    }
  }
}

Cursor

~/.cursor/mcp.json ou .cursor/mcp.json:

{
  "mcpServers": {
    "baton": {
      "command": "npx",
      "args": [
        "-y",
        "@dudko.dev/baton-mcp"
      ]
    }
  }
}

VS Code (GitHub Copilot / MCP) e outros clientes

{
  "servers": {
    "baton": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@dudko.dev/baton-mcp"
      ]
    }
  }
}

Segurança

  • Executar requisições está desativado por padrão. Adicione --allow-run aos argumentos apenas quando quiser que o assistente dispare requisições — editar arquivos nunca deve enviar tráfego silenciosamente.
  • Segredos ficam fora do workspace. O servidor lê e escreve apenas nomes de segredos e referências {{secret:name}}; um valor em texto puro onde uma referência deveria estar é recusado.
  • O servidor nunca toca no git. Commits continuam sendo seus.
FlagSignificado
--workspace <dir>Pasta do workspace (padrão: diretório atual).
--allow-runPermite que o agente execute requisições. Desativado por padrão.

Solução de problemas

  • "não é um workspace do Baton" / o cliente diz "Connection closed" — o servidor sai no início quando a pasta não tem baton.yaml. Abra o Claude Code no seu workspace, ou adicione o servidor manualmente com --workspace /path/to/workspace.
  • run_request recusa — adicione --allow-run.
  • npm warn EBADENGINE … required: { node: '>=24' }, e depois nada — o servidor precisa de Node.js 24+; node --version no shell que seu cliente inicia.

Suporte