关于 cwa-mcp-server
cwa-mcp-server 将台湾中央气象署开放数据提供给 Agent,用于查询天气与灾害信息。它还提供县市资源和生成避难建议的提示词。
主要功能
- 01查询未来 36 小时天气预报
- 02查看近期显著地震报告
- 03查询生效中的天气特报
- 04查询近期颱风警报
- 05提供县市名称资源与避难提示词
适用场景
- 01查询出行地区的天气预报
- 02了解地震与天气警报
- 03根据实时数据生成避难建议
MCP 相关
它作为 MCP 服务,向客户端提供四种天气与灾害查询工具、县市名称资源和避难建议提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| county | string | 是 |
详细介绍
来自项目 READMEcwa-mcp-server
MCP server,包中央氣象署(CWA)開放資料 API,讓 agent 能查天氣預報、地震報告、天氣特報、颱風警報,並產生避難建議。
功能
- Tool
get_weather_forecast(county)— 縣市未來 36 小時天氣預報 - Tool
get_earthquake_report(limit)— 最近 N 筆顯著有感地震報告 - Tool
get_weather_warning(county)— 縣市目前生效中的天氣特報(豪雨、強風等) - Tool
get_typhoon_warning(limit)— 最近 N 筆颱風警報 - Resource
cwa://counties— 合法縣市名稱清單 - Prompt
evacuation_advisory(county)— 根據即時天氣/特報/地震/颱風資料生成避難建議的提示模板
申請 API Key
- 到 氣象資料開放平台 註冊會員(email + 密碼即可,免審核)
- 登入後點「API 授權碼」→「取得授權碼」,立即產生 key
安裝(一般使用者)
已發布到 PyPI,不需要 clone 這個 repo。在 Claude Desktop / Claude Code 的 MCP 設定裡指定 uvx 執行即可,會自動抓套件:
{
"mcpServers": {
"cwa-weather": {
"command": "uvx",
"args": ["cwa-mcp-server"],
"env": { "CWA_API_KEY": "你申請到的授權碼" }
}
}
}
或用 Claude Code CLI:
claude mcp add cwa-weather -e CWA_API_KEY=你申請到的授權碼 -- uvx cwa-mcp-server
開發(改這個 repo 原始碼)
git clone https://github.com/gary2376/cwa-mcp-server
cd cwa-mcp-server
uv sync
cp .env.example .env # 填入 CWA_API_KEY
uv run python tests/test_client.py # 最小自我檢查(不打真網路)
uv run mcp dev src/cwa_mcp/server.py # 本地用 inspector 手動測試 tools
狀態
四個 tool(天氣預報、地震報告、天氣特報、颱風警報)都已用真實 key 打過線上 API 驗證,也已接上 Claude Code 實測對話流程,能正確判斷風險等級並給出具體建議。已發布到 PyPI 與 MCP Server Registry。
已知修過的坑:v0.1.0 最初上傳的 wheel 因為 uv_build 預設用 project.name 猜模組名(cwa_mcp_server),跟實際原始碼目錄 src/cwa_mcp/ 對不上,打包出一個空殼套件,uvx cwa-mcp-server 會直接 ModuleNotFoundError。已在 pyproject.toml 加 [tool.uv.build-backend] module-name = "cwa_mcp" 修正,重新 build 驗證過 wheel 內容正確。
License
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。