Skip to main content
Glama

mcp-cwa

PyPI version Python License: MIT GitHub release Publish to PyPI MCP

MCP server for CWA (中央氣象署, Central Weather Administration) Open Data API. Provides 36 read-only tools across 7 weather data categories for AI agents such as Claude.

繁體中文

Part of the Asgard AI Platform open-source ecosystem.

Features

  • 36 tools covering all major CWA Open Data categories

  • 80 API endpoints accessible via intelligent tool grouping (e.g. 44 township forecasts → 2 tools with county parameter)

  • 22 county mapping for township-level weather forecasts

  • All tools are read-only with readOnlyHint=True annotations

Related MCP server: roc-cwa-mcp

Categories

Category

Tools

Description

Forecast (預報)

9

36-hour, 3-day, 1-week forecasts; township forecasts; tidal; cold injury; temperature diff

Observation (觀測)

7

Weather stations, rainfall, 10-min observations, UV index, ozone, marine

Earthquake (地震海嘯)

5

Tsunami info, significant/local earthquake reports (zh/en)

Climate (氣候)

5

30-day observations, daily rainfall, monthly average, station info

Warning (天氣警特報)

7

Weather warnings by county, heavy rain, cold, heat, typhoon, tropical cyclone

Numerical (數值預報)

1

Heat injury index

Astronomy (天文)

2

Sunrise/sunset, moonrise/moonset

Quick Start

Install from PyPI

pip install mcp-cwa

Or clone and install locally

git clone https://github.com/asgard-ai-platform/mcp-cwa.git
cd mcp-cwa
uv venv && source .venv/bin/activate
uv pip install -e .

Claude Desktop / Claude Code

Add to your MCP configuration:

{
  "mcpServers": {
    "mcp-cwa": {
      "command": "python3",
      "args": ["mcp_server.py"],
      "cwd": "/path/to/mcp-cwa",
      "env": {
        "CWA_API_KEY": "CWA-your-authorization-code"
      }
    }
  }
}

Get API Key

  1. Register at CWA Open Data Platform

  2. After registration, obtain your authorization code from the member page

Environment Variables

Variable

Required

Description

CWA_API_KEY

Yes

CWA Open Data API authorization code

Example Usage

User: 臺北市現在天氣如何?
Agent: [calls get_weather_observation(county_name="臺北市")]

User: 最近有地震嗎?
Agent: [calls get_significant_earthquake(limit=3)]

User: 明天高雄日出時間?
Agent: [calls get_sunrise_sunset(county_name="高雄市", date="2025-04-16")]

Development

# Install dependencies
uv venv && source .venv/bin/activate
uv pip install -e .

# Run E2E tests (requires real API key)
CWA_API_KEY=CWA-xxx python3 tests/test_all_tools.py

API Reference

All tools query the CWA Open Data API at https://opendata.cwa.gov.tw/api/v1/rest/datastore/{dataset_id}.

See _spec/api-tools-list.md for the complete endpoint inventory.

License

MIT — see LICENSE

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Provides access to Hong Kong Observatory weather data APIs, enabling retrieval of forecasts, earthquake info, tide data, and more via natural language.
    20
    2
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables to access Taiwan Central Weather Administration data, including 3-day and 1-week weather forecasts for counties/cities and historical rainfall data.
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides weather reports for Zhongshan District, Taipei, Taiwan and other Taiwanese cities using the Open-Meteo API, enabling AI assistants to answer weather queries in natural language.
    MIT