Sentinel Asia EOR MCP服务器
Sentinel Asia紧急观测请求(EOR)API的MCP服务器实施
概要
此项目包括:Sentinel Asia的,之EOR(Emergency Observation Request)API打开Model Context Protocol (MCP)作为服务器提供。Render.com中所述修改相应参数的值Claude桌面应用程序Claude Code、其他MCP可以从客户端获取灾难信息。
部署的服务器
- 服务器URL:
https://sentinel-asia-emergency-observation.onrender.com - SSE端点:
https://sentinel-asia-emergency-observation.onrender.com/sse
设置方法
方法1:通过代理服务器(推荐Claude桌面应用程序)
Claude桌面应用程序HTTP/SSE使用本地代理服务器,因为不直接支持传输。
- 安装所需的软件包:
pip3 install fastmcp httpx pydantic- Claude编辑配置文件:
- Linux: ~/.config/Claude/claude_desktop_config.json - macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 窗户: %APPDATA%/Claude/claude_desktop_config.json
添加以下设置:
{
"mcpServers": {
"sentinel-asia-eor": {
"command": "python3",
"args": [
"/path/to/mcp_proxy_server.py"
],
"env": {}
}
}
}- Claude重新启动桌面应用程序
方法2: Claude Code経由
Claude Code表示SSE支持传输:
claude mcp add --transport sse sentinel-asia-eor https://sentinel-asia-emergency-observation.onrender.com/sse方法3:其他MCP通过客户端
Cursor、VS Code扩展LibreChat等其他MCP在客户端上HTTP/SSE可以直接使用端点:
https://sentinel-asia-emergency-observation.onrender.com/sse
可用工具
1.获取_个国家
获取可用国家/地区列表
2.获取元数据
获取服务元数据(说明、许可证和方法)
3.获取事件
获取灾难事件信息
countryiso3s:国家/地区代码(逗号分隔,例如:JPN,PHL,CHN)start_date:开始日(YYYYMMDD形式)end_date:终了日(YYYYMMDD形式)
4.获取产品
指定的EOR交付件信息
url: EOR单击功能区上URL
使用例
> 日本の最近の災害イベントを取得してください
> フィリピンと中国の2024年の災害情報を比較してください
> 利用可能な国のリストを表示してくださいRender中的部署
这个项目Render.com对较大场景进行渲染期间已观察到该故障。
部署中包含的文件
render_server.py: Render的主服务器文件requirements.txt: Python依存关系Procfile:流程定义start.sh:启动脚本(可选)runtime.txt: Python版本化
Render中的设置
- GitHub打开存储库Render连接
- 使用以下设置:
- 生成命令: pip install -r requirements.txt - 启动命令: python render_server.py - 环境:Python 3
API仕様
这个MCP服务器具有以下结构:
- MCP服务器:
https://sentinel-asia-emergency-observation.onrender.com
- /sse: SSE MCP连接端点(Claude Code等用) - /health:健康检查
- 数据源API:
https://reder-test-o5k8.onrender.com
- /get_countries:国家/地区列表 - /get_metadata:元数据 - /get_events:事件信息 - /get_products:成果物情报
故障排除
常见问题
- “没有名为'fastmcp'的模块”エラー:
pip3 install fastmcp httpx pydantic- 连接错误:
- Render确定服务器是否正在运行 - 检查互联网连接
- Claude缺少工具:
- Claude重新启动桌面应用程序 - 确认配置文件的路径是否正确
调试
检查代理服务器日志:
python3 mcp_proxy_server.py许可证
MIT许可证
🚀 主要功能
- 灾难事件搜索:按国家/日期获取灾难事件信息
- 国家/地区列表检索:亚太地区对应国一览
- 元数据检索:服务信息许可注意事项
- 成果物取得: EOR从详细信息页面获取相关交付件信息
🛠️ MCP工具列表
get_countries()
- 亚洲、中东、太平洋各国的国名ISO3获取代码列表
get_metadata()
- 获取服务说明、许可证、方法和注意事项
get_events(countryiso3s?, start_date?, end_date?)
- 获取灾难事件信息
- 参数:
- countryiso3s:逗号分隔的ISO3国家代码(例如:JPN,PHL,CHN) - start_date:开始日期(YYYYMMDD或YYYY-MM-DD 格式) - end_date:结束日期(YYYYMMDD或YYYY-MM-DD 格式)
get_products(url)
- 指定的EOR从详细信息页面获取交付件信息
- 参数:
- url: EOR单击功能区上URL
🌐 Render中的部署
部署设置
构建命令:
pip install -r requirements_mcp.txt启动命令:
python mcp_server_sse.py环境变数
PORT: Render自动设定(通常10000)
🔧 Claude Desktop在中使用
claude_desktop_config.json添加:
{
"mcpServers": {
"sentinel-asia-eor": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-fetch", "https://your-app.onrender.com/sse"],
"env": {}
}
}
}📚 使用例
搜索日本2024年灾害活动
get_events(countryiso3s="JPN", start_date="20240101", end_date="20241231")搜索菲律宾最近的灾难事件
get_events(countryiso3s="PHL", start_date="20241201")获取可用国家/地区列表
get_countries()🔗 相关链接
📄 许可证
这个项目MIT在许可证下公开。
🙏 谢辞
这个项目亚洲哨兵的,之API中所述修改相应参数的值。感谢您提供灾害监视和应对的宝贵数据。
