Pular para o conteúdo
Kitbay

Segurança no MCP: perguntas para fazer antes de instalar um servidor ou uma skill

Pela equipe editorial do Kitbay ·

Antes de instalar um servidor MCP ou uma skill de agente, faça seis perguntas: o que ele pode ler e alterar, onde roda, quais credenciais precisa, que código roda quando você o instala e o inicia, se ele lê conteúdo não confiável e quem o publica e mantém. As respostas mostram quanto acesso dar a ele, ou se vale a pena instalá-lo.

Tanto servidores quanto skills deixam um agente de IA agir em seu nome. A especificação do MCP diz que as ferramentas equivalem à execução de código arbitrário e precisam ser tratadas com cuidado, e a Anthropic recomenda tratar a instalação de uma skill como a instalação de um software. Este guia transforma essas recomendações em um checklist.

1. O que ele pode ler e alterar?

Comece pela lista de ferramentas. Um servidor que só pesquisa documentação é muito diferente de um que pode apagar arquivos, enviar e-mails ou movimentar dinheiro.

  • Leia o README e a lista de ferramentas. Procure palavras como create, update, delete, send, run ou execute.
  • Confira se o servidor separa ferramentas somente leitura de ferramentas de escrita. O ChatGPT, por exemplo, trata toda ferramenta como ação de escrita que precisa de confirmação, a não ser que o servidor a marque como somente leitura.
  • Não confie só na descrição. A especificação do MCP diz que descrições e anotações de ferramentas devem ser consideradas não confiáveis, a menos que venham de um servidor confiável.

As listagens de servidores do Kitbay registram se um servidor pode alterar dados, com a evidência por trás dessa informação.

2. Ele roda no seu computador ou na internet?

Servidores locais rodam na sua máquina com as permissões da sua conta de usuário. A documentação do MCP é direta sobre isso: um servidor de sistema de arquivos pode fazer qualquer operação com arquivos que você mesmo faria. As orientações de segurança também descrevem um risco dos servidores locais: um comando de inicialização malicioso, escondido em um trecho de configuração, que roda assim que o cliente o executa.

Servidores remotos rodam na infraestrutura de terceiros. Seus dados vão até eles, e eles agem por meio da conta com que você faz login. Confira quem opera o servidor e o que dizem os termos de privacidade.

Para servidores locais, prefira stdio. Se um servidor local abrir uma porta HTTP, a especificação diz que ele deve escutar apenas em 127.0.0.1 e checar o cabeçalho Origin; caso contrário, um site poderia acessá-lo por DNS rebinding.

3. Quais credenciais ele precisa?

  • Use a chave mais restrita possível. Crie um token somente leitura ou com escopos limitados, se o serviço permitir. As orientações de segurança do MCP alertam que escopos amplos aumentam o estrago se um token vazar.
  • Prefira OAuth para servidores remotos, assim você vê os escopos solicitados e pode revogar o acesso depois. No Claude Code, remover um servidor apaga os tokens salvos localmente, mas a documentação recomenda fazer logout antes se você quiser que eles sejam revogados no provedor.
  • Mantenha segredos fora de arquivos compartilhados. Use variáveis de ambiente ou os pedidos de segredo do próprio cliente. O recurso inputs do VS Code e as variáveis ${env:NAME} do Cursor existem para isso.
  • Fique de olho no tratamento de tokens em servidores hospedados. A especificação proíbe que um servidor aceite tokens que não foram emitidos para ele.

4. Que código roda, e quando?

No caso de um servidor, leia o comando de instalação exato. Uma linha como npx -y some-package baixa e executa a versão publicada mais recente a cada vez. Confira se o nome do pacote corresponde ao repositório do projeto e considere fixar uma versão.

No caso de uma skill, olhe todos os arquivos, não só o SKILL.md. A documentação de skills da Anthropic lista o que procurar: chamadas de rede inesperadas, acesso a arquivos que não combina com o propósito da skill e instruções que puxam conteúdo de URLs externas, já que esse conteúdo pode mudar depois. No Claude Code, especificamente:

  • uma linha escrita como !`command` em uma skill roda na sua máquina antes mesmo de o Claude ver a skill;
  • a configuração allowed-tools de uma skill de projeto vale até em uma pasta que você nunca marcou como confiável, por isso a documentação recomenda revisá-la antes de rodar o Claude Code em um repositório novo;
  • as skills têm o mesmo acesso à rede que qualquer outro programa no seu computador.

5. Ele lê conteúdo de terceiros?

Prompt injection é o risco de o texto que o agente lê conter instruções direcionadas a ele. Um servidor que busca páginas da web, e-mails, issues ou tickets de suporte traz esse texto para a conversa. A documentação do Claude Code alerta especificamente sobre servidores que buscam conteúdo externo, e a OpenAI classifica servidores MCP personalizados no ChatGPT como de risco elevado, observando que um servidor não confiável poderia induzir o modelo a usar as ferramentas de forma indevida.

Combinar ferramentas aumenta o risco. Um servidor que lê conteúdo público e outro que pode enviar dados para fora dão a uma instrução injetada tanto uma porta de entrada quanto uma saída. Use essas combinações só em tarefas em que você acompanha cada etapa.

6. Quem publica e mantém?

  • Ele é publicado pelo próprio fornecedor da ferramenta ou por um desenvolvedor independente? O Kitbay só marca listagens publicadas pelo fornecedor na página de listagens oficiais quando há evidência.
  • O código-fonte é público, e o repositório corresponde ao pacote que você instala?
  • Quando foi a última atualização, e ele tem uma licença?
  • Os problemas de segurança relatados recebem resposta?

Código sem manutenção nem sempre é inseguro, mas não vai receber correções.

Use os controles de segurança do seu cliente

A maioria dos clientes oferece controles; use-os em vez de desativá-los.

Cliente Controle documentado pelo fornecedor
Claude Code Pede aprovação antes de usar servidores de um .mcp.json compartilhado; /mcp mostra status e logins
Claude Desktop Aprovação antes de ações de ferramentas; ativação e desativação de cada ferramenta nos conectores
ChatGPT Confirmação para ações de escrita por padrão; aviso de risco ao adicionar um servidor
Cursor Pede permissão antes de executar ferramentas MCP por padrão e mostra os argumentos
VS Code Pedido de confiança para servidores; sandbox opcional para servidores stdio no macOS e no Linux
Gemini CLI Pedidos de confirmação; a opção trust pula todos eles, então use-a só com servidores que você controla totalmente

Pedidos de aprovação só ajudam se você os lê. Confira o nome da ferramenta e os argumentos antes de aceitar, principalmente em qualquer coisa que envie, apague ou pague.

Um checklist rápido

Pergunta Resposta mais segura
Ele pode alterar dados? Somente leitura, ou ferramentas de escrita claramente identificadas
Onde ele roda? Operador conhecido, se for remoto; stdio, se for local
De que acesso ele precisa? Escopos restritos, OAuth sempre que possível
O que roda na instalação? Um pacote com versão fixada, do próprio repositório do projeto
Ele lê conteúdo externo? Só se necessário, sem combinações arriscadas de ferramentas
Quem o mantém? Um publicador identificado, com atividade recente e uma licença

O papel do Kitbay

O Kitbay registra fatos tirados das fontes de cada projeto, como se uma listagem pode alterar dados, se é local ou remota e se uma skill inclui scripts. Nós não testamos nem auditamos as listagens, então use essas informações como ponto de partida e revise o código-fonte você mesmo. Para entender o básico, veja o que é um servidor MCP, o que é uma skill do Claude e como conectar servidores a clientes de IA. Você também pode explorar as skills de agente com as mesmas informações.

Perguntas

Servidores MCP são seguros?
Um servidor MCP é um software que pode agir sobre os seus arquivos ou contas, então a segurança dele depende de quem o escreveu, do que ele consegue acessar e do que você permite. A especificação do MCP trata as ferramentas como execução de código arbitrário e espera que os clientes peçam permissão antes de usá-las.
O que é prompt injection no MCP?
É quando um texto que o agente lê, como uma página da web, um e-mail ou uma issue, contém instruções feitas para levar o agente a usar mal as suas ferramentas. O Claude Code e a OpenAI alertam que servidores que buscam conteúdo externo aumentam esse risco.
Um servidor MCP remoto é mais seguro que um local?
Não necessariamente. Um servidor local executa código na sua máquina com as suas permissões; um servidor remoto roda em outro lugar, mas age com a conta e os escopos que você concede a ele. Cada um exige um conjunto diferente de verificações.
Uma skill pode ser perigosa mesmo sem um servidor MCP?
Sim. Uma skill pode incluir scripts e pode instruir o agente a usar qualquer ferramenta que ele já tenha. A Anthropic recomenda auditar todos os arquivos de uma skill que venha de uma fonte em que você não confia totalmente.

Fontes

Mais guias