Skip to main content

Taiwan CWA Weather API MCP Server

Project description

Taiwan Central Weather Administration MCP Server

This project provides a Model Context Protocol (MCP) server that interfaces with the Taiwan Central Weather Administration (CWA) API, allowing you to easily access weather data for Taiwan.

中文版

CWA API Resources

To use this project, you need to obtain an API key from the Central Weather Administration:

Features

  • Get 3-day weather forecast data for Taiwan counties and cities
  • Get 1-week weather forecast data for Taiwan counties and cities
  • Get historical rainfall data for the past three days
  • Automatic data cleaning and format conversion
  • Simplified API output with only essential information

System Requirements

  • Python 3.10+
  • MCP CLI 1.6.0+
  • uv package manager

Installation

  1. Ensure you have Python 3.10 or higher installed

  2. Install dependencies using uv:

# Install project dependencies using uv
uv pip install -e .

Usage

Starting the Server

Windows Users

# Execute in Command Prompt or PowerShell
uv --directory your_project_path run src/server.py your_API_key

Mac and Linux Users

# Execute in Terminal
uv --directory your_project_path run src/server.py your_API_key

Available MCP Tools

This server provides the following three main tools:

1. get_3_days_weather

Get 3-day weather forecast data for a specified county or city.

Parameters:

  • location_name (string): County or city name, must be a valid Taiwan county or city name

Valid county/city names include: Yilan County, Hualien County, Taitung County, Penghu County, Kinmen County, Lienchiang County, Taipei City, New Taipei City, Taoyuan City, Taichung City, Tainan City, Kaohsiung City, Keelung City, Hsinchu County, Hsinchu City, Miaoli County, Changhua County, Nantou County, Yunlin County, Chiayi County, Chiayi City, Pingtung County

2. get_1_week_weather

Get 1-week weather forecast data for a specified county or city.

Parameters:

  • location_name (string): County or city name, must be a valid Taiwan county or city name

3. get_historical_rainfall

Get rainfall data for the past three days.

No parameters required.

Data Format

Weather Forecast Data Format

[
  {
    "ElementName": "Temperature",
    "Time": [
      ["2025-04-11T00:00", "21"],
      ["2025-04-11T01:00", "21"],
      ...
    ]
  },
  {
    "ElementName": "Relative Humidity",
    "Time": [
      ["2025-04-11T00:00", "90"],
      ["2025-04-11T01:00", "89"],
      ...
    ]
  },
  ...
]

Rainfall Data Format

{
  "rain_labels": ["Now", "Past10Min", "Past1hr", "Past3hr", "Past6Hr", "Past12hr", "Past24hr", "Past2days", "Past3days"],
  "stations": [
    {
      "name": "Station Name",
      "time": "Observation Time",
      "loc": "County,Town",
      "geo": [latitude, longitude],
      "rain": [current, past10min, past1hr, past3hr, past6hr, past12hr, past24hr, past2days, past3days]
    },
    ...
  ]
}

Supported Weather Elements

3-Day Forecast

  • Temperature
  • Relative Humidity
  • Apparent Temperature
  • Comfort Index
  • Wind Direction
  • Wind Speed
  • 3-hour Precipitation Probability
  • Weather Phenomenon
  • Comprehensive Weather Description

1-Week Forecast

  • Average Temperature
  • Maximum Temperature
  • Minimum Temperature
  • Average Relative Humidity
  • Maximum Apparent Temperature
  • Minimum Apparent Temperature
  • Maximum Comfort Index
  • Minimum Comfort Index
  • Wind Speed
  • Wind Direction
  • 12-hour Precipitation Probability
  • UV Index
  • Weather Phenomenon
  • Comprehensive Weather Description

API Data Sources

This project uses the following open data APIs from the Taiwan Central Weather Administration:

  • 3-Day Forecast: Taiwan Township Weather Forecast - 3-Day Forecast (3-hour intervals)
  • 1-Week Forecast: Taiwan Township Weather Forecast - 1-Week Weather Forecast
  • Rainfall Data: Automatic Rainfall Station - Rainfall Observation Data

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c99d5e295af8e68ffc8a8d28c03d2def7385c100f7974101ce6804c4ce265d5e
MD5 9be80e22fdb9147cf8d29de129d6a2db
BLAKE2b-256 688588be1522f8beab444779381aed2c7c35c29399790edbd81a35ee7be0a203

See more details on using hashes here.

File details

Details for the file iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_stephen9412_roc_cwa_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bffb61a16d51558c097371df2b3afc5ebcd8c61445c53540f7881534a65fc3b7
MD5 ead4b19fec12db3b48f563dc670e05b3
BLAKE2b-256 e7e1aa0028b54dc29efa86d9b6e75b814fab34333d4353e3b9295b76f82e978a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page