使用說明

項目簡介

CWA 氣象小幫手是一個基於 Model Context Protocol (MCP) 實作的伺服器,它可以讓 Claude Desktop 等 MCP 客户端連接到台灣中央氣象署 (CWA) 的開放資料 API,獲取最新的天氣預報資訊。透過這個伺服器,你可以直接在 Claude 的對話中詢問台灣各縣市的天氣狀況,Claude 將會調用伺服器的工具獲取資料並回答你的問題。

主要功能點

  • 即時天氣查詢: 可以查詢台灣各縣市未來 36 小時的天氣預報。
  • 標準 MCP 協議: 使用 JSON-RPC over Stdio 與 MCP 客户端 (如 Claude Desktop) 通訊。
  • 工具註冊與執行: 提供 'get_weather_forecast' 工具,讓 LLM 客户端可以調用以獲取天氣資料。
  • 簡單易用: 設定簡單,容易與 Claude Desktop 整合。

安裝步驟

  1. 取得 CWA API 金鑰:

  2. 下載程式碼:

  3. 安裝 Node.js 依賴:

    • 確保你的電腦已安裝 Node.js (建議版本 18 或更高)。
    • 在程式碼目錄下執行 'npm install' 安裝依賴。
  4. 設定環境變數:

    • 設定環境變數 'CWA_API_KEY' 為你取得的 CWA API 金鑰。
    • 你可以編輯 'install.sh' 腳本,將你的 API 金鑰填入其中,然後執行 'chmod +x install.sh && ./install.sh',腳本會自動設定環境變數並配置 Claude Desktop 設定檔。
    • 或者,你也可以手動設定環境變數,具體方法依你的作業系統而定。例如在 Linux 或 macOS 中,你可以在終端機執行 'export CWA_API_KEY=你的金鑰'。

伺服器配置

要讓 Claude Desktop 連接 CWA 氣象小幫手,你需要編輯 Claude Desktop 的設定檔 '~/.config/claude/claude_desktop_config.json' (如果檔案不存在則創建一個),並加入以下 MCP 伺服器配置:

{
  "mcpServers": {
    "cwa": {
      "command": "node",
      "args": [
        "/path/to/cwa-server.js"  // 請替換為 cwa-server.js 的實際路徑
      ],
      "env": {
        // 環境變數 CWA_API_KEY 建議在伺服器運行環境中設定,
        // 如果不想設定環境變數,也可以直接寫在這裡,但不建議。
        // "CWA_API_KEY": "你的_CWA_API_金鑰"
      }
    }
  }
}

配置參數說明:

  • 'server name': 'cwa' (伺服器名稱,可自訂,用於在 Claude 中引用)
  • 'command': 'node' (啟動伺服器的命令,這裡使用 Node.js 執行環境)
  • 'args': '["/path/to/cwa-server.js"]' (命令參數,指向 'cwa-server.js' 檔案的絕對路徑。請務必將 '/path/to/cwa-server.js' 替換為你電腦上 'cwa-server.js' 檔案的實際路徑)
  • 'env': '{}' (環境變數,如果選擇在 Claude Desktop 設定檔中配置 'CWA_API_KEY',可以在這裡設定,但不建議直接寫入金鑰,更推薦在伺服器運行環境中設定環境變數)

Docker 配置 (可選):

如果你使用 Docker 運行 CWA 氣象小幫手,Claude Desktop 的設定檔應改為:

{
  "mcpServers": {
    "cwa": {
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "cwa-mcp-server", // Docker 容器名稱,請確保與 docker-compose.yml 中定義的容器名稱一致
        "node",
        "cwa-server.js"
      ]
    }
  }
}

配置參數說明:

  • 'server name': 'cwa' (伺服器名稱,可自訂)
  • 'command': 'docker' (啟動伺服器的命令,這裡使用 Docker)
  • 'args': '["exec", "-i", "cwa-mcp-server", "node", "cwa-server.js"]' (命令參數,指示 Docker 執行容器 'cwa-mcp-server' 中的 'node cwa-server.js' 命令。請確保 'cwa-mcp-server' 與你的 Docker 容器名稱一致)

基本使用方法

  1. 啟動伺服器:

    • 如果使用 Node.js 直接運行,在程式碼目錄下執行 'node cwa-server.js'。
    • 如果使用 Docker,執行 'docker-compose up -d' 啟動 Docker 容器。
  2. 重新啟動 Claude Desktop: 讓 Claude Desktop 載入新的 MCP 伺服器設定。

  3. 在 Claude 中提問: 在與 Claude 的對話中,你可以直接用自然語言提問天氣相關問題,例如:

    台北市現在天氣如何?
    明天高雄會下雨嗎?
    幫我查一下宜蘭未來幾天的天氣預報

    Claude 就會自動調用 'get_weather_forecast' 工具,從 CWA 氣象小幫手獲取資料並回答你的問題。

注意事項:

  • 請確保 'cwa-server.js' 的路徑在 Claude Desktop 設定檔中配置正確。
  • 如果使用 Docker,請確保 Docker 容器已成功啟動。
  • 如果遇到問題,請檢查伺服器和 Claude Desktop 的日誌輸出,以獲取更多錯誤訊息。

信息

分类

网页与API