MCP não resolve segurança: protocolo não é arquitetura de agentes
MCP ganhou uma comparação conveniente: o USB-C dos agentes. A analogia ajuda a explicar o valor do protocolo, porque ele reduz o atrito para conectar LLMs a ferramentas, dados e sistemas internos. Mas ela também cria uma confusão perigosa. MCP Model Context Protocol segurança arquitetura não é uma coisa só. Protocolo resolve integração. Segurança em produção continua sendo desenho de sistema.
O que o MCP padroniza
O MCP define como clientes, servidores e ferramentas conversam. Ele descreve tools, resources e prompts, além do formato de descoberta e chamada. Isso tem valor prático: menos bridges customizadas, menos cola improvisada, menos integração feita uma vez para cada ferramenta.
Só que padronizar chamada não decide política. A própria especificação trata autorização como algo que depende da implementação e do transporte usado. Em HTTP existe um caminho baseado em OAuth. Em STDIO, comum em servidores locais, o modelo operacional é outro. Em ambos os casos, continuam fora do protocolo as perguntas mais difíceis: quem pode chamar qual ferramenta, com qual escopo, em nome de qual usuário, sobre qual dado e com qual consequência.
Esse ponto não diminui o MCP. Ele só coloca o protocolo na camada correta.
Onde a segurança ainda quebra
O primeiro vetor é tool poisoning. Quando um agente se conecta a um servidor MCP, ele recebe nomes, descrições e schemas das ferramentas. Esse texto entra no contexto do modelo. Se uma descrição for maliciosa ou manipulada, ela pode tentar induzir o agente a ignorar regras, chamar outra ferramenta ou exfiltrar dados. A OWASP descreve esse problema como prompt injection indireto no contexto do MCP.
Existem variações relevantes. No rug pull, a ferramenta parece segura quando é aprovada, mas a descrição muda depois. No tool shadowing, ferramentas com nomes parecidos confundem seleção e intenção. No confused deputy, um componente age com privilégio maior do que o usuário realmente deveria ter.
O segundo vetor é supply chain. Servidor MCP é dependência de software. Pode vir de npm, PyPI, Docker, repositório público ou URL remota. O registry oficial hospeda metadata e aponta para pacotes, mas não substitui revisão de segurança. Se a organização não instala uma biblioteca aleatória sem revisão, também não deveria conectar um servidor MCP aleatório a dados internos.
O terceiro ponto é execução local. Disclosures recentes sobre servidores STDIO reforçam uma realidade simples: configuração local, processo filho, permissões de sistema e origem do pacote precisam entrar no threat model. Não basta olhar para o JSON da ferramenta.
Arquitetura mínima para agentes com MCP
O primeiro princípio é tratar resultado de ferramenta como input não confiável. O modelo pode ler, resumir e reagir ao que a ferramenta devolve, mas o sistema host precisa validar o que será executado depois.
O segundo é separar privilégio por servidor e por ferramenta. Uma ferramenta read-only não deveria compartilhar credencial com outra que escreve em banco transacional. Consulta e escrita são escopos diferentes. Ação irreversível precisa de confirmação humana com contexto suficiente para decisão, não um popup sem informação.
Também é preciso ter allowlist, pinning de versão e processo de remoção para servidores MCP. Essa é a parte menos glamourosa da arquitetura, mas é onde muita exposição nasce.
Por fim, logs precisam permitir investigação. Prompt, tool call, parâmetros, resultado e ação executada devem ser correlacionáveis. Sem esse rastro, o postmortem vira tentativa de reconstrução.
O protocolo não define o blast radius
Uma equipe pequena usando tools internas somente leitura tem um risco. Uma plataforma com dados regulados, escrita em sistemas transacionais e execução local de servidores tem outro. O MCP pode ser o mesmo nos dois casos. O blast radius não é.
É por isso que a pergunta certa não é “MCP é seguro?”. A pergunta é: qual arquitetura você colocou ao redor dele?
Referências
- Model Context Protocol Specification 2025-11-25 - Anthropic / MCP
- MCP Authorization 2025-11-25 - MCP Specification
- MCP Security Best Practices - MCP Docs
- MCP Registry: Terms of Service
- OWASP MCP Tool Poisoning
- OWASP MCP Security Cheat Sheet
- Understanding prompt injections - OpenAI Safety
- Model Context Protocol Threat Modeling - arXiv:2603.22489
- ClawGuard: Runtime Security Framework for Tool-Augmented LLM Agents - arXiv:2604.11790
- The Mother of All AI Supply Chains - OX Security
- MCP by Design: RCE Across the AI Agent Ecosystem - Cloud Security Alliance