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

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

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)

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/asgard-ai-platform/mcp-cwa'

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