
SSH MCP Server

2025.03.13
0
Python网络设备管理网络监控配置验证报告生成其它
SSH MCP Server 是一个集中式的网络设备管理系统,通过SSH API执行网络交换机命令,提供网络监控、配置验证和报告生成等高级功能。
View on GitHub
Overview
基本能力
产品定位
SSH MCP Server 是一个集中式的网络设备管理系统,主要用于网络设备的监控、配置管理和报告生成。
核心功能
- 设备管理:
- 网络设备清单管理,包括位置、角色、型号和操作系统版本等元数据。
- 设备分组功能,可按功能、位置或自定义属性分组。
-
设备状态跟踪和可用性监控。
-
命令执行:
- 通过SSH API在设备上执行show命令。
- 支持周期性命令执行以进行监控。
- 支持在多台设备上并发执行命令。
-
支持命令模板和变量替换。
-
数据处理:
- 将命令输出解析为结构化数据。
- 在数据库中存储历史命令输出。
- 支持跨设备或跨时间的输出比较。
-
检测设备配置和状态的变化。
-
报告生成:
- 生成设备清单、命令输出和配置变更等报告。
- 支持自定义报告模板,输出格式包括HTML、JSON和CSV。
- 支持定时报告生成和分发。
适用场景
- 企业网络设备的集中管理和监控。
- 网络配置的自动化验证和变更管理。
- 网络性能和历史数据的报告生成。
使用教程
使用依赖
- Python 3.8+:确保系统已安装Python 3.8或更高版本。
- PostgreSQL 12+:用于数据库存储。
- Redis:用于任务队列。
- SSH API Service:用于与设备通信。
安装教程
- 克隆仓库:
git clone https://github.com/your-org/ssh-mcp-server.git
cd ssh-mcp-server
- 创建虚拟环境并安装依赖:
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
- 设置环境变量:
cp .env.example .env
# 编辑.env文件配置相关设置
- 设置数据库:
createdb mcp_server
alembic upgrade head
- 启动服务:
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
调试方式
- 运行测试:
pytest
- 创建新的数据库迁移:
alembic revision --autogenerate -m "Description of changes"
alembic upgrade head
- 访问API文档:
- Swagger UI: http://localhost:8000/api/v1/docs
- ReDoc: http://localhost:8000/api/v1/redoc