Unofficial FortiMonitor MCP Server 是一个社区开发的 Model Context Protocol(MCP)服务器,用于将 FortiMonitor/Panopta v2 API 与 Claude AI 集成。根据项目说明,它提供 241 个工具,分布在 33 个模块中,对 FortiMonitor v2 API 实现了近乎完整的覆盖。
适用用途
该项目用于把 FortiMonitor 的服务器监控能力通过 MCP 暴露给 AI 助手(如 Claude AI),使 AI 能够调用相关工具查询和管理监控数据。它声明为非官方社区项目,未获 Fortinet, Inc. 或 FortiMonitor/Panopta 团队的关联、认可或支持,“FortiMonitor”和“Fortinet”为 Fortinet, Inc. 的商标,使用风险自负。
主要能力(按模块)
项目列出的工具模块包括:
- 服务器管理:CRUD、标签、属性、DNS 刷新、路径监控、日志
- 故障监控:查询、确认、升级、广播、延迟、历史事件
- 指标与资源:代理资源、SNMP 资源、阈值、指标图
- 维护窗口:创建、延长、暂停、恢复、终止计划
- 服务器组:组 CRUD、成员管理、复合服务、子组、监控策略
- 模板:创建模板,将监控模板应用到服务器和组并重新应用
- 通知:计划、联系人、联系人组、轮值的值班联系人
- 云监控:提供商、凭据、发现、区域、服务
- DEM:数字体验监控的应用、实例、位置
- 复合服务:聚合服务 CRUD、阈值、可用性、响应时间
- 仪表盘与状态页:监控仪表盘和公共状态页的 CRUD
- 报告:系统健康摘要、故障统计、可用性报告、CSV 导出
- SNMP:凭据、发现、资源 CRUD、指标
- OnSight:本地部署的监控实例和组
- Fabric 连接:集成管理
- 对策:针对网络服务和阈值的自动修复
- 用户管理:用户 CRUD、角色、附加组件
- 参考数据:联系人类型、时区、角色、账户历史、服务器属性类型 另外还声明提供 Docker 支持和 Windows 支持。
使用方式
项目提供三种部署方式:
- 方式 A:Docker(推荐),详细说明见 DOCKER_DEPLOYMENT.md
- 方式 B:本地安装,步骤包括配置环境、测试连通性、运行服务器
- 方式 C:Windows(Claude Desktop / Claude Code),步骤见 docs/WINDOWS_DEPLOYMENT.md
与 Claude Desktop 集成时,可编辑 claude_desktop_config.json 并加入相应配置:
- 使用 Docker 时,先确保容器运行,再添加配置
- 使用本地 Python 时,项目提示 Claude Desktop 不能可靠设置 cwd,因此需使用已安装入口脚本的完整路径并显式设置 PYTHONPATH;可设置 ENABLE_SCHEMA_CACHE=false 以避免服务器无法写入默认 cache/ 目录时出现 [Errno 30] Read-only file system 错误,或将 SCHEMA_CACHE_DIR 设为可写的绝对路径以保留缓存。
服务器会自动发现并缓存 FortiMonitor API 架构用于校验和文档,默认缓存于 cache/schemas/。架构端点包括 /schema/resources(列出所有可用 API 资源)和 /schema/resources/{resource_name}(获取特定资源的架构)。项目还包含带覆盖率的测试运行方式及项目结构说明。
故障排查(项目提供)
- 认证错误:检查 .env 中的 API key;确认 base URL 正确(https://api2.panopta.com/v2);可用 curl 测试 API key:curl "https://api2.panopta.com/v2/server?api_key=YOUR_KEY&limit=1"
- 架构发现失败:检查网络连通性;确认 cache/schemas/ 目录存在且可写;清除缓存并重试(rm -rf cache/schemas/*)
- MCP 服务器未出现在 Claude 中:检查 Claude Desktop 配置语法;确认文件路径为绝对路径;完全重启 Claude Desktop;检查服务器日志中的启动错误
限制与说明
项目明确声明为独立社区项目,与 Fortinet 无官方关系,作者为 Gregori Jenkins,采用 MIT 许可证。关于具体功能效果、收费或价格、实际使用步骤的更多细节,资料中暂未提供。