Aprendizagem pessoal com IA
e orientação prática
Beanbag Marscode1

Ampliação dos recursos do Copilot Agent: detalhes de configuração do VS Code MCP

O VS Code 1.99 introduz o suporte ao protocolo de contexto de modelo.

Código do Visual Studio ( VS Code Em sua versão 1.99, o protocolo de contexto de modelo (MCP) foi formalmente introduzido. MCP). O MCP é um padrão aberto projetado para fornecer uma interface unificada que permite que os modelos de IA interajam com ferramentas e serviços externos.

MCP foi introduzido principalmente para aprimorar o Copiloto do GitHub O MCP Server é um protocolo que permite aos desenvolvedores configurar servidores MCP para acessar ferramentas e serviços personalizados no modo Agente. Com esse protocolo, os desenvolvedores podem configurar o servidor MCP para conectar ferramentas e serviços personalizados ao VS Code em fluxos de trabalho de IA, expandindo consideravelmente o potencial dos assistentes de IA para executar uma gama mais ampla de tarefas mais dinâmicas, como consultar dados em tempo real, manipular arquivos locais ou invocar API.


 

Pré-requisitos: habilitar o modo Agente e as dependências do ambiente

VS Code 1,99 MCP Integrado ao GitHub Copiloto no modo Agente. Portanto, para usar o MCP o modo Agent deve ser ativado primeiro. Isso pode ser feito com a função VS Code O menu suspenso na parte superior da visualização do Chat faz isso.

cf0d32bc-a7f9-4571-bcff-aa366f84fc77.png

Outra coisa a se ter em mente, e MCP Um feedback comum que está sendo enfrentado é que a execução de MCP O servidor pode precisar ser pré-instalado Node.jsDocker ou outras dependências. Isso ocorre porque muitas MCP As implementações de servidor (especialmente para a execução de scripts ou ferramentas em contêineres) dependem desses ambientes externos. Embora isso acrescente complexidade à configuração inicial, também oferece a flexibilidade de se conectar a uma variedade de ferramentas avançadas de personalização.

 

Configuração do servidor MCP

existir VS Code Médio.MCP A configuração principal está localizada na seção .vscode/mcp.json dentro do arquivo. Por meio desse JSON você pode definir um ou mais arquivos MCP o modo Agente usará as ferramentas fornecidas por esses servidores.

Etapa 1: Criar um perfil de MCP

  1. Abra a pasta de seu projeto em VS Code Médio.
  2. No diretório raiz do projeto, localize ou crie um arquivo chamado .vscode da pasta.
  3. existir .vscode crie um arquivo chamado mcp.json do documento.
  4. Adicione o seguinte modelo de configuração básica ao mcp.json Documentação:
    {
    "servers": {
    "example-server": {
    "type": "stdio",
    "command": "node",
    "args": ["path/to/your/script.js"]
    }
    }
    }
    

    Nessa configuração:

    • serversObjeto que define todos os MCP servidores, cada chave é um nome de servidor exclusivo (por exemplo, "example-server").
    • typeTipo de comunicação: Especifica o tipo de comunicação para o servidor. Os tipos comuns incluem:
      • stdioEntrada/Saída Padrão (SIO): O servidor está conectado ao servidor por meio de entrada/saída padrão (SIO). VS Code comunicação, normalmente usado para executar scripts ou executáveis locais.
      • sseEventos enviados pelo servidor: O servidor se comunica usando eventos enviados pelo servidor, que são comumente usados para conexão com serviços remotos ou serviços que precisam enviar atualizações continuamente.
    • command responder cantando argsComando: Define os comandos e seus parâmetros necessários para iniciar esse servidor. Neste exemplo, ele usará o comando Node.js para executar um JavaScript Documentação.

Etapa 2: Adicionar configuração específica do servidor

Você pode editar manualmente mcp.json para adicionar um servidor, ou você pode usar o arquivo VS Code A maneira conveniente fornecida pelo Painel de Comando:

  1. Abra o Command Panel (tecla de atalho) Ctrl+Shift+P talvez Cmd+Shift+P).
  2. Digite e execute MCP: Add Server Comando.
  3. opção Workspace Settings(matemática) gênero VS Code abrirá ou criará automaticamente .vscode/mcp.json e pode fornecer prompts inteligentes (IntelliSense) para ajudá-lo na configuração.

A seguir, uma configuração chamada fetch exemplo de servidor, que usa o uvx comando para executar mcp-server-fetch que foi projetada para recuperar o conteúdo de uma página da Web em um URL especificado:

{
"servers": {
"fetch": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}

981a9ad7-9c62-49b2-b41c-0ddd0c8fba79.png

Etapa 3: Manuseio seguro de informações confidenciais

Hardcoding no arquivo de configuração API As chaves ou outras credenciais confidenciais não são seguras.MCP O uso de variáveis de entrada é suportado para lidar com essa situação. Quando a VS Code O usuário é solicitado a fornecer informações ao iniciar um servidor que requer essas variáveis.

{
"inputs": [
{
"type": "promptString",
"id": "api-key",
"description": "Your API Key",
"password": true
}
],
"servers": {
"perplexity": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "PERPLEXITY_API_KEY", "mcp/perplexity-ask"],
"env": {
"PERPLEXITY_API_KEY": "${input:api-key}"
}
}
}
}

Neste exemplo:

  • inputs As matrizes definem variáveis que exigem entrada do usuário. Aqui, uma ID por causa de api-key do tipo de senha inserido.
  • password: true Certifique-se de que o conteúdo esteja oculto enquanto você digita.
  • Na configuração do servidor do env Parte.${input:api-key} A sintaxe faz referência a uma variável de entrada definida anteriormente.VS Code será responsável por armazenar com segurança e passar esse valor para a variável de ambiente do processo do servidor PERPLEXITY_API_KEY.

 

Uso e gerenciamento de ferramentas MCP

Ativação do modo de agente e descoberta de ferramentas

Quando você tiver configurado corretamente o .vscode/mcp.json e salve-o, depois mude para GitHub Copilot Modo de agente (selecionado por meio do menu suspenso na parte superior da visualização do Chat) Agent). O modo Agente detecta e carrega automaticamente os servidores definidos no arquivo de configuração e as ferramentas que eles fornecem.

4af17127-c318-482e-baff-36af8b7e260b.png

ferramenta de invocação

Depois que os servidores e as ferramentas forem reconhecidos pelo esquema do Agente, você poderá invocá-los na visualização do Chat, seja em linguagem natural ou com comandos específicos. Por exemplo:

  • Se você configurar o fetch servidores que podem ser inseridos:@workspace /fetch https://bytenote.net para obter o conteúdo da página.
  • Se você configurar uma consulta de tempo capaz de MCP servidor, tente perguntar:@workspace What's the time in Saigon?

O agente analisa sua solicitação, determina se precisa chamar uma ferramenta externa e se comunica com a ferramenta apropriada. MCP interação com o servidor para obter os resultados.

4007a28d-7c12-4467-95ac-e380439e2858.png

Gerenciamento do status do servidor

Às vezes, você precisa visualizar o status de um servidor configurado ou gerenciá-lo (iniciar, parar, visualizar registros etc.).

  1. Abra o painel de comando (Ctrl+Shift+P talvez Cmd+Shift+P).
  2. Digite e execute MCP: List Servers Comando.
  3. Isso abre uma exibição que lista todos os arquivos na pasta mcp.json e seu estado atual (por exemplo StartedStopped).
  4. Você pode clicar em um servidor na lista para executar ações como iniciá-lo, pará-lo ou reiniciá-lo e visualizar seus registros de saída, o que é útil para depurar as configurações do servidor.

ba7b278c-f1ce-4637-9a75-cd1a475baa75.png

 

Exemplo de configuração avançada

Configuração de vários servidores

mcp.json O arquivo pode definir vários servidores, cada um fornecendo uma funcionalidade diferente.

{
"inputs": [
{
"type": "promptString",
"id": "perplexity-key",
"description": "Perplexity API Key",
"password": true
}
],
"servers": {
"Perplexity": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "PERPLEXITY_API_KEY", "mcp/perplexity-ask"],
"env": {
"PERPLEXITY_API_KEY": "${input:perplexity-key}"
}
},
"Fetch": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-server-fetch"]
},
"RemoteServer": {
"type": "sse",
"url": "http://api.example.com/sse",
"headers": {
"VERSION": "1.2"
}
}
}
}

Essa configuração define três servidores:

  • Perplexity: Uso Docker A execução de uma ferramenta, que pode ser usada para realizar pesquisas ou questionários complexos, requer API Chave.
  • Fetch: Uso uvx Execute uma ferramenta local para rastrear o conteúdo da Web.
  • RemoteServerConexão com um controle remoto SSE Um ponto de extremidade de serviço que pode ser usado para receber notificações ou fluxos de dados em tempo real. Observação sse Tipo necessário url e pode conter parâmetros headers.

Uso de variáveis predefinidas

MCP A configuração suporta diversas variáveis predefinidas para facilitar a referência de informações contextuais.

{
"servers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "${workspaceFolder}"]
}
}
}

Neste exemplo, o${workspaceFolder} é uma variável predefinida que será substituída pela variável VS Code O caminho do diretório raiz do espaço de trabalho aberto. Isso é útil para ferramentas que precisam de acesso a arquivos de projeto.

aprovar (um projeto de lei ou inspeção etc.) MCP(matemática) gêneroVS Code abre a porta para que os desenvolvedores integrem os assistentes de IA mais profundamente em seu fluxo de trabalho de desenvolvimento diário com o poder das ferramentas externas. Embora a configuração inicial possa envolver alguma configuração de ambiente, a personalização e a expansão de recursos que ela proporciona são consideráveis.

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Ampliação dos recursos do Copilot Agent: detalhes de configuração do VS Code MCP
pt_BRPortuguês do Brasil