IPMA MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@IPMA MCP Server what's the weather forecast for Lisbon this weekend?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
IPMA MCP Server
Um servidor MCP (Model Context Protocol) que fornece acesso aos dados meteorológicos do IPMA (Instituto Português do Mar e da Atmosfera) através de linguagem natural.
🌟 Funcionalidades
Previsão Meteorológica: Obter previsões para qualquer cidade de Portugal
Avisos Meteorológicos: Consultar avisos ativos em tempo real
Dados Sísmicos: Aceder a informações sobre terramotos recentes
Estações Meteorológicas: Observações em tempo real das estações do IPMA
Índice UV: Previsões do índice ultravioleta
Listagem de Locais: Ver todas as cidades disponíveis
Related MCP server: IPMA Weather MCP Server
🚀 Instalação e Configuração
Instalando via Smithery
Para instalar ipma-mcp-server para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @DiogoAzevedo03/ipma-mcp-server --client claude1. Clonar e Instalar Dependências
# Criar diretório do projeto
mkdir ipma-mcp-server
cd ipma-mcp-server
# Copiar os arquivos (index.ts, package.json, tsconfig.json)
# Criar estrutura de diretórios
mkdir src
# Mover index.ts para src/index.ts
# Instalar dependências
npm install2. Compilar o Projeto
npm run build3. Configurar no Claude Desktop
Editar o arquivo de configuração do Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
Adicionar a configuração:
{
"mcpServers": {
"ipma-weather": {
"command": "node",
"args": ["/caminho/completo/para/ipma-mcp-server/build/index.js"],
"env": {}
}
}
}4. Reiniciar o Claude Desktop
Após salvar a configuração, reinicie o Claude Desktop.
🛠️ Ferramentas Disponíveis
get_weather_forecast
Obter previsão meteorológica para uma cidade específica.
Parâmetros:
city(obrigatório): Nome da cidade (ex: "Lisboa", "Porto", "Coimbra")days(opcional): Número de dias de previsão (padrão: 5, máximo: 10)
Exemplo de uso:
Qual é a previsão do tempo para Lisboa nos próximos 3 dias?get_weather_warnings
Obter avisos meteorológicos ativos em Portugal.
Exemplo de uso:
Há algum aviso meteorológico ativo?get_seismic_data
Obter dados sísmicos recentes.
Parâmetros:
area(opcional): "continent", "azores", "madeira", ou "all" (padrão: "all")
Exemplo de uso:
Mostra-me os terramotos recentes nos Açoresget_locations
Listar todas as cidades/locais disponíveis para previsão.
Exemplo de uso:
Quais cidades posso consultar a previsão do tempo?get_weather_stations
Obter dados de observação das estações meteorológicas.
Exemplo de uso:
Quais são as condições meteorológicas atuais nas estações?get_uv_forecast
Obter previsão do índice UV.
Exemplo de uso:
Qual é a previsão do índice UV para hoje?📊 Exemplos de Uso
Após configurar o servidor, pode fazer perguntas como:
"Qual é a previsão do tempo para o Porto esta semana?"
"Há avisos de chuva forte para hoje?"
"Mostra-me os terramotos recentes em Portugal"
"Qual é o índice UV previsto para Lisboa?"
"Que temperatura está a fazer nas estações meteorológicas?"
🔧 Desenvolvimento
Estrutura do Projeto
ipma-mcp-server/
├── src/
│ └── index.ts # Código principal do servidor
├── build/ # Código compilado
├── package.json # Dependências e scripts
├── tsconfig.json # Configuração TypeScript
└── README.md # Este arquivoScripts Disponíveis
npm run build: Compilar TypeScriptnpm run dev: Modo de desenvolvimento com watchnpm start: Executar o servidor compilado
Adicionar Novas Funcionalidades
O servidor está estruturado de forma modular. Para adicionar nova funcionalidade:
Adicionar nova ferramenta em
setupToolHandlers()Implementar o método correspondente
Definir interfaces TypeScript se necessário
Recompilar e testar
📡 API IPMA
Este servidor usa a API pública do IPMA. Principais endpoints utilizados:
Previsões meteorológicas por cidade
Avisos meteorológicos
Dados sísmicos
Observações das estações
Índice UV
Lista de locais disponíveis
⚠️ Considerações
A API do IPMA é gratuita mas requer uso responsável
Dados são atualizados pelo IPMA duas vezes por dia (00UTC e 12UTC)
Todas as horas são em UTC
Para uso comercial, contactar o IPMA em webmaster@ipma.pt
📝 Licença
MIT License
🤝 Contribuição
Contribuições são bem-vindas! Por favor:
Fork o projeto
Crie uma branch para sua funcionalidade
Commit suas mudanças
Push para a branch
Abra um Pull Request
📞 Suporte
Se encontrar problemas:
Verifique se todos os arquivos estão no local correto
Confirme que as dependências foram instaladas
Verifique o arquivo de configuração do Claude Desktop
Consulte os logs de erro do Claude Desktop
🔗 Links Úteis
Available Tools
6 toolsget_locationsB
Listar todas as cidades/locais disponíveis para previsão
Inputs: no named parameters.
get_seismic_dataC
Obter dados sísmicos recentes
Inputs: area.
get_uv_forecastC
Obter previsão do índice UV
Inputs: no named parameters.
get_weather_forecastC
Obter previsão meteorológica para uma cidade específica em Portugal
Inputs: city (required), days.
get_weather_stationsC
Obter dados de observação das estações meteorológicas
Inputs: no named parameters.
get_weather_warningsB
Obter avisos meteorológicos ativos em Portugal
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: get_locations lists available cities, get_seismic_data provides seismic data, get_uv_forecast gives UV forecasts, get_weather_forecast offers weather forecasts, get_weather_stations shows station observations, and get_weather_warnings lists active warnings. There is no overlap or ambiguity in their functions.
All tools follow a consistent verb_noun pattern with 'get_' as the prefix, followed by a descriptive noun (e.g., get_locations, get_seismic_data). This uniformity makes the tool set predictable and easy to understand.
With 6 tools, the server is well-scoped for weather and seismic forecasting in Portugal. Each tool serves a specific, necessary function without redundancy, making the count appropriate for the domain.
The tool set covers key aspects like forecasts, warnings, seismic data, and station observations, but lacks update or delete operations, which are not essential for this read-only data domain. Minor gaps, such as historical data queries, exist but do not hinder core functionality.
Maintenance
Related MCP Connectors
IPMA Portugal MCP — weather, UV, sea state, and earthquakes from the Instituto Português do Mar e…
Portugal public data: weather, INE, Parliament, contracts, SNS, fuel, transit, power cuts.
Global weather via Open-Meteo: forecast, historical, marine, air quality, geocoding, elevation.
Weather, geocoding, FX rates, holidays, time zones, countries, earthquakes, sun and moon.
Related MCP Servers
- AlicenseBqualityCmaintenanceProvides access to Portuguese meteorological data from IPMA (Instituto Português do Mar e da Atmosfera), including weather forecasts, warnings, UV index, seismic data, and weather station observations for cities in Portugal.6MIT
- AlicenseAqualityDmaintenanceProvides comprehensive access to Portuguese weather data from IPMA, including forecasts, warnings, sea state, fire risk, UV index, seismic activity, and weather station observations for all Portuguese cities and islands.10MIT
- AlicenseNot gradedqualityCmaintenanceProvides weather, UV, sea state, and earthquake data from IPMA Portugal through an MCP gateway, enabling natural language queries for Portuguese meteorological and seismic information.119 npmMIT
- AlicenseAqualityDmaintenanceProvides AI assistants with live tools for Portuguese public data including fuel prices, weather, postal codes, statistics, and open data.8MIT