DevOps自动化服务器

一个基于HTTP的模型上下文协议(MCP)服务器,提供自主DevOps操作,包括部署管理、日志监控、指标收集和回滚功能,适用于企业环境。

  • by abhishekrnjn
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 abhishekrnjn/light-devops-mcp-server

使用说明

轻量级DevOps MCP服务器

一个基于HTTP的综合模型上下文协议(MCP)服务器,提供自主的DevOps操作,包括部署管理、日志监控、指标收集和回滚功能。使用FastAPI构建,使用干净的架构原则,专为具有集成身份验证、安全和监控的企业环境而设计。

团队信息

团队名称: (5879)

团队成员: [阿布舍克·兰詹]

黑客马拉松主题/挑战

主题: [主题2]

应对的挑战: 构建一个自主的DevOps平台,使AI代理能够通过标准化的模型上下文协议(MCP)接口执行复杂的DevOps操作,并为企业环境提供集成的安全、监控和基于角色的访问控制。

演示视频链接

[此处将添加演示视频]

Github回购链接

[https://github.com/abhishekrnjn/light-devops-mcp-server]

我们建造了什么

该项目是一个生产就绪的自主DevOps MCP服务器,提供:

核心能力

  • MCP协议合规性:通过2个资源和12个工具全面实现HTTP上的模型上下文协议
  • 双模式操作:在直接模式和Cequence网关路由之间无缝切换,以增强安全性
  • 实时数据流:当真正的API调用在后台执行时,立即产生伪数据响应
  • 全面的错误处理:强大的回退机制和详细的错误报告

DevOps 运营

  • 部署管理:将服务部署到具有特定环境权限的多个环境(开发、测试、生产)
  • 回滚功能:通过全面的审计跟踪和原因验证实现安全部署回滚
  • 日志监控:具有级别过滤(调试、信息、警告、错误)和源跟踪的实时日志聚合
  • 指标收集:性能和健康指标监控,可定制过滤和单位支持

安全和身份验证

  • Descope集成:通过JWT令牌验证和自动刷新进行企业级身份验证
  • 基于角色的访问控制:不同用户角色(观察者、开发人员、开发人员prod_access)的粒度权限
  • 环境特定控制:暂存与生产许可分离
  • 匿名访问支持:开发友好的匿名访问模式

监测和可观察性

  • 数据狗集成:可选的高级监控和日志记录,可自动回退到模拟数据
  • 后果网关:用于审计跟踪和策略执行的安全网关集成
  • 综合录井:带有表情符号指示器的结构化日志记录,便于调试
  • 健康检查:内置健康监测和状态报告

主要特点

  • 清洁建筑:具有独立关注点(领域、基础设施、模式)的领域驱动设计
  • 异步/等待:完全异步操作,实现高性能
  • 类型安全:全面的类型提示和Pydantic模型
  • 配置管理:基于环境的配置,具有合理的默认值
  • Docker支持:使用Dockerfile和生产配置进行容器化部署

如何跑步

先决条件

  • Python 3.10或更高版本
  • pip包管理器

地方发展

  1. 克隆存储库

    git clone <repository-url>
    cd light-devops-mcp-server
    
  2. 创建虚拟环境

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. 安装依赖项

    pip install -r requirements.txt
    
  4. 设置环境变量 (开发可选)

    # Create .env file with optional configurations
    echo "AUTH_ALLOW_ANONYMOUS=true" > .env
    echo "CEQUENCE_ENABLED=false" >> .env
    
  5. 运行服务器

    python mcp_http_server.py
    

    服务器将于启动 http://localhost:8001 (或指定的端口 PORT 环境变量)

Docker部署

  1. 构建Docker镜像

    docker build -t light-devops-mcp-server .
    
  2. 运行容器

    docker run -p 8000:8000 light-devops-mcp-server
    

生产部署(Render.com)

该项目包括 render.yaml 在Render.com上轻松部署的配置:

  1. 将您的GitHub存储库连接到Render
  2. 在Render仪表板中设置所需的环境变量:
    • CEQUENCE_GATEWAY_URL (如果使用Cequence)
    • DESCOPE_PROJECT_ID (如果使用Descope身份验证)
    • DESCOPE_MANAGEMENT_KEY (如果使用Descope身份验证)
    • DD_API_KEY 和 DD_APP_KEY (如果使用Datadog)

API终点

核心MCP端点

  • GET / -服务器信息、功能和可用端点
  • GET /mcp/resources -列出所有可用的MCP资源(日志、指标)
  • GET /mcp/resources/logs -通过可选的筛选(级别、限制、原因)获取系统日志
  • GET /mcp/resources/metrics -通过可选过滤(限制、服务)获取性能指标
  • GET /mcp/resources/{resource_path} -按URI路径读取特定资源
  • GET /mcp/tools -列出所有可用的MCP工具

DevOps 运营

  • POST /mcp/tools/deploy_service -将服务部署到特定环境
  • POST /mcp/tools/rollback_deployment -根据原因和环境回滚部署
  • POST /mcp/tools/authenticate_user -对用户进行身份验证并获取权限

Cequence网关MCP工具(用于网关集成)

  • POST /mcp/tools/getMcpResourcesLogs -通过MCP工具调用获取日志
  • POST /mcp/tools/getMcpResourcesMetrics -通过MCP工具调用获取指标
  • POST /mcp/tools/postMcpToolsDeployService -通过MCP工具调用部署服务
  • POST /mcp/tools/postMcpToolsRollbackDeployment -通过MCP工具调用回滚
  • POST /mcp/tools/postMcpToolsAuthenticateUser -通过MCP工具调用进行身份验证
  • POST /mcp/tools/get -通过MCP工具调用获取服务器信息
  • POST /mcp/tools/getMcpResources -通过MCP工具调用列出资源
  • POST /mcp/tools/getMcpTools -通过MCP工具调用列出工具

技术栈

核心技术

  • Python 3.10+:支持async/await的核心编程语言
  • 快速 API:具有自动OpenAPI文档的现代快速web框架
  • 乌维科恩:用于生产部署的高性能ASGI服务器
  • 派丹蒂克:数据验证、序列化和设置管理
  • HTTPX:用于外部API调用和Cequence网关集成的异步HTTP客户端

身份验证和安全

  • 下坡:具有JWT令牌管理的企业身份验证平台
  • JWT公司:用于安全会话管理的JSON Web令牌
  • RBAC:基于角色的访问控制,具有细粒度权限
  • 后果网关:用于审计跟踪和策略执行的安全网关

监测和可观察性

  • 数据狗API:高级监控、日志记录和指标收集
  • 结构化日志记录:使用表情符号指示器进行全面日志记录
  • 模拟数据生成:用于即时UI响应的真实虚拟数据
  • 健康监测:内置健康检查和状态报告

基础设施和部署

  • 码头工人:多阶段构建的容器化
  • Render.com:具有自动扩展功能的云部署平台
  • 环境配置:灵活的配置管理
  • CORS支持:用于前端集成的跨源资源共享

开发和代码质量

  • 黑色:代码格式化,行长88个字符
  • isort:导入排序,兼容黑色配置文件
  • MyPy:严格模式下的静态类型检查
  • 拉夫:快速Python linter和格式化程序
  • 预承诺:Git挂钩用于自动代码质量检查
  • 类型提示:在整个代码库中提供全面的类型注释

我们会用更多的时间做什么

增强的实时功能

  • 服务器发送事件(SSE):实现日志和指标的真正实时流式传输
  • WebSocket支持:实时更新的双向通信
  • 实时通知:推送部署状态更改通知
  • 实时仪表板更新:自动UI刷新,无需手动轮询

高级监控和可观察性

  • 自定义仪表板:用户可配置的带有拖放小部件的监控仪表板
  • 警报管理:智能警报,人工智能降噪
  • 性能分析:先进的性能趋势分析和报告
  • 成本优化:人工智能驱动的资源优化建议

企业功能

  • 多租户架构:通过专用资源增强租户隔离
  • 审计日志:具有可搜索历史记录的全面审计跟踪
  • 合规框架:内置对SOC2、GDPR、HIPAA合规性的支持
  • 集成中心:为流行的DevOps工具(Jenkins、GitLab等)预先构建的连接器

性能和可扩展性

  • Redis缓存:分布式缓存层,可缩短响应时间
  • 数据库集成:PostgreSQL/MongoDB用于持久存储和历史记录
  • 负载平衡:具有多个服务器实例的水平扩展
  • 速率限制:具有每个用户和每个端点控制的高级速率限制

增强的安全性

  • API密钥管理:安全的API密钥轮换和管理系统
  • 端加密:对传输中和静止的敏感数据进行加密
  • 漏洞扫描:自动安全扫描和依赖关系更新