sample-mcp-server

devgrunge/sample-mcp-server

3.2

If you are the rightful owner of sample-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

This project is a minimalist MCP server with an HTTP proxy, exposing tools and resources for integration with MCP clients via HTTP.

Tools
1
Resources
0
Prompts
0

MCP Server Weather API

Este projeto é um servidor MCP minimalista, com proxy HTTP, que expõe ferramentas (tools) e recursos (resources) para integração com clientes MCP via HTTP.

Visão Geral

  • Backend MCP: Implementado com @modelcontextprotocol/sdk (Node.js/TypeScript)
  • Proxy HTTP: Permite que qualquer client HTTP consuma as ferramentas e recursos do MCP server, mesmo que não implemente o protocolo MCP puro.
  • Endpoints compatíveis: /mcp/tools/list, /mcp/tools/call, /mcp/resources/list, /mcp/health

Como rodar

1. Instale as dependências

npm install

2. Inicie o proxy HTTP (que já inicia o MCP server via stdio)

npx tsx http-proxy.ts

O proxy ficará disponível em http://localhost:3333.

Endpoints HTTP disponíveis

Health check

  • GET /mcp/health
  • Resposta: { "ok": true }

Listar ferramentas (tools)

  • GET /mcp/tools/list
  • Resposta:
{
  "tools": [
    {
      "name": "sum",
      "title": "Soma",
      "description": "Soma números: { numbers: number[] }",
      "inputSchema": { ... }
    },
    ...
  ]
}

Executar ferramenta (tool)

  • POST /mcp/tools/call
  • Body:
{
  "name": "sum",
  "arguments": { "numbers": [1, 2, 3] }
}
  • Resposta:
{
  "result": {
    "content": [
      { "type": "text", "text": "6" }
    ]
  }
}

Listar recursos (resources)

  • GET /mcp/resources/list
  • Resposta:
{
  "resources": [
    {
      "uri": "res://welcome",
      "name": "welcome",
      "title": "Mensagem de boas-vindas",
      "description": "Mensagem de boas-vindas",
      "mimeType": "text/plain"
    }
  ]
}

Exemplos de uso via curl

# Health check
curl http://localhost:3333/mcp/health

# Listar tools
curl http://localhost:3333/mcp/tools/list

# Executar tool 'sum'
curl -X POST http://localhost:3333/mcp/tools/call -H 'Content-Type: application/json' -d '{"name":"sum","arguments":{"numbers":[1,2,3]}}'

# Listar resources
curl http://localhost:3333/mcp/resources/list

Observações

  • O proxy HTTP faz a ponte entre clientes HTTP e o MCP server rodando via stdio.
  • Para adicionar novas ferramentas ou recursos, edite o arquivo src/server.ts.
  • O projeto é compatível com qualquer client HTTP que siga o formato dos endpoints acima.

Dúvidas ou sugestões? Abra uma issue ou entre em contato!