o problema
Um modelo de linguagem sozinho é um sistema fechado: ele responde com o que está no peso e no prompt. Tudo que interessa numa aplicação real — o arquivo no disco, a tabela no Postgres, o calendário, o design no Figma, o resultado de uma busca — mora fora dele. Ligar uma coisa na outra sempre foi possível, e foi feito milhares de vezes. O problema nunca foi a possibilidade; foi a forma.
Cada integração era artesanal e descartável. O conector do assistente A para o banco X não servia para o assistente B, e nem para o banco Y. Com n aplicações de ia e m sistemas externos, o ecossistema pagava n×m implementações, cada uma com sua autenticação, seu formato de resposta, seu jeito de descrever ao modelo o que aquela ferramenta faz. Quem tinha os dados dependia de a aplicação de ia decidir integrar; quem escrevia a aplicação de ia precisava reescrever tudo a cada fonte nova. O custo não estava na parte difícil, estava na parte repetida.
a ideia
Padronizar o encaixe. A Anthropic usa uma analogia própria e ela é honesta: MCP é uma porta USB-C para aplicações de ia. O cabo não sabe o que tem do outro lado, e é exatamente por isso que funciona com tudo.
O efeito prático é inverter quem paga a integração. Em vez de a aplicação de ia escrever um conector por fonte, quem é dono da fonte escreve um server MCP uma vez, e qualquer client que fale o protocolo passa a enxergar aquilo. O n×M vira n+m. É a mesma jogada de LSP para editores de código: o benefício não vem de nenhuma engenharia brilhante dentro do padrão, vem de o padrão existir e ser aberto.
como funciona
Dois papéis. O client é a aplicação de ia — Claude, ChatGPT, VS Code, Cursor. O server é o processo que expõe capacidade para esse client consumir. O protocolo é o contrato entre os dois, e é open source.
O que um server expõe se divide em três categorias, e confundi-las é o erro típico de quem começa:
- fontes de dados — arquivos locais, bancos. Contexto para o modelo ler.
- tools — busca, calculadora. Ações que o modelo pode invocar.
- workflows — prompts especializados. Procedimento embalado, não dado nem ação.
Existe ainda uma terceira coisa além de client e server: MCP Apps, aplicações interativas que rodam dentro do client. A documentação as trata como extensão, em trilha separada de “build servers” e “build clients”.
O que a página de introdução não diz: transporte, formato de mensagem, handshake, negociação de capacidade, modelo de permissão. Nada disso está aqui. Quem precisa desse nível vai para as páginas de arquitetura e de construção de server — e vai reparar que a rota da documentação é versionada por data, o que sinaliza uma especificação que ainda se move.
o que isso custou
O documento não declara limitações. Ele é material de adoção, não paper, e a ausência de uma seção de trade-off já é informação sobre o que se está lendo.
O padrão desloca o custo, não o elimina. Alguém ainda escreve o server, ainda decide o que expor, ainda descreve cada tool de um jeito que o modelo entenda — e essa descrição continua sendo prompt engineering disfarçado de API. O que MCP economiza é a multiplicação, não o trabalho.
E há o ponto que a página apresenta como benefício: o usuário final ganha agentes que “acessam dados do usuário e agem em seu nome quando necessário”. Essa frase descreve, palavra por palavra, a superfície de ataque. Um protocolo que facilita plugar qualquer server em qualquer client facilita igualmente plugar o server errado. Quem for operar isso em ambiente sério precisa procurar as garantias em outro lugar — elas não estão na introdução.
onde isso aparece hoje
A própria documentação lista o alcance: Claude e ChatGPT do lado dos assistentes, VS Code, Cursor e MCPJam do lado das ferramentas de desenvolvimento. Dois concorrentes diretos falando o mesmo protocolo é o sinal que importa num padrão — foi o que separou LSP de mais um formato de plugin.
Os exemplos citados dão a medida do que se espera dele: um agente que lê Google Calendar e Notion, o Claude Code gerando uma aplicação web a partir de um design no Figma, chatbots corporativos consultando vários bancos, um modelo modelando em Blender e mandando para a impressora 3D. Nenhum deles é uma capacidade nova do modelo. São todos a mesma capacidade antiga ganhando um cabo.