Agentes de IA: quando usar MCP ou CLI
Saiba quando usar MCP ou CLI em agentes de IA. Compare GitHub, Playwright e Stripe por contexto, credenciais e permissões para escolher a interface certa.
Publicado em

Para agentes de IA que programam dentro do seu ambiente de desenvolvimento, escolha uma CLI. Para disponibilizar um serviço por uma interface de ferramentas controlada, sobretudo a usuários sem acesso a um shell, escolha MCP. A comparação que importa entre MCP e CLI passa pelas credenciais que o agente usa e pelo que ele pode alterar. Estes 3 exemplos comparativos — GitHub, Playwright e Stripe — mostram quando a escolha muda.
MCP ou CLI: o que escolher para agentes de IA?
Para quem desenvolve dentro de um repositório, comece pela CLI. Uma interface de linha de comando é um programa operado por comandos. Se o agente já conta com um executor de comandos aprovado e a ferramenta atende à tarefa, adicionar outra integração pode aumentar a manutenção sem melhorar o resultado.
Para um assistente hospedado que atende a diferentes usuários, prefira um serviço MCP com permissões delimitadas a um shell privilegiado compartilhado. Model Context Protocol é um padrão pelo qual uma aplicação de IA descobre e chama ferramentas. Um servidor remoto pode receber a autorização de cada usuário e disponibilizar as operações de que o assistente precisa. Ainda cabe a você fazer cumprir essas permissões.
Em uma equipe de engenharia, use os dois quando cada um tiver uma responsabilidade diferente. Mantenha o trabalho no repositório no executor de comandos. Coloque as operações de negócio compartilhadas atrás de um serviço que verifique a identidade e as permissões de quem faz a chamada.
Os critérios decisivos são o acesso ao ambiente de execução, a titularidade das credenciais, as operações disponíveis e a quantidade de informação que chega ao modelo. O nome do protocolo vem depois.
A documentação dos fabricantes usada nesta comparação foi verificada em 11 de novembro de 2026. O artigo apresenta fluxos documentados e avaliações de arquitetura, sem benchmark nem alegação de testes práticos.
CLI e protocolo MCP: como cada um se conecta ao modelo?
MCP oferece ao agente a descrição de uma ferramenta; uma CLI oferece um comando para executar. Nenhum dos dois permite que o modelo realize uma operação sozinho. A aplicação ao redor recebe a chamada proposta pelo modelo, aplica seus controles, executa a operação e devolve o resultado.
Com MCP, o cliente consulta o servidor para descobrir as ferramentas disponíveis. Cada ferramenta descreve seu nome, sua finalidade e seu esquema de entrada: os campos que aceita. A aplicação pode apresentar essas definições ao modelo, que escolhe uma ferramenta e fornece argumentos estruturados. A especificação de ferramentas MCP define a descoberta e a chamada, mas deixa o padrão de interação com o usuário a cargo da aplicação.
Com uma CLI, o agente usa uma ferramenta de execução de comandos para iniciar um programa instalado. Ele pode já reconhecer um comando comum, mas pode consultar --help para conferir a sintaxe da ferramenta instalada. A resposta pode ser texto, JSON estruturado ou o caminho de um arquivo. “Saída de CLI” não significa “texto sem estrutura”.
Por exemplo, “liste meus pull requests abertos” pode virar uma chamada de ferramenta do GitHub com argumentos ou um comando gh pr list. A conta usada continua precisando de permissão para ler esses pull requests. Mudar a interface não concede acesso.
Para entender o papel mais amplo do protocolo, veja o que é MCP.

Custo de contexto: a CLI leva vantagem no caso local simples
Uma CLI pode manter detalhes irrelevantes de ferramentas fora do contexto do modelo, mas não elimina o consumo de contexto. Contexto é a informação que o modelo recebe para decidir o próximo passo. Descrições de ferramentas e seus esquemas de parâmetros ocupam tokens quando a aplicação hospedeira os inclui, assim como o texto de ajuda e a saída dos comandos.
Um servidor MCP com um catálogo amplo de ferramentas pode, portanto, consumir bastante contexto antes de o trabalho útil começar. A ressalva importante é quando a aplicação inclui esse catálogo. Não presuma que toda aplicação carrega todas as definições disponíveis em cada requisição ao modelo. Selecionar menos ferramentas ou descobri-las sob demanda muda a comparação.
O caminho pela CLI pode começar apenas com a definição do executor de comandos e carregar a ajuda específica de cada ferramenta quando necessário. Também permite filtrar dados antes de devolvê-los ao modelo. Pedir apenas títulos e URLs de pull requests é melhor do que retornar registros completos e esperar que o modelo ignore a maior parte deles.
Mas uma CLI que despeja um log enorme, ou uma skill que carrega um manual extenso, pode anular essa vantagem. Da mesma forma, uma ferramenta MCP que devolve uma resposta concisa pode ser mais eficiente do que explorar o shell repetidamente. Meça a tarefa inteira: definições, ajuda, saídas, novas tentativas e se o resultado estava correto. Uma string de comando curta, por si só, prova pouco.
Vencedor da categoria: CLI para tarefas locais rotineiras com saída seletiva. MCP continua competitivo quando o conjunto de ferramentas e os resultados são enxutos. Não há fundamento aqui para um multiplicador universal de tokens.
Autenticação e permissões: MCP ganha quando o serviço impõe os limites
A autorização por usuário importa mais do que o agente enviar JSON ou uma string de comando. OAuth é um fluxo de login delegado: o usuário autoriza um cliente sem entregar sua senha. Uma implantação remota de MCP pode usar essa identidade para determinar quais contas, registros e ações o cliente pode acessar.
Pense em um assistente de suporte que atende a diferentes organizações clientes. Ele deve consultar os registros do cliente conectado sem receber a credencial de um engenheiro capaz de ler todas as contas. Entre um serviço MCP remoto com escopo correto e um shell de administrador compartilhado, escolha o serviço. É nesse cenário que MCP pode ser a única opção aceitável entre essas duas implementações.
Essa não é a única arquitetura segura possível. Uma integração direta com a API pode impor os mesmos limites. Adicionar MCP também não os cria automaticamente: a especificação de autorização MCP torna a autorização opcional, define o fluxo de autorização HTTP e distingue os servidores STDIO locais, que obtêm credenciais do ambiente.
Uma CLI também pode usar login pelo navegador e uma credencial de escopo restrito. O risco depende do que seu processo pode acessar: credenciais, arquivos, destinos de rede e outros executáveis. Um executor de comandos em sandbox com credenciais bem delimitadas é uma situação diferente do acesso irrestrito à máquina de um desenvolvedor.
Vencedor da categoria: MCP remoto com escopo restrito para acesso delegado entre usuários. Nos dois caminhos, aplique em código a autorização por conta e por objeto, mantenha credenciais fora das saídas visíveis ao modelo e registre qual usuário autorizou cada ação.

GitHub CLI ou GitHub MCP: trabalho no repositório ou acesso compartilhado ao serviço?
O GitHub CLI, cliente de linha de comando gh, é a escolha direta para um agente de programação que já trabalha em uma cópia local do repositório. Imagine que você queira um resumo dos seus pull requests abertos. Dentro do repositório, após a autenticação, este comando usa opções documentadas:
gh pr list --author "@me" --json number,title,urlO comando solicita apenas os campos necessários para o resumo. A CLI também aceita --jq para filtrar o JSON antes que ele chegue ao modelo. É uma técnica concreta para economizar contexto, sem alegar um benchmark de tokens.
O limite da CLI depende do executor que a envolve. Um comando que funciona no seu notebook não é automaticamente uma interface adequada para todo funcionário ou cliente. Segundo o manual de login do GitHub CLI, o login pelo navegador normalmente armazena um token no gerenciador de credenciais do sistema, recorrendo a texto puro quando esse gerenciador está indisponível. Examine como as credenciais são realmente armazenadas, em vez de presumir que “local” significa isolado.
O GitHub MCP Server, servidor oficial de ferramentas do GitHub, atende a assistentes que precisam operar repositórios via MCP. Para produzir o mesmo resumo, disponibilize as ferramentas de pull requests pertinentes, use a autorização do usuário correto e peça os pull requests abertos desse usuário. O GitHub hospeda um servidor remoto e também oferece uma opção local.
O GitHub documenta conjuntos de ferramentas e a seleção individual delas, além de um modo somente leitura que omite ferramentas de escrita. O suporte a OAuth remoto também depende de a aplicação hospedeira configurar o GitHub App ou OAuth App adequado; um transporte compatível, sozinho, não resolve a autenticação.
Veredito do comparativo: use gh para o resumo do desenvolvedor e os scripts do repositório. Prefira MCP para um assistente compartilhado cujo cliente suporte o fluxo de autenticação necessário. Nenhuma escolha substitui as permissões do repositório, e selecionar menos ferramentas MCP pode melhorar tanto a clareza quanto o uso de contexto.
Playwright CLI ou MCP: tarefas de programação ou exploração no navegador?
O Playwright CLI, interface de comandos da Microsoft para ações no navegador, é a escolha padrão para um agente de programação que verifica uma alteração na web. Seus criadores recomendam CLI com skills para agentes de programação porque os comandos podem evitar o carregamento de esquemas extensos e dados de página no contexto. Essa é a orientação de projeto deles, não uma medição de velocidade feita neste artigo.
Para quem está verificando um formulário, o fluxo consiste em abrir a página, inspecionar os elementos relevantes, interagir e conferir o resultado. O agente não precisa ler todos os detalhes da página após cada ação.
playwright-cli install: comece pelos comandos do fabricante
A instalação documentada e a inspeção de uma página sem alterações são:
npm install -g @playwright/cli@latest
playwright-cli --help
playwright-cli open https://playwright.dev
playwright-cli snapshot
playwright-cli closeEsses comandos inspecionam uma página pública; não são uma suíte de testes. Use o snapshot gerado para identificar os alvos antes de adicionar interações com a sua própria aplicação.
Skill do Playwright CLI: acrescente as instruções do fluxo
Depois de instalar a CLI, o comando documentado para as skills é:
playwright-cli install --skillsA limitação importante está no que você precisa fornecer ao redor: um ambiente capaz de executar o programa, uma sessão de navegador adequada e instruções que definam o sucesso. Uma skill ajuda no procedimento; não pode decidir se uma transação real de um cliente está autorizada.
O Playwright MCP, servidor de ferramentas de navegador da Microsoft, se encaixa melhor quando o cliente MCP se beneficia de uma inspeção estruturada da página durante um ciclo exploratório. Ele usa snapshots de acessibilidade, descrições estruturadas dos elementos da página, para viabilizar a interação com o navegador.
Dois limites merecem atenção. Primeiro, o estado persistente do navegador não é exclusividade do MCP: o Playwright CLI preserva cookies e armazenamento entre chamadas dentro de uma sessão e oferece perfis persistentes entre reinicializações do navegador. Segundo, o repositório do MCP afirma explicitamente que o servidor não é uma barreira de segurança. Seus controles de origem também alertam que não oferecem essa barreira nem afetam redirecionamentos.
Veredito do comparativo: CLI com skills para verificações rotineiras dentro de um fluxo de programação; MCP quando o cliente e a tarefa se beneficiam da interação com suas ferramentas de navegador. Não mude apenas para obter estado de sessão. O guia de configuração do Playwright MCP e testes no navegador detalha esse caminho.
Stripe CLI ou Stripe MCP: desenvolvimento de webhooks ou operações na conta?
O Stripe CLI, ferramenta de terminal da Stripe, leva vantagem no desenvolvimento e na depuração de uma integração de pagamentos. Uma tarefa típica é receber eventos de webhook — notificações enviadas pela Stripe quando algo acontece — em uma aplicação executada localmente. A CLI documenta stripe listen para receber e encaminhar esses eventos e stripe trigger para gerar eventos de exemplo.
Mantenha esse fluxo em um sandbox. Disparar eventos cria objetos na API e pode gerar eventos adicionais; não é apenas imprimir um payload de exemplo. A CLI também permite operações na API e inspeção de logs de requisições, portanto sua utilidade vai além do encaminhamento de webhooks.
A diferença na autenticação é mais sutil do que “CLI exige copiar uma chave de API”. A Stripe documenta login individual pelo navegador, armazenamento local seguro de credenciais quando disponível, renovação de sessão e revogação. Para desenvolvedores, isso pode ser adequado. Para um assistente hospedado, se você optar pela CLI, ainda precisará isolar o ambiente de execução e as credenciais de cada usuário.
O Stripe MCP, interface de serviço da Stripe voltada a agentes, leva vantagem nas operações de conta feitas por um assistente compatível sem executor local de comandos. Por exemplo, um operador autorizado pode pedir ao assistente que encontre e leia os dados relevantes da API da Stripe. O servidor oferece ferramentas de busca na API, descoberta de parâmetros, leitura e escrita, sem exigir uma definição de ferramenta separada para cada operação.
A Stripe aceita OAuth para acesso em nome de um usuário e chaves de API de agente para acesso independente. Sua ferramenta genérica stripe_api_write pode abranger muitas operações. As exigências de confirmação humana da Stripe dependem da ação e são separadas da configuração de aprovação de ferramentas do próprio cliente. Aprovar uma categoria de ferramentas, portanto, não equivale a aprovar toda ação de negócio que ela pode realizar.
Veredito do comparativo: CLI para desenvolvimento local de webhooks; MCP para trabalho delegado em contas dentro de um assistente. Compare a operação necessária, não a quantidade de comandos ou ferramentas. Uma conexão MCP que lê dados da conta não substitui o receptor local de webhooks no seu fluxo de desenvolvimento.
MCP ou skills: as instruções ficam em outra camada
Uma skill orienta como o agente deve trabalhar; MCP e CLI oferecem meios de agir. No formato Agent Skills, um arquivo SKILL.md contém nome, descrição e instruções da tarefa, com suporte opcional de scripts e arquivos de referência. Os agentes descobrem primeiro os metadados e carregam instruções mais completas quando necessário.
Na comparação “MCP vs CLI vs skills”, a combinação útil costuma ser uma CLI com uma skill. A CLI executa a operação; a skill define quais comandos usar, qual ambiente selecionar, quais evidências examinar e quando parar. Uma skill também pode orientar um agente que usa ferramentas MCP.
Para um resumo de pull requests, a skill pode exigir apenas os abertos, selecionar campos concisos e proibir a publicação de comentários durante a elaboração do relatório. A credencial e o ambiente de execução precisam impor os limites reais de acesso. Instruções escritas ajudam o agente a se comportar corretamente; não retiram permissões.
Vencedor da categoria: skills para procedimentos repetíveis. Elas complementam qualquer uma das interfaces e acrescentam seu próprio conteúdo ao contexto quando carregadas.
MCP, API e CLI: mantenha a lógica no serviço
Concentre as regras de negócio no serviço e disponibilize as interfaces de que os usuários precisam. Uma API é a interface programática de uma aplicação. Uma CLI pode chamá-la, assim como um servidor MCP, como demonstram as interfaces da Stripe.
Se você mantém as duas interfaces, reutilize a autorização e a validação em vez de criar implementações concorrentes de “quem pode alterar este registro”. A comparação entre MCP e API explica quando vale a pena adicionar a camada de protocolo.
Uma camada que aceita texto arbitrário de shell é um motivo fraco para migrar. Ela pode tornar um executor de comandos existente acessível por MCP, mas preserva os poderes desse executor. Um adaptador útil disponibiliza uma operação delimitada, valida as entradas e retorna apenas as evidências de que o agente precisa.
Tabela de decisão: escolha conforme a implantação
Escolha a menor interface que atenda à tarefa sem ampliar os poderes de acesso. Estas são configurações iniciais, não compromissos permanentes.
Como migrar de MCP para CLI ou no sentido contrário
Migre um fluxo de trabalho, não todo o seu inventário de ferramentas. A parte custosa costuma ser preservar permissões, saídas e tratamento de falhas, mais do que converter o nome de uma ferramenta em um comando.
Migrar para CLI exige organizar instalação, credenciais, executor de comandos, filtragem de saída e instruções reproduzíveis. Migrar para MCP exige escolher ou operar um servidor, configurar a autenticação do cliente, definir quais ferramentas estarão disponíveis e tratar erros por essa interface. Fluxos de navegador também precisam de uma decisão explícita sobre a titularidade das sessões e dos perfis.
Não troque um fluxo de CLI que funciona apenas para adicionar suporte a um protocolo. Não remova uma integração MCP remota que atende a pessoas sem shell só porque um comando parece mais curto.
Escolha uma tarefa bem delimitada
Comece com um resumo de pull requests ou uma inspeção de navegador em sandbox. Registre a saída esperada e as ações que o fluxo jamais deve realizar.
Compare com permissões equivalentes
Use acesso à conta e permissões equivalentes na comparação. Um caminho MCP somente leitura e uma credencial de administrador na CLI são implantações diferentes, não um teste justo entre interfaces.
Compare a tarefa completa
Examine os dados retornados, as chamadas que falharam, as etapas de recuperação e o contexto visível ao modelo. Mantenha o caminho que produz o resultado necessário com menos esforço operacional e poderes adequados à tarefa.
Receba mais guias práticos para escolher e delimitar fluxos de trabalho de agentes na newsletter.
Perguntas frequentes
Quando usar Playwright CLI e quando usar MCP?
Use Playwright CLI com skills para tarefas rotineiras no navegador dentro do ambiente de comandos de um agente de programação. Escolha Playwright MCP quando o cliente e o fluxo exploratório se beneficiarem de ferramentas estruturadas de navegador. Os dois podem manter o estado do navegador; MCP, por si só, não é uma barreira de segurança.
Por que a CLI ainda é usada?
Uma CLI oferece comandos reutilizáveis por pessoas, scripts e agentes de programação. A saída estruturada e a filtragem local permitem que um fluxo devolva apenas a informação de que o agente precisa. O texto de ajuda e a saída dos comandos continuam consumindo contexto quando o modelo os lê.
CLI é uma linguagem de programação?
Não. CLI significa interface de linha de comando: uma forma de operar um programa digitando comandos. O programa pode ser escrito em diferentes linguagens. Um agente de programação usa um executor de comandos para chamá-lo e depois lê o resultado.
- Publicado
- Categoria
- Build
- Idioma













