Sumário
- O quê é
- Para que serve?
- Como funciona?
- Componentes do MCP Server
- Formatos de Comunicação
- Exemplos de aplicação
- Exemplo: Análise de Texto
- Considerações
- Referências
O quê é
O Model Context Protocol (MCP) é um protocolo proposto pela Anthropic visando padronizar como sistemas podem prover contexto para modelos de linguagem (LLMs). Ele facilita a conexão desses modelos com diferentes fontes de dados e ferramentas externas, ampliando significativamente sua utilidade em aplicações reais.
Para que serve?
Ajuda a criar agentes e fluxos de trabalho complexos com base em LLMs. Os LLMs frequentemente precisam se integrar a dados e ferramentas.
O MCP permite a criação de agentes inteligentes e fluxos de trabalho complexos baseados em LLMs. Como os modelos muitas vezes precisam se integrar a dados empresariais ou executar ações específicas, o MCP define uma forma clara e padronizada de fazer essa integração.
Com ele, conseguimos:
- Fornecer contexto relevante ao modelo (como dados de sistemas internos);
- Integrar ferramentas controladas pelo modelo;
- Orquestrar fluxos entre cliente, servidor, ferramentas e modelos.
Como funciona?
A arquitetura básica envolve três componentes principais:
Client (Hospedeiro do MCP)
Responsável por intermediar a comunicação entre o usuário e o servidor MCP.
Servidor MCP
Recebe solicitações do client, interage com os recursos e envia prompts para a LLM.
Resources e Tools
- Resources: fontes de dados (arquivos, banco de dados, APIs, imagens, etc.) controladas pelo client.
- Tools: ferramentas que realizam ações específicas e são invocadas diretamente pela LLM quando necessário.
Componentes do MCP Server
Tools
- Executam ações sob comando da LLM (por exemplo: disparar notificações, fazer cálculos, chamar APIs);
- O modelo decide quando e como usar;
- Suporte a autodiscovery (descoberta automática de ferramentas disponíveis).
Resources
- Servidores de dados acessados pelo client, que decide o que fornecer como contexto;
- Exemplos:
- screen://host/image01
- file://caminho/file.pdf
- postgres://database/customer/schema
Prompts
- Templates de prompt que o servidor disponibiliza para o client;
- São controlados pelo usuário, que escolhe qual prompt utilizar;
- Podem ser dinâmicos, com parâmetros e dados de recursos externos.
Formatos de Comunicação
Stdio
- Comunicação local por
stdin
/stdout
; - O servidor MCP é executado como subprocesso do client;
- Utiliza mensagens no formato JSON-RPC;
- Simples e comum em ambientes de desenvolvimento.
Atenção: é essencial garantir a segurança e validade dos servidores MCP com os quais nos comunicamos.
SSE (Server-Sent Events)
- Comunicação remota baseada em eventos via HTTP;
- O servidor envia atualizações contínuas ao client;
- Comum em experiências interativas, como o Copilot Studio;
- Mais complexa de implementar (exige atenção à segurança, autenticação, rate limiting, etc.).
Exemplos de aplicação
As possibilidades são inúmeras. Veja alguns cenários:
Financeiro
- Coleta de relatórios e balanços;
- Faturamento automatizado;
- Notificações com base em regras.
Desenvolvimento
- Integração com repositórios Git;
- Verificação de pull requests e issues;
- Abertura automática de PRs.
E-commerce
- Detecção de produtos sem estoque;
- Listagem de mais vendidos;
- Notificações de faturamento ou entrega.
Nota: A aplicabilidade dependerá do propósito desejado e da criatividade na integração com os recursos existentes.
Exemplo: Análise de Texto
- O usuário digita um texto em uma interface (ex: e-mail);
- Ao parar de digitar por 2 segundos, o client coleta o texto;
- O client envia a solicitação ao servidor MCP;
- O servidor MCP envia o prompt com o texto para a LLM;
- A resposta com sugestões e correções é retornada ao servidor;
- O client exibe o resultado ao usuário.
Esse tipo de fluxo é simples, mas demonstra o poder da estrutura.
Considerações
Este post teve como objetivo apresentar os conceitos iniciais do MCP de forma mais ampla, sem entrar no código. Para quem deseja se aprofundar, recomendo o excelente artigo do Elton Minetto Criando um MCP Server usando Go.
O MCP ainda é algo novo e está em maturação, mas acredito fortemente que se tornará um componente essencial na construção de agentes mais inteligentes, conectando usuários e produtos de forma fluida e estratégica.
Se você está pesquisando ou testando o MCP em algum projeto pessoal, ou corporativo, compartilhe sua experiência nos comentários. Vamos trocar figurinhas!