
Como construir um servidor MCP com transporte HTTP
O problema
A maioria dos servidores MCP (Modelo de Protocolo de Contexto) suporta apenas transporte stdio — você os executa como um subprocesso:
{
"mcpServers": {
"myserver": {
"command": "npx",
"args": ["-y", "my-mcp-server"]
}
}
}
Mas e se você quiser expor seu servidor MCP via HTTP? Para que:
- Clientes remotos possam se conectar sem instalar nada localmente
- Múltiplos agentes possam compartilhar a mesma instância do servidor
- Você possa implantá-lo no Vercel/Cloudflare/AWS Lambda
A especificação MCP suporta transporte HTTP (SSE + JSON-RPC), mas quase não há documentação sobre como implementá-lo.
Este post é o guia que eu gostaria de ter tido ao construir o endpoint MCP da MarketNow.
A arquitetura
Cliente (Claude Desktop, Cursor, etc.)
│
├── POST /api/mcp → requisição/resposta JSON-RPC 2.0
│
└── GET /api/mcp → fluxo SSE (Eventos Enviados pelo Servidor)
-
POST lida com
initialize,tools/list,tools/call(JSON-RPC 2.0) - GET abre um fluxo SSE para mensagens do servidor para o cliente
O código (função serverless do Vercel)
// api/mcp.js — função serverless do Vercel
export default async function handler(req, res) {
// CORS
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
if (req.method === 'OPTIONS') {
res.status(200).end();
return;
}
// GET → fluxo SSE
if (req.method === 'GET') {
res.writeHead(200, {
'Content-Type': 'text/event-stream',
'Cache-Control': 'no-cache',
Connection: 'keep-alive',
});
res.write(`data: ${JSON.stringify({ type: 'connected' })}\n\n`);
return;
}
// POST → JSON-RPC
if (req.method === 'POST') {
const { jsonrpc, id, method, params } = req.body;
let result;
switch (method) {
case 'initialize':
result = {
protocolVersion: '2024-11-05',
capabilities: { tools: {} },
serverInfo: { name: 'my-serverA implementação de servidores MCP com suporte a HTTP pode facilitar a integração de agentes de IA em empresas brasileiras. Isso permite que diferentes aplicações acessem um único servidor, aumentando a eficiência e reduzindo a complexidade de instalação. A adoção desse protocolo pode impulsionar a automação e a colaboração entre sistemas.
Noticias relacionadas

A Lacuna de Observabilidade: Gerenciando Enxames Multi-Agente com MCP
O artigo discute a complexidade dos sistemas multi-agente e como o MCP pode melhorar a visibilidade e o gerenciamento desses sistemas, transformando a interação com agentes em uma experiência mais auditável e controlável.

Como Reduzir o Uso de Tokens MCP: Projetando Esquemas de Ferramentas Eficientes em Contexto
Este artigo aborda como projetar ferramentas MCP compactas para reduzir o uso de tokens, mantendo o foco no raciocínio do agente e evitando erros de seleção.

30 CVEs registrados contra servidores MCP em 60 dias — veja como estamos corrigindo isso
Um thread no Reddit destacou 30 CVEs registrados contra servidores MCP em 60 dias, evidenciando a falta de uma base de segurança no ecossistema MCP. O MarketNow é um marketplace que realiza auditorias de segurança em servidores MCP antes de listá-los.
Gostou do conteudo?
Receba toda semana as principais novidades sobre WebMCP.