O que é um servidor MCP?

O que é um servidor MCP? Tools, resources e prompts explicados | We.Inc

Um servidor MCP é um programa que oferece tools, resources e prompts a aplicações de IA pelo Model Context Protocol. Veja as mensagens JSON reais, passo a passo.

O que é um servidor MCP?

Um servidor MCP é um programa que dá às aplicações de IA algo com que trabalhar pelo Model Context Protocol: tools que elas podem chamar, resources que podem ler e prompts que os usuários podem escolher. A aplicação se conecta por um cliente MCP, e os dois lados trocam mensagens JSON-RPC 2.0 via stdio, localmente, ou via Streamable HTTP, remotamente.

As três coisas que um servidor pode oferecer

Avance por uma troca real abaixo. Cada passo mostra o JSON que um cliente envia e o que o servidor responde, usando os formatos de mensagem da especificação atual (versão 2026-07-28). Ler as mensagens cruas é o jeito mais rápido de parar de ver um servidor como mágica.

Perguntas frequentes

Um servidor MCP é a mesma coisa que uma API?

Geralmente ele encapsula uma. Um servidor típico chama uma API ou um banco de dados existente e descreve essas operações de forma padronizada, para que qualquer aplicação compatível com MCP consiga descobri-las e chamá-las sem código de integração personalizado.

Um servidor MCP roda no meu computador ou na nuvem?

Nos dois. Um servidor local é iniciado pela aplicação e se comunica pela entrada e saída padrão. Um servidor remoto roda em outro lugar e é acessado via Streamable HTTP, onde pode atender muitos clientes.

Um servidor MCP contém um modelo de linguagem?

Não. O servidor só oferece tools, resources e prompts. A aplicação host é dona do modelo e decide o que enviar a ele. A especificação marca o sampling solicitado pelo servidor como obsoleto a partir da versão 2026-07-28.

O que mudou na versão 2026-07-28 do protocolo?

O protocolo passou a ser stateless: toda requisição leva a versão do protocolo e as capabilities no campo _meta, e os servidores respondem a uma requisição server/discover obrigatória. As notificações de mudança agora são opcionais, por meio de um stream subscriptions/listen.

Quem aprova uma chamada de tool?

O host. A documentação do protocolo sugere diálogos de aprovação, configurações de permissão e registros de atividade, mas aplicá-los é tarefa da aplicação, então um servidor nunca deve supor que uma pessoa conferiu a chamada.

Host, cliente e servidor

Duas camadas: dados e transporte

O que o cliente pode oferecer de volta

Stdio ou Streamable HTTP?

Como escolher um transporte

Como é um resource template

Um resource template com um parâmetro na URI

Os clientes encontram templates com resources/templates/list, preenchem as chaves e leem o resultado com resources/read.

1. Descoberta

server/discover é opcional para o cliente, mas todo servidor precisa responder a ele. O objeto capabilities diz quais primitivas existem; listChanged significa que o servidor pode notificar sobre mudanças nas tools.

2. Listar tools

Cada tool tem um name, uma description e um inputSchema escrito em JSON Schema. O host passa isso ao modelo para que ele saiba o que pode chamar.

3. Chamar uma tool

O nome precisa corresponder exatamente à tool listada e os argumentos precisam se encaixar no inputSchema dela. Os resultados voltam como um array content, aqui com um único item de texto.

4. Notificação de mudança

Notificações não têm id, então ninguém responde a elas. O cliente só recebe esta porque abriu um stream subscriptions/listen pedindo toolsListChanged.

Acompanhe uma troca MCP

Escolha um passo

O cliente envia

O servidor responde

Copiar requisição

Copiar resposta

Passo {n} de {v}

Comece grátis · Sem cartão de crédito

Relacionados: Guias

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site