Setup of the Environment for the AI Powered Ansible & OpenShift Automation with Model Context Protocols (MCP) Servers

Setup of the Environment for the AI Powered Ansible & OpenShift Automation with Model Context Protocols (MCP) Servers

site icon
2025.04.01 7
Python自动化管理Ansible集成OpenShift管理开发效率
MCP(Model Context Protocols)服务器是一个用于AI驱动的Ansible和OpenShift自动化的工具,通过与Claude Desktop集成,提供对Ansible Automation Platform和OpenShift集群的交互能力。它允许用户通过自然语言命令执行自动化任务,如管理库存、运行作业模板、创建项目和监控作业状态等。
View on GitHub

Overview

基本能力

产品定位

MCP服务器旨在通过AI增强Ansible和OpenShift的自动化能力,提供更直观和高效的自动化管理方式。

核心功能

  1. Ansible Automation Platform集成:支持管理库存、作业模板、项目和作业状态。
  2. OpenShift集群交互:通过Kubernetes MCP服务器管理OpenShift资源。
  3. 事件驱动自动化:支持Event Driven Ansible(EDA)的激活和管理。
  4. 自然语言交互:通过Claude Desktop进行自然语言命令的解析和执行。

适用场景

  1. 自动化任务管理:通过自然语言命令执行Ansible作业模板和监控作业状态。
  2. 动态库存管理:创建和管理动态库存源。
  3. 事件驱动自动化:设置和管理EDA激活和规则书。
  4. OpenShift集群管理:查询和管理OpenShift集群资源。

工具列表

  1. Ansible MCP工具
  2. list_inventories:列出所有库存。
  3. get_inventory:获取特定库存的详细信息。
  4. run_job:运行作业模板。
  5. job_status:检查作业状态。
  6. job_logs:获取作业日志。
  7. create_project:创建新项目。
  8. create_job_template:创建作业模板。
  9. list_inventory_sources:列出所有库存源。
  10. create_inventory_source:创建动态库存源。
  11. sync_inventory_source:手动触发库存源同步。
  12. create_inventory:创建库存。
  13. delete_inventory:删除库存。
  14. list_job_templates:列出所有作业模板。
  15. get_job_template:获取作业模板详细信息。
  16. list_jobs:列出所有作业。
  17. list_recent_jobs:列出最近执行的作业。

  18. EDA MCP工具

  19. list_activations:列出所有EDA激活。
  20. get_activation:获取激活详细信息。
  21. create_activation:创建新激活。
  22. disable_activation:禁用激活。
  23. enable_activation:启用激活。
  24. restart_activation:重启激活。
  25. delete_activation:删除激活。
  26. list_decision_environments:列出决策环境。
  27. create_decision_environment:创建决策环境。
  28. list_rulebooks:列出规则书。
  29. get_rulebook:获取规则书详细信息。
  30. list_event_streams:列出事件流。

常见问题解答

  1. 如何生成AAP_TOKEN
  2. 在AAP仪表板中,选择“访问管理” -> “用户” -> 您的用户 -> “令牌” -> “创建令牌”,选择“写入”范围并创建令牌。

  3. 如何获取uv的绝对路径

  4. 在终端中运行which uv命令获取路径。

  5. 为什么需要Claude Desktop Pro Plan

  6. Pro Plan提供更完整的功能支持,尤其是在处理复杂自动化任务时。

使用教程

使用依赖

  1. Ansible Automation Platform (AAP)环境
  2. OpenShift集群(带有OpenShift Virtualization)。
  3. Claude Desktop(建议使用Pro Plan)。
  4. Python 3.10或更高版本
  5. 已认证的OpenShift集群(通过kubeconfig)。

安装教程

  1. 安装uvjbangbash curl -LsSf https://astral.sh/uv/install.sh | sh 安装jbang

  2. 创建并设置项目: bash uv init ansible cd ansible uv venv source .venv/bin/activate uv add "mcp[cli]" httpx touch ansible.py

  3. 配置Claude Desktop:

  4. 编辑claude_desktop_config.json文件,配置MCP服务器路径和环境变量。

调试方式

  1. 验证MCP服务器是否被Claude Desktop识别:
  2. 检查Claude Desktop中的“hammer”图标是否显示。
  3. 测试工具功能:
  4. 在Claude Desktop中尝试运行list_job_templateslist_inventories等命令。
  5. 检查日志:
  6. 查看Claude Desktop和MCP服务器的输出日志以排查问题。

许可证

None