Entendendo Tools e MCP no VS Code Chat
O VS Code Chat (ou Copilot Chat) permite criar agentes personalizados capazes de ler, editar e executar comandos dentro do seu ambiente de desenvolvimento.
Esses agentes usam o campo tools: no arquivo .prompt.md para definir quais ferramentas eles podem usar.
⚙️ 1. O que são tools:
Cada agente no VS Code Chat tem uma configuração assim:
---
mode: agent
description: "Agente DevSecOps — segurança, automação e IaC."
tools: [edit, runCommands, search, problems]
---
As ferramentas listadas em tools: determinam o que o agente pode fazer — por exemplo, editar arquivos, rodar comandos de terminal, buscar código, ou analisar erros.
title: "Entendendo Tools e MCP no VS Code Chat" description: "Guia prático sobre ferramentas nativas e integrações via Model Context Protocol (MCP)"
🧩 Entendendo as Tools e o Model Context Protocol (MCP) no VS Code Chat
O VS Code Chat (ou Copilot Chat) permite criar agentes personalizados capazes de ler, editar e executar comandos dentro do seu ambiente de desenvolvimento.
Esses agentes usam o campo tools: no arquivo .prompt.md para definir quais ferramentas eles podem usar.
⚙️ 1. O que são tools:
Cada agente no VS Code Chat tem uma configuração assim:
---
mode: agent
description: "Agente DevSecOps — segurança, automação e IaC."
tools: [edit, runCommands, search, problems]
---
As ferramentas listadas em tools: determinam o que o agente pode fazer — por exemplo, editar arquivos, rodar comandos de terminal, buscar código, ou analisar erros.
🧰 2. Ferramentas nativas (Built-in Tools)
Essas ferramentas são nativas do VS Code e não exigem configuração extra.
Você pode usá-las em qualquer agente.
| Tool | Função principal | Quando usar |
|---|---|---|
changes | Mostra diffs de arquivos modificados | Revisar alterações recentes |
edit | Lê e edita arquivos do workspace | Corrigir YAML, Dockerfile, código etc |
extensions | Busca extensões no Marketplace | Recomendar ou instalar plugins |
fetch | Faz requisições HTTP simples | Buscar dados ou exemplos da web |
githubRepo | Pesquisa código em repositórios GitHub | Encontrar padrões ou vulnerabilidades |
new | Cria um novo workspace/projeto | Scaffold de apps |
openSimpleBrowser | Abre uma página local no VS Code | Visualizar UI local ou documentação |
problems | Lê e analisa erros e warnings | Revisar lint, build e erros de código |
runCommands | Executa comandos no terminal | Rodar docker, git, terraform etc |
runNotebooks | Executa células de notebooks | Data science e ML |
runTasks | Executa tarefas do .vscode/tasks.json | Automatização |
search | Pesquisa e lê conteúdo em arquivos | Localizar código e configurações |
testFailure | Mostra falhas de testes | Analisar testes quebrados |
todos | Gerencia TODOs e FIXMEs | Revisar pendências |
usages | Mostra referências e usos de símbolos | Refatoração e análise |
vscodeAPI | Usa a API interna do VS Code | Criação de extensões |
🧑💻 3. Exemplo de agente DevSecOps (somente com tools nativas)
---
mode: agent
description: "Agente DevSecOps — segurança, automação e boas práticas."
tools: [runCommands, edit, search, problems]
---
Você é um engenheiro **DevSecOps**.
Use o terminal e o editor para revisar arquivos YAML e Dockerfile,
rodar verificações de segurança e sugerir hardening.
Esse agente consegue:
- Analisar
docker-compose.yml - Executar comandos como
docker-compose config - Editar arquivos inseguros
- Relatar problemas do VS Code (lint, build etc.)
🌐 4. Quando usar MCP (Model Context Protocol)
O MCP é um protocolo que permite conectar ferramentas externas reais ao VS Code Chat.
Isso é necessário quando você quer usar:
- Docker 🐳
- Kubernetes ☸️
- Terraform 🪴
- Trivy 🔍
- Git avançado 🧩
Essas ferramentas não são nativas, então precisam ser adicionadas via MCP Server.
🔌 5. Como funcionam os MCP Servers
Um MCP Server é um serviço local (ou remoto) que “expõe” comandos e APIs como ferramentas para o Copilot Chat.
Estrutura básica
mcp.json → manifesto descrevendo as ferramentas
server.js → implementação das tools (Node.js, Python, etc.)
Exemplo de manifesto:
{
"name": "docker-mcp",
"tools": [
{ "name": "docker.ps", "description": "Lista containers" },
{ "name": "docker.logs", "description": "Exibe logs de um container" }
]
}
⚙️ 6. Configurando MCP no VS Code
- Vá em ⚙️ → MCP Servers
- Clique em Add Server
- Adicione algo como:
{
"name": "docker",
"command": "npx",
"args": ["@modelcontext/docker-mcp", "serve"]
}
- Salve e reinicie o VS Code Chat.
- Agora, no seu
.prompt.md, adicione:
tools: [edit, runCommands, docker, kubernetes]
🧱 7. Exemplo completo — DevSecOps com MCP
---
mode: agent
description: "Agente DevSecOps — segurança, automação e IaC."
tools: [edit, runCommands, docker, kubernetes, terraform, trivy]
---
Você é um engenheiro **DevSecOps** com foco em segurança de containers, infraestrutura e código.
### Objetivos
- Rodar `docker ps` e analisar containers vulneráveis.
- Executar `trivy image` e reportar vulnerabilidades.
- Auditar `terraform plan` e propor correções seguras.
- Revisar configurações de `kubernetes` com boas práticas.
Com os MCPs conectados, o agente pode realmente:
- Executar comandos Docker e K8s,
- Ler os resultados,
- Corrigir arquivos,
- E sugerir melhorias de segurança.
🧠 8. Resumo rápido
| Categoria | Ferramentas | Configuração |
|---|---|---|
| Nativas (Built-in) | edit, runCommands, search, problems, todos, changes, fetch... | Nenhuma — já disponíveis |
| Externas (via MCP) | docker, kubernetes, terraform, trivy, git (avançado) | Precisa registrar MCP Server |
| Modo de uso | Campo tools: no .prompt.md | Define o que o agente pode usar |
🧭 Conclusão
O campo tools: é o que define o “alcance” do seu agente.
Use as built-in tools para tarefas locais de código, e MCPs para conectar o agente a ferramentas do mundo real — como Docker, Kubernetes e scanners de segurança.
Com isso, o VS Code Chat se transforma em um assistente DevSecOps completo, capaz de entender, auditar e automatizar todo o ciclo de desenvolvimento.
💡 Dica final:
Comece com tools: [edit, runCommands, search], depois adicione MCPs gradualmente para estender o poder do seu agente.
🧰 2. Ferramentas nativas (Built-in Tools)
Essas ferramentas são nativas do VS Code e não exigem configuração extra.
Você pode usá-las em qualquer agente.
| Tool | Função principal | Quando usar |
|---|---|---|
changes | Mostra diffs de arquivos modificados | Revisar alterações recentes |
edit | Lê e edita arquivos do workspace | Corrigir YAML, Dockerfile, código etc |
extensions | Busca extensões no Marketplace | Recomendar ou instalar plugins |
fetch | Faz requisições HTTP simples | Buscar dados ou exemplos da web |
githubRepo | Pesquisa código em repositórios GitHub | Encontrar padrões ou vulnerabilidades |
new | Cria um novo workspace/projeto | Scaffold de apps |
openSimpleBrowser | Abre uma página local no VS Code | Visualizar UI local ou documentação |
problems | Lê e analisa erros e warnings | Revisar lint, build e erros de código |
runCommands | Executa comandos no terminal | Rodar docker, git, terraform etc |
runNotebooks | Executa células de notebooks | Data science e ML |
runTasks | Executa tarefas do .vscode/tasks.json | Automatização |
search | Pesquisa e lê conteúdo em arquivos | Localizar código e configurações |
testFailure | Mostra falhas de testes | Analisar testes quebrados |
todos | Gerencia TODOs e FIXMEs | Revisar pendências |
usages | Mostra referências e usos de símbolos | Refatoração e análise |
vscodeAPI | Usa a API interna do VS Code | Criação de extensões |
🧑💻 3. Exemplo de agente DevSecOps (somente com tools nativas)
---
mode: agent
description: "Agente DevSecOps — segurança, automação e boas práticas."
tools: [runCommands, edit, search, problems]
---
Você é um engenheiro **DevSecOps**.
Use o terminal e o editor para revisar arquivos YAML e Dockerfile,
rodar verificações de segurança e sugerir hardening.
Esse agente consegue:
- Analisar
docker-compose.yml - Executar comandos como
docker-compose config - Editar arquivos inseguros
- Relatar problemas do VS Code (lint, build etc.)
🌐 4. Quando usar MCP (Model Context Protocol)
O MCP é um protocolo que permite conectar ferramentas externas reais ao VS Code Chat.
Isso é necessário quando você quer usar:
- Docker 🐳
- Kubernetes ☸️
- Terraform 🪴
- Trivy 🔍
- Git avançado 🧩
Essas ferramentas não são nativas, então precisam ser adicionadas via MCP Server.
🔌 5. Como funcionam os MCP Servers
Um MCP Server é um serviço local (ou remoto) que “expõe” comandos e APIs como ferramentas para o Copilot Chat.
Estrutura básica
mcp.json → manifesto descrevendo as ferramentas
server.js → implementação das tools (Node.js, Python, etc.)
Exemplo de manifesto:
{
"name": "docker-mcp",
"tools": [
{ "name": "docker.ps", "description": "Lista containers" },
{ "name": "docker.logs", "description": "Exibe logs de um container" }
]
}
⚙️ 6. Configurando MCP no VS Code
- Vá em ⚙️ → MCP Servers
- Clique em Add Server
- Adicione algo como:
{
"name": "docker",
"command": "npx",
"args": ["@modelcontext/docker-mcp", "serve"]
}
- Salve e reinicie o VS Code Chat.
- Agora, no seu
.prompt.md, adicione:
tools: [edit, runCommands, docker, kubernetes]
🧱 7. Exemplo completo — DevSecOps com MCP
---
mode: agent
description: "Agente DevSecOps — segurança, automação e IaC."
tools: [edit, runCommands, docker, kubernetes, terraform, trivy]
---
Você é um engenheiro **DevSecOps** com foco em segurança de containers, infraestrutura e código.
### Objetivos
- Rodar `docker ps` e analisar containers vulneráveis.
- Executar `trivy image` e reportar vulnerabilidades.
- Auditar `terraform plan` e propor correções seguras.
- Revisar configurações de `kubernetes` com boas práticas.
Com os MCPs conectados, o agente pode realmente:
- Executar comandos Docker e K8s,
- Ler os resultados,
- Corrigir arquivos,
- E sugerir melhorias de segurança.
🧠 8. Resumo rápido
| Categoria | Ferramentas | Configuração |
|---|---|---|
| Nativas (Built-in) | edit, runCommands, search, problems, todos, changes, fetch... | Nenhuma — já disponíveis |
| Externas (via MCP) | docker, kubernetes, terraform, trivy, git (avançado) | Precisa registrar MCP Server |
| Modo de uso | Campo tools: no .prompt.md | Define o que o agente pode usar |
🧭 Conclusão
O campo tools: é o que define o “alcance” do seu agente.
Use as built-in tools para tarefas locais de código, e MCPs para conectar o agente a ferramentas do mundo real — como Docker, Kubernetes e scanners de segurança.
Com isso, o VS Code Chat se transforma em um assistente DevSecOps completo, capaz de entender, auditar e automatizar todo o ciclo de desenvolvimento.
💡 Dica final:
Comece com tools: [edit, runCommands, search], depois adicione MCPs gradualmente para estender o poder do seu agente.
