Pular para o conteúdo principal
Além de ser um cliente MCP (consumir ferramentas externas — ver MCP Integration), o ChatCLI também pode ser um servidor: outros agentes/clientes podem dirigir o ChatCLI via protocolo.
São dois subcomandos externos, ambos falando JSON-RPC sobre stdio (stdin/stdout carregam o protocolo; todo log vai para o file logger):
  • chatcli mcp-server (alias mcp-serve) — servidor MCP (Model Context Protocol).
  • chatcli acp — servidor ACP (Agent Client Protocol), para editores.

chatcli mcp-server

Expõe o ChatCLI como servidor MCP (revisão 2024-11-05). O diferencial: ele não é só Q&A — expõe a funcionalidade real do ChatCLI como ferramentas MCP.

Ferramentas expostas

FerramentaO que faz
ask_chatcliPergunta ao modelo (chat, sem tools). Mantém histórico por session no servidor.
agent_taskRoda o agent loop (ReAct) completo numa tarefa — o agente usa autonomamente suas tools (read, search, shell via coder, web, memory) e retorna o transcript. Para trabalho multi-step.
coder_taskRoda o coder loop numa tarefa (focado em ler/editar código no workspace).
read, search, tree, websearch, webfetchAs built-in tools curadas (read-only/seguras), expostas individualmente.
ask_chatcli(prompt, session?)     → resposta de chat
agent_task(task, session?)        → transcript do agente
coder_task(task, session?)        → transcript do coder
read(args) / search(args) / ...   → resultado da tool
O agente e o coder renderizam para o stdout; o backend captura essa saída durante a execução e a devolve como resultado da ferramenta. O servidor JSON-RPC mantém sua própria cópia do stdout original, então o canal de protocolo nunca é corrompido.

Backend (provider/modelo)

O backend usa LLM_PROVIDER / LLM_MODEL (ou a config global) para escolher o modelo. Se a inicialização completa do ChatCLI falhar, o chat (ask_chatcli) ainda funciona; agent/coder/tools ficam indisponíveis e retornam erro claro.

Configurando um cliente MCP

{
  "mcpServers": {
    "chatcli": {
      "command": "chatcli",
      "args": ["mcp-server"],
      "env": {
        "LLM_PROVIDER": "CLAUDEAI",
        "ANTHROPIC_API_KEY": "sk-ant-...",
        "LLM_MODEL": "claude-sonnet-4-6"
      }
    }
  }
}

chatcli acp

Expõe o ChatCLI sobre o Agent Client Protocol (stdio): initialize, session/new, session/prompt, com as respostas do agente transmitidas como session/update (streaming). Use em editores que falam ACP.
chatcli acp

Veja também