UNPKG

@bashcat/cwa-mcp-weather

Version:

MCP 伺服器整合中央氣象署 (CWA) 開放資料 API - 完整支援所有15個天氣工具

50 lines 1.99 kB
import { CWAAPIClient } from './cwa-client.js'; const API_KEY = 'CWA-XXXXXXXX'; async function testDirectAPICall() { console.log('🧪 開始直接測試 CWA API...'); // 測試直接的 fetch 呼叫 const url = new URL('/v1/rest/datastore/F-C0032-001', 'https://opendata.cwa.gov.tw/api'); url.searchParams.append('Authorization', API_KEY); url.searchParams.append('format', 'JSON'); url.searchParams.append('locationName', '臺北市'); console.log('📡 測試 URL:', url.toString()); try { const response = await fetch(url.toString()); console.log('📊 回應狀態:', response.status, response.statusText); console.log('� 回應標頭:', Object.fromEntries(response.headers.entries())); const textResponse = await response.text(); console.log('📝 回應內容 (前200字):', textResponse.substring(0, 200)); // 嘗試解析為 JSON try { const jsonData = JSON.parse(textResponse); console.log('✅ JSON 解析成功'); console.log('🔍 成功狀態:', jsonData.success); } catch (jsonError) { console.log('❌ JSON 解析失敗:', jsonError instanceof Error ? jsonError.message : jsonError); } } catch (error) { console.error('❌ 直接 API 呼叫失敗:', error); } } async function testCWAConnection() { console.log('\n🔧 測試 CWA 客戶端...'); const client = new CWAAPIClient(API_KEY); try { const data = await client.getCountyWeather({ locationName: ['臺北市'] }); console.log('✅ CWA 客戶端呼叫成功!'); console.log('📊 資料集:', data.records.datasetDescription); } catch (error) { console.error('❌ CWA 客戶端測試失敗:', error); } } async function main() { await testDirectAPICall(); await testCWAConnection(); } main().catch(console.error); //# sourceMappingURL=debug.js.map