🚀 AirNow MCP 服务器
非官方的 AirNow MCP 服务器是一个模型上下文协议(MCP)的实现方案,它能够实现大语言模型(LLMs)与用于获取美国空气质量数据的 AirNow API 之间的集成。该服务器提供了一套全面的工具,允许大语言模型访问和利用实时、预测和历史空气质量信息。
✨ 主要特性
- 通过标准化的 MCP 工具直接访问 AirNow API 资源。
- 提供用于查询空气质量数据的自然语言接口。
- 支持获取当前、预测和历史的空气质量指数(AQI)、观测数据和等值线图。
- 可通过 NPX/Docker 轻松集成。
📚 详细文档
关于 AirNow API
AirNow API 提供对美国官方空气质量数据的访问,包括:
- 当前和预测的空气质量指数(AQI):可检索特定地点或区域的臭氧、PM2.5 和 PM10 的实时和预测 AQI 值。
- 观测数据和报告区域:可通过邮政编码、经纬度、边界框或报告区域访问空气质量观测数据。
- 空气质量地图:可获取臭氧和 PM2.5 的等值线图,以图像或数据叠加的形式提供。
- 历史数据:可查询受支持污染物的历史空气质量数据。
- 健康建议:该 API 根据 AQI 级别提供健康建议和警示声明。
有关端点、参数和响应格式的详细信息,请使用您的 AirNow API 账户登录并访问 AirNow API Web 服务文档。
可用工具
预测工具
- forecast_by_lat_long:通过经纬度获取报告区域的当前或历史预测 AQI 值和类别。
- forecast_by_zip_code:通过邮政编码获取报告区域的当前或历史预测 AQI 值和类别。
等值线图工具
- contour_maps_by_geographic_bounding_box_ozone:以 KML 格式获取当前或历史的臭氧等值线图。
- contour_maps_by_geographic_bounding_box_pm25:以 KML 格式获取当前或历史的 PM2.5 等值线图。
- contour_maps_by_bounding_box_combined_ozone_pm25:以 KML 格式获取当前或历史的臭氧和 PM2.5 综合等值线图。
观测工具
- current_observations_by_reporting_area_by_lat_long:通过经纬度获取报告区域的当前 AQI 值和类别。
- current_observations_by_reporting_area_by_zip_code:通过邮政编码获取报告区域的当前 AQI 值和类别。
- observations_by_monitoring_site_by_geographic_bounding_box:获取指定日期和时间范围内、特定地理区域内的 AQI 值或数据浓度。
历史数据工具
- historical_observations_by_reporting_area_by_lat_long:通过经纬度获取报告区域的历史 AQI 值和类别。
- historical_observations_by_reporting_area_by_zip_code:通过邮政编码获取报告区域的历史 AQI 值和类别。
📦 安装指南
- 需要一个 AirNow API 密钥,您可以通过申请 AirNow API 账户 来获取。
- 若使用 NPX,需要
Node.js >= v22.14.0。
🔧 配置说明
Claude Desktop
将以下配置之一添加到您的 claude_desktop_config.json 文件中:
NPX 配置
{
"mcpServers": {
"airnow-mcp-server": {
"command": "npx",
"args": [
"-y",
"@prsantos/airnow-mcp-server"
],
"env":{
"AIRNOW_API_KEY": "",
"APPDATA": ""
}
}
}
}
注意:
- 在 Windows 系统中,可通过打开命令提示符并运行
echo %APPDATA% 来获取 APPDATA 的值。
- 在 Mac 系统中,可通过打开终端并运行
which npm 来获取 APPDATA 的值。
Docker 配置
{
"mcpServers": {
"airnow-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AIRNOW_API_KEY",
"prsantos/airnow-mcp-server"
],
"env":{
"AIRNOW_API_KEY": ""
}
}
}
}