Wems

io.github.heliosarchitect由 GitHub 账号 heliosarchitect 发布v1.5.3更新于 Oct 24, 2026

Real-time natural hazard monitoring: earthquakes, tsunamis, volcanoes, solar weather, air quality

已验证STDIO仅桌面位置与生活安全与监控

概览

AI 生成的概览

一个本地 MCP 服务器,为助手提供实时自然灾害数据:地震、海啸、火山、太空天气、风暴、空气质量与威胁通告。

可以做什么
按地区或阈值查询近期地震、海啸、火山与干旱状况,支持地震震级与火山警报级别筛选,以及美国各州干旱等级。查看太空天气与太阳活动,包括 K 指数、耀斑、日冕物质抛射和 NOAA 现行警报。跟踪飓风、野火、强对流天气与洪水,包括预报路径、火场边界和河流水位数据。读取空气质量指数及污染物明细,以及涵盖恐怖主义、旅行风险和网络威胁的通告。调整警报阈值与 webhook 地址,并可选地对多来源事件进行融合。
适用场景
适合助手需要权威的实时灾害信息用于风险评估、新闻报道、研究或按地点进行安全监测时使用,也适合希望把重大事件推送到 webhook 的场景。
运行要求
以 Python 包(wems-mcp-server)通过 pip 本地运行,也可从源码运行,README 还提到 Docker。它会调用 USGS、NOAA、NWS、史密森学会、OpenAQ、DHS、美国国务院和 CISA 的公开灾害接口,因此需要网络访问。可通过 WEMS_CONFIG 环境变量传入可选配置文件路径。
安装前请注意
警报配置可设置接收事件数据的 webhook 地址,请只指向你信任的端点。README 描述了按调用计费的 Stripe 计量与免费额度,并提到用于计费的 STRIPE_API_KEY 或 STRIPE_SECRET_KEY;使用前请确认计费是否实际生效。一键安装脚本会安装系统服务并写入 n8n 工作流,会改动本机配置。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Wems,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

🌍 WEMS - World Event Monitoring System

[PyPI version] [License: MIT] [Python 3.8+] [MCP Compatible]

🚨 Real-time Natural Hazard Monitoring for AI Agents

A powerful Model Context Protocol (MCP) server that connects AI assistants to authoritative natural hazard data sources. Monitor earthquakes, tsunamis, volcanoes, and solar events with configurable alerts and webhooks.

🤖 AI Agents: Skip scanning this repo. Read AI.TOC first — it's a 500-token project map. Then use AI.INDEX to find specific functions and AI.REGISTER for env vars, APIs, and config. This project uses the LBF AI Navigation Standard.

⚡ Key Features

  • 🌋 9+ Authoritative Data Sources: USGS, NOAA, Smithsonian GVP, NHC, NIFC, OpenAQ, DHS, State Dept, CISA, US Drought Monitor
  • 🎯 Real-time Monitoring: Live data feeds with customizable thresholds
  • 🔔 Smart Alerts: Webhook notifications for critical events
  • 🗺️ Geographic Filtering: Target specific regions or global coverage
  • 🔧 Zero Configuration: Works out-of-the-box, configure only what you need
  • 🐳 Production Ready: Docker support, comprehensive error handling

Natural Hazards Covered

Hazard TypeData SourceCoverage
🌊 EarthquakesUSGSGlobal, magnitude filtering
🌊 TsunamisNOAA PTWC + CTWCGlobal ocean basins
🌋 VolcanoesSmithsonian GVP + USGSGlobal volcanic activity
☀️ Solar EventsNOAA SWPCSolar flares, CMEs, geomagnetic storms
🌞 Space Weather AlertsNOAA SWPCActive space weather alerts & warnings
🌀 HurricanesNHC + NWSAtlantic & Pacific tropical cyclones
🔥 WildfiresNWS + NIFCFire weather alerts & active perimeters
⛈️ Severe WeatherNWS AlertsTornadoes, thunderstorms, floods, winter storms
💨 Air QualityOpenAQGlobal AQI, PM2.5, PM10, O₃, NO₂, SO₂, CO
🌵 Drought ConditionsUS Drought MonitorUS state drought levels (D0-D4) + trends
🛡️ Threat AdvisoriesDHS NTAS + State Dept + CISATerrorism, travel risk, cyber threats

🚀 Quick Start

Install via PyPI (Recommended)

bash
pip install wems-mcp-server

Or install from source

bash
git clone https://github.com/heliosarchitect/wems-mcp-server.gitcd wems-mcp-serverpip install -r requirements.txt

Basic Usage

bash
# Run as MCP server (connects to AI assistants)python -m wems_mcp_server
# Test earthquake monitoringpython -c "import asynciofrom wems_mcp_server import check_earthquakesprint(asyncio.run(check_earthquakes(min_magnitude=6.0)))"

One-command AI Alerting Setup (Relay + n8n)

bash
bash scripts/setup_wems_alerting_ai.sh

This will:

  • install/start wems-unified-relay.service
  • upsert and activate the unified n8n ingest workflow
  • wire tracker posting credentials automatically

Example Output

json
{  "earthquakes_found": 3,  "events": [    {      "magnitude": 7.2,      "location": "67 km SW of Tres Picos, Mexico",      "time": "2024-02-13T14:30:15Z",      "depth": 35.8,      "tsunami_threat": true    }  ]}

MCP Tools

ToolDescription
check_earthquakesQuery recent earthquake activity
check_solarMonitor space weather (K-index, flares, CMEs)
check_volcanoesTrack volcanic activity alerts
check_tsunamisMonitor tsunami warnings
check_hurricanesTrack tropical cyclones & forecast tracks
check_wildfiresFire weather alerts & active perimeters
check_severe_weatherMonitor tornadoes, thunderstorms, flash floods
check_floodsFlood warnings & USGS river gauge data
check_air_qualityAQI monitoring with pollutant data
check_threat_advisoriesTerrorism, travel risk & cyber threat monitoring
check_space_weather_alertsActive space weather alerts & warnings from NOAA SWPC
check_drought_statusUS state drought conditions with D0-D4 levels (Premium)
configure_alertsUpdate alert thresholds and webhooks
fuse_multi_source_incidentsMulti-source incident fusion (feature-flagged)

Configuration

yaml
alerts:  earthquake:    min_magnitude: 6.0    regions: ["US", "Caribbean", "Pacific"]    webhook: "https://your-endpoint.com/earthquake"    solar:    min_kp_index: 7  # Geomagnetic storm threshold    webhook: "https://your-endpoint.com/solar"      volcano:    alert_levels: ["WARNING", "WATCH"]    webhook: "https://your-endpoint.com/volcano"      tsunami:    enabled: true    regions: ["pacific", "atlantic", "indian"]    webhook: "https://your-endpoint.com/tsunami"

Data Sources

  • USGS Earthquake Hazards Program
  • NOAA Pacific Tsunami Warning Center
  • NOAA Central Tsunami Warning Center
  • Smithsonian Global Volcanism Program
  • NOAA Space Weather Prediction Center
  • National Hurricane Center (NHC)
  • National Interagency Fire Center (NIFC)
  • NWS Alerts API
  • OpenAQ (Global Air Quality)
  • DHS National Terrorism Advisory System (NTAS)
  • U.S. State Department Travel Advisories
  • CISA Cybersecurity Advisories

OpenClaw Integration

Add to your OpenClaw configuration:

json
{  "mcpServers": {    "wems": {      "command": "python3",      "args": ["/path/to/wems-mcp-server/wems_mcp_server.py"],      "env": {        "WEMS_CONFIG": "/path/to/config.yaml"      }    }  }}

🎯 Use Cases

  • 🏢 Enterprise Risk Management: Automated threat assessment for global operations
  • 📺 News Organizations: Real-time natural disaster reporting and alerts
  • 🔬 Research Institutions: Data collection for scientific analysis
  • 🏠 Personal Safety: Location-specific hazard monitoring for families
  • 🤖 AI Emergency Response: Integration with disaster response chatbots
  • 📱 Alert Systems: Custom notification workflows for critical events

🔧 Advanced Configuration

yaml
# config.yaml - Full customization examplealerts:  earthquake:    min_magnitude: 6.0    regions: ["US", "Caribbean", "Pacific"]    webhook: "https://your-endpoint.com/earthquake"      solar:    min_kp_index: 7  # G3+ geomagnetic storm    webhook: "https://your-endpoint.com/solar"      volcano:    alert_levels: ["WARNING", "WATCH"]     regions: ["Cascade Range", "Ring of Fire"]    webhook: "https://your-endpoint.com/volcano"      tsunami:    enabled: true    regions: ["pacific", "atlantic", "indian"]    webhook: "https://your-endpoint.com/tsunami"

📊 Monitoring Dashboard

Pair with monitoring tools for comprehensive coverage:

bash
# Example: Send earthquake data to monitoring systemcurl -X POST https://your-monitoring.com/api/events \  -H "Content-Type: application/json" \  -d "$(python -c 'import wems; print(wems.get_recent_earthquakes())')"

💳 Billing & Monetization (Current)

WEMS now includes Stripe metering scaffolding and affordable default pricing.

Current pricing defaults

  • Free tier: 5,000 calls per rolling 30 days
  • 0–100,000 calls: $0.0010/call
  • 100,001–500,000 calls: $0.0008/call
  • 500,001+ calls: $0.0006/call

Accessory call weights (default)

  • Most tools: 1 unit
  • check_space_weather_alerts: 2 units
  • fuse_multi_source_incidents: 3 units

Billing config

See: config/wems_stripe_billing.json

Key fields:

  • event_name
  • api_key_to_customer
  • billing_units.default
  • billing_units.by_tool
  • pricing.free_calls_per_rolling_30d
  • pricing.tiers[]

Stripe key source

  1. STRIPE_API_KEY or STRIPE_SECRET_KEY (direct env)

WEMS uses best-effort lookup and never blocks alerting if billing key resolution fails.


Built with ❤️ for the AI community by Helios 🌞

Part of the expanding OpenClaw ecosystem

来源:README.md,提交 1941432

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.5.3最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分