MCP Weather Server

Fornece informações meteorológicas em tempo real e previsões usando a API OpenWeatherMap.

Documentação

MCP Weather Server

Este é um servidor de informações meteorológicas baseado no Model Context Protocol (MCP), que usa a API OpenWeatherMap para fornecer informações meteorológicas em tempo real e previsão do tempo.

Características

  • Obter informações meteorológicas atuais da cidade
  • Obter previsão do tempo de 5 dias para a cidade
  • Suporte a consulta de nomes de cidades em chinês e inglês
  • Mecanismo completo de tratamento de erros
  • Exibição rica de informações meteorológicas (temperatura, umidade, velocidade do vento, etc.)

Requisitos do sistema

  • Python >= 3.10
  • Chave da API OpenWeatherMap

Instalação

  1. Certifique-se de ter instalado Python 3.10 ou superior
  2. Use o seguinte comando para instalar as dependências:
uv venv
uv pip install -r requirements.txt

Configuração

Configure sua chave da API OpenWeatherMap em mcp.json:

{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": ["--directory", ".", "run", "main.py"],
      "description": "天氣資訊伺服器 - 取得當前天氣和天氣預報",
      "env": {
        "OPENWEATHER_API_KEY": "your_api_key_here"
      }
    }
  }
}

Como usar

Executar como servidor MCP

python main.py

Usar o cliente

python client.py

Referência da API

Obter clima atual

get_current_weather(city: str) -> str
  • Parâmetros:
    • city: Nome da cidade (suporta chinês e inglês)
  • Retorno: Informações meteorológicas atuais formatadas

Obter previsão do tempo

get_weather_forecast(city: str, days: int = 5) -> str
  • Parâmetros:
    • city: Nome da cidade (suporta chinês e inglês)
    • days: Número de dias de previsão (1-5 dias, padrão 5 dias)
  • Retorno: Informações de previsão do tempo formatadas

Endpoints de recursos

  • weather://current/{city} - Obter o recurso de clima atual da cidade especificada
  • weather://forecast/{city} - Obter o recurso de previsão do tempo da cidade especificada
  • weather://api-status - Obter informações de status da API

Licença

MIT License

Contribuição

Bem-vindo a enviar problemas e solicitações de pull!

Agradecimentos

Implantação

Para obter informações detalhadas sobre implantação, consulte o Guia de implantação.

Métodos de implantação suportados:

  • Implantação direta (ambiente Python)
  • Implantação Docker
  • Implantação Docker Compose
  • Implantação como serviço do sistema (Linux)