MCP Weather Server Demo

Obtém dados meteorológicos para qualquer cidade usando a API Open-Meteo.

Documentação

MCP Weather Server Demo

Este projeto é um servidor MCP (Model Context Protocol) de exemplo que expõe uma ferramenta para buscar o clima de qualquer cidade usando a API Open-Meteo.

Recursos

  • Servidor MCP básico usando @modelcontextprotocol/sdk e zod para validação.
  • Ferramenta fetch-weather que recebe o nome de uma cidade e retorna informações meteorológicas atuais.
  • Usa APIs públicas para geocodificação e dados meteorológicos.

Instalação

  1. Clone este repositório:
    git clone https://github.com/your-username/your-repo.git
    cd your-repo
    
  2. Instale as dependências:
    npm install
    

Uso

Execute o servidor MCP:

npx tsx main.ts

Isso iniciará o servidor e você poderá conectar-se a partir de qualquer cliente MCP compatível.

Nota:

Você também pode executar isso para usar o inspetor no navegador da web.

npx -y @modelcontextprotocol/inspector npx -y tsx main.ts

1.- Execute o comando. 2.- Acesse o link fornecido no console. 3.- Configure o ambiente desta forma: - Tipo de Transporte: STDIO - Comando: npx - Argumentos: -y tsx main.ts - Token de Sessão do Proxy: o token gerado ao iniciar o servidor. (MCP_PROXY_AUTH_TOKEN=YOUR_TOKEN) 4.- Conectar -> Listar Ferramentas -> Selecione seu MCP -> Comece a usar.

Estrutura principal

  • main.ts: Código-fonte do servidor e da ferramenta de clima.
  • package.json: Dependências e scripts do projeto.

BÔNUS

Anexei um arquivo json (com um nome diferente), que é usado no Claude, um Assistente de IA construído pela Anthropic. Neste arquivo, podemos usar a IA para fazer coisas incríveis, como as seguintes e muitas outras:

1.- Obtenha acesso a pastas e interaja com seu computador. 📁

https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem

"mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Desktop", "/path/to/other/allowed/dir" ] } }

Exemplos de tarefas (via prompts): Dê permissão para acessar a Área de Trabalho

  • Dê instruções para mover qualquer arquivo .mp4 para uma única pasta.
  • Peça para remover qualquer arquivo maior que 20 MB.
  • Crie um script para um vídeo. etc.

2.- Obtenha acesso a um banco de dados e comece a solicitar tarefas simples ou complexas. 🤖

https://github.com/modelcontextprotocol/servers-archived/tree/main/src/postgres

"postgres": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-postgres", "postgresql://DB_USER:DB_PASS@localhost:5432/DB_NAME" ] }

Exemplos de tarefas (via prompts):

  • Truncar uma única tabela
  • Obter todos os dados de um único usuário e exportá-los para um arquivo csv.
  • Obter toda a atividade de um usuário que tenha privilégios de root em diferentes tabelas. etc.

Você pode instalar o Claude Agent e configurar o arquivo json assim para testá-los. [Apenas certifique-se de estar usando a configuração do Claude em ambos os casos.]

NOTA

o elemento 'weather' no arquivo de configuração é o MCP que acabamos de criar. Sim, você também pode usá-lo no Claude.

Licença

Este projeto está licenciado sob a Licença MIT. Consulte o arquivo LICENSE para obter detalhes.


Projeto de exemplo para aprender a criar ferramentas MCP e consumir APIs públicas.