O Angular CLI MCP server: setup, tools e como conectar no seu assistente de IA

O Angular CLI traz um MCP server de dev-time que entrega tools com contexto de Angular pro seu assistente de IA. Você sobe ele com ng mcp, ou aponta um client pra npx -y @angular/cli mcp. A página oficial ainda chama o servidor de experimental e expõe seis tools padrão, mais um grupo atrás do --experimental-tool, num CLI que recomenda a v20 ou mais nova.

O que o servidor é de fato

O Angular CLI MCP server é um processo de dev-time. Ele roda na sua máquina enquanto você escreve código e expõe tools com contexto de Angular pra um assistente de IA compatível, pelo Model Context Protocol, o padrão aberto que a Anthropic lançou em novembro de 2024. O propósito é estreito e útil: o assistente ganha um caminho pra documentação atual do Angular, exemplos curados e o formato do seu workspace, e com isso para de gerar Angular do ano errado.

Antes do setup, duas observações, porque a sigla carrega coisas demais. Isto não é o WebMCP: o WebMCP é de runtime, onde o seu app publicado expõe tools tipadas pra um agente do browser, e eu separo os dois em WebMCP vs Angular CLI MCP server. E isto também não substitui o review: ele melhora o ponto de partida do assistente, mas não aprova o diff. O lado de review está em Angular CLI MCP e código Angular gerado por IA. Este texto é o encanamento: como você sobe o servidor e conecta um client.

Suba o servidor e aponte um client pra ele

Existem dois caminhos de entrada, e em geral você usa os dois. Rode ng mcp num terminal pra subir o servidor de forma interativa; a doc diz que ele então imprime as instruções pra configurar um host. O formato que o seu editor de fato guarda é uma config de client que sobe o mesmo servidor via npx, e aí o client cuida do ciclo de vida do processo. A invocação canônica nessa config é npx -y @angular/cli mcp.

Um detalhe que pega o pessoal: o nome da chave muda por client. O VS Code espera um objeto servers; o Cursor, as IDEs da JetBrains, o Gemini CLI e a maioria dos outros esperam mcpServers. O mesmo comando, os mesmos args, uma chave de fora diferente. A config abaixo está no formato mcpServers, que a maioria dos clients lê.

Suba o servidor, ou confira o CLI que o entregabash
# sobe de forma interativa (imprime as instruções de config do host)
ng mcp

# confirma a versão do CLI que traz o servidor
ng version

O formato da config do client

Este é o bloco que um client guarda. Pro VS Code, troque a chave de fora de mcpServers pra servers e mantenha o resto. O -y no npx pula o prompt de instalação, então o client consegue subir o servidor sem precisar de você.

mcp.json (clients com mcpServers: Cursor, JetBrains, Gemini CLI)text
# mcp.json
# VS Code: renomeie a chave de fora de mcpServers pra servers
{
  "mcpServers": {
    "angular-cli": {
      "command": "npx",
      "args": ["-y", "@angular/cli", "mcp"]
    }
  }
}

As tools que ele expõe

O servidor registra um conjunto padrão de tools de leitura e um segundo conjunto, atrás de uma flag, que consegue mexer no projeto. Essa separação importa pra política: as tools padrão respondem perguntas, as experimentais rodam builds e testes. Os nomes abaixo vêm direto da página oficial; não inventei nenhum. Trate a lista exata como sensível à versão e confira ela no seu próprio CLI, já que o servidor ainda é descrito como experimental.

Duas flags moldam a superfície sem você escolher tool por tool. O --read-only registra só as tools que não mudam o projeto (a doc faz a ressalva honesta de que o seu editor ainda pode editar por conta própria). O --local-only registra só as tools que funcionam offline. As tools experimentais entram por opção, via --experimental-tool (apelido -E); elas não vêm ligadas por padrão.

ToolConjuntoO que faz
search_documentationPadrãoBusca na documentação oficial do Angular.
find_examplesPadrãoAcha exemplos de código de uma base curada.
get_best_practicesPadrãoTraz o guia de boas práticas do Angular.
list_projectsPadrãoLista os apps e libraries do workspace.
onpush_zoneless_migrationPadrãoPlaneja uma migração OnPush ou zoneless passo a passo.
ai_tutorPadrãoSobe um tutor interativo de Angular (recomenda CLI v20+).
build, test, e2eExperimentalRoda um build, os testes unitários ou os testes e2e. Atrás do --experimental-tool.
modernizeExperimentalRoda migrações de código e devolve as instruções de próximo passo.
devserver.start / .stop / .wait_for_buildExperimentalControla um dev server e devolve os logs do build dele.

Conectando no seu client

Leia a linha que casa com o seu editor. O Claude Code recebe um comando de CLI e escreve a config do servidor pra você; o -- separa as flags do próprio Claude do comando que ele deve rodar, e o --scope project guarda tudo num .mcp.json compartilhado na raiz do repo, em vez da sua config pessoal. O Cursor e o VS Code recebem um arquivo JSON direto, com aquela diferença de chave que mencionei acima.

ClientComo você conectaOnde fica
Claude Codeclaude mcp add angular-cli -- npx -y @angular/cli mcpConfig pessoal por padrão; com --scope project, num .mcp.json compartilhado.
CursorAdicione o bloco mcpServers na config de MCP (do projeto ou global)..cursor/mcp.json (projeto) ou a config global de MCP do Cursor.
VS Code (Copilot)O mesmo bloco, mas a chave de fora é servers, não mcpServers..vscode/mcp.json ou o seu settings.json de usuário.
Outros clients de MCPUse o bloco mcpServers com npx -y @angular/cli mcp.O arquivo de config de MCP daquele client.
Claude Code: adicione o servidor e confirme que o CLI está presentebash
# adiciona o Angular CLI MCP server (compartilhado com o time)
claude mcp add angular-cli --scope project -- npx -y @angular/cli mcp

# confere o CLI pelo qual o servidor roda
ng version

Quando ele se paga em vez de um arquivo de regras simples

O servidor vale o esforço quando o seu assistente precisa de respostas vivas que um arquivo estático não dá: docs atuais de uma API cujo status você não tem certeza, a lista real de projetos de um workspace, ou um plano de migração gerado contra o seu código. Se a sua necessidade é só ensinar as convenções do time pro assistente, um arquivo de regras vai mais longe com menos máquina rodando, e o ng generate ai-config escreve um no formato que a sua ferramenta já lê. Eu uso os dois: o AGENTS.md pras regras fixas, o MCP server pras consultas vivas. Se eu tivesse que largar um num projeto pequeno, ficaria com o arquivo de regras, porque uma sugestão de API desatualizada sai mais barato de pegar no review do que uma convenção faltando sai de reexplicar em cada prompt.

Artefato para reaproveitar

Matriz de conexão do Angular CLI MCP

  • Pra subir: ng mcp de forma interativa, ou deixe um client subir o npx -y @angular/cli mcp.
  • Claude Code: claude mcp add angular-cli -- npx -y @angular/cli mcp (com --scope project pra um .mcp.json compartilhado).
  • Cursor / Gemini CLI / JetBrains: um bloco mcpServers com command: npx, args: [-y, @angular/cli, mcp].
  • VS Code (Copilot): o mesmo bloco, mas a chave de fora é servers, não mcpServers.
  • Pra limitar a superfície: --read-only pras tools que não mudam nada, --local-only pra offline, --experimental-tool pra ligar as tools de build/test.
  • Confira a lista de tools no seu próprio CLI; o servidor ainda é descrito como experimental, então a lista pode mudar entre versões.

Perguntas frequentes

Qual comando sobe o Angular CLI MCP server?

Rode ng mcp num terminal pra subir de forma interativa; ele então imprime as instruções pra configurar um host. A maioria dos clients, em vez disso, guarda uma config que sobe o mesmo servidor via npx -y @angular/cli mcp, e aí o client gerencia o processo. Os dois caminhos estão na página oficial.

Como adiciono no Claude Code?

Rode claude mcp add angular-cli -- npx -y @angular/cli mcp. O -- separa as flags do próprio Claude Code do comando que ele roda. Adicione --scope project pra escrever um .mcp.json compartilhado na raiz do repo, em vez da sua config pessoal.

Por que a minha config do VS Code não funciona com `mcpServers`?

O VS Code espera a chave de fora servers, enquanto o Cursor, as IDEs da JetBrains e o Gemini CLI esperam mcpServers. O command e os args são idênticos (npx -y @angular/cli mcp); só a chave de fora muda, conforme a doc do Angular.

Quais tools ele expõe?

Seis tools padrão (search_documentation, find_examples, get_best_practices, list_projects, onpush_zoneless_migration, ai_tutor) e um grupo atrás do --experimental-tool (build, test, e2e, modernize e um grupo de devserver). A página oficial é a fonte de verdade; trate a lista como sensível à versão.

Fontes consultadas

Modern Angular Playbook

Este artigo é um play.

O Playbook do Angular Moderno reúne o diagnóstico, a matriz de adoção, onze jogadas e o plano de 30 dias. Grátis, em inglês e português.

Você recebe os dois PDFs por email, pela lista do Dojo IA.

Abrir playbook →

André Ramosdisponível para vagas remotas, UTC−3Entre em contato →

Leia também

Guia · 7 min

Angular CLI MCP e código Angular gerado por IA

Um checklist de produção para usar Angular CLI MCP, ai-config e revisão humana em código Angular gerado por IA.

Ler artigo →

Nota · 6 min

WebMCP vs Angular CLI MCP server: tools em runtime vs ajuda em dev-time

Qual MCP do Angular você quer de verdade: o CLI MCP server de dev-time, que ajuda um assistente a escrever seu código, ou o WebMCP de runtime, que deixa um agente do browser chamar seu app publicado.

Ler artigo →

Guia · 7 min

Um AGENTS.md que faz a IA escrever Angular moderno

Um guia de produção para escrever um arquivo de regras de agente que nomeia a versão, a fronteira de estado, a sintaxe de template e as armadilhas que fazem a IA gerar código desatualizado.

Ler artigo →