Skip to main content
Glama
whathebronte

sg-weather-mcp

by whathebronte

SG Weather MCP (rain alerts for central Singapore)

A small MCP server that wraps NEA's 2-hour Weather Forecast API and filters it to the central-Singapore areas relevant to someone living near Jalan Kukoh / Chinatown who is usually around the city. Built for use with Poke.com automations over streamable HTTP.

Data source: data.gov.sg dataset d_3f9e064e25005b0e42969944ccaf2e7a (NEA / Meteorological Service Singapore, 2-hour forecast).

Tools

check_rain_central

The main tool for a rain-alert automation. Fetches the live 2-hour forecast, filters to your central areas, and reports whether any show rain, showers, or thundery weather.

Key fields in the response:

  • rain_expected (bool) — true if ANY checked area is wet

  • wet_areas — list of {area, forecast} currently wet

  • all_areas — every checked area with its forecast

  • matched_areas / unmatched_areas — which requested names exist in the feed

  • valid_period — forecast validity window

  • retrieved_at — UTC timestamp

Optional inputs: areas (override the default list) and response_format (markdown or json).

Default central areas: City, Chinatown, Bukit Merah, Queenstown, Newton, Orchard, Bukit Timah, Kallang, Marina Bay, Marina South, Tanjong Pagar, Bugis. (Any name not present in the live NEA feed is ignored and reported back under unmatched_areas, so the list is safe to tune.)

list_all_areas

Lists every NEA area (~47) with its current forecast. Useful for discovering exact area names or a Singapore-wide view.

Related MCP server: sg-data-mcp

Deploy to Render

  1. Push this folder to a GitHub repo.

  2. In Render: New > Web Service > connect the repo (or use the included render.yaml via New > Blueprint).

  3. Render auto-detects Python. Build: pip install -r requirements.txt. Start: python server.py. No environment variables needed — Render's PORT is picked up automatically.

  4. After deploy, your MCP endpoint is: https://<your-service>.onrender.com/mcp

Connect in Poke.com

  1. In Poke, add a custom MCP connection pointing at the /mcp URL above.

  2. Create an automation on a schedule (e.g. every 30 minutes) that calls check_rain_central.

  3. In the automation logic, message yourself when rain_expected is true, including wet_areas so you know which spots.

Local test

python -m venv .venv && . .venv/bin/activate
pip install -r requirements.txt
PORT=8123 python server.py
# then POST an MCP initialize to http://localhost:8123/mcp

Note: the NEA API is only reachable from an environment with open outbound internet (like Render), not from restricted sandboxes.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/whathebronte/sg-weather-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server