Skip to content

About

exemplo simples de um mcp server com node

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

mcp-server-example

Servidor MCP (Model Context Protocol) que expõe ferramentas para consultar dados públicos de mercado da Binance, permitindo que assistentes de IA (como o Claude Desktop) consultem preços e variações de pares de criptomoedas em tempo real.

Funcionalidades

  • Comunicação via stdio, seguindo o protocolo MCP.
  • Consulta de preço atual e variação percentual em 24h de qualquer par listado na Binance (ex: BTCUSDT, ETHUSDT).
  • Escrito em TypeScript, com validação de entrada via Zod.

Requisitos

Instalação

git clone https://github.com/warubert/mcp-server-example.git
cd mcp-server-example
npm install

Build

O projeto é escrito em TypeScript e precisa ser compilado antes de ser executado:

npm run build

Isso gera os arquivos JavaScript em dist/.

Executando

npm run start

O servidor se comunica exclusivamente via stdio (entrada/saída padrão), então rodá-lo diretamente no terminal não produzirá interação visível — ele fica aguardando mensagens JSON-RPC de um cliente MCP.

Nota: logs de diagnóstico são escritos em stderr, nunca em stdout. Isso é essencial no transporte stdio, pois qualquer texto fora do protocolo JSON-RPC escrito em stdout quebra a comunicação com o cliente MCP.

Configurando no Claude Desktop

Adicione o servidor ao arquivo de configuração do Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "binance": {
      "command": "node",
      "args": ["/caminho/absoluto/para/mcp-server-example/dist/index.js"]
    }
  }
}

Reinicie o Claude Desktop após salvar a configuração.

Tools disponíveis

Tool Descrição Parâmetros
getCurrentPrice Retorna o preço atual de um par de moedas na Binance. symbol (string): par de negociação, ex: BTCUSDT
get24hPriceChangePercent Retorna a variação percentual do par nas últimas 24 horas. symbol (string): par de negociação, ex: BTCUSDT

Os dados são obtidos em tempo real através do endpoint público GET /api/v3/ticker/24hr da API da Binance.

Estrutura do projeto

src/
  BinanceService.ts   # Integração com a API pública da Binance
  BinanceTools.ts      # Definição das tools MCP e seus schemas de entrada
  MCPServer.ts         # Configuração do servidor MCP e registro dos handlers
  index.ts             # Ponto de entrada: inicializa o transporte stdio
tsconfig.json
package.json

Licença

ISC

About

exemplo simples de um mcp server com node

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages