Skip to content

ansible-tower-mcp

Ansible Tower / AWX automation API + MCP Server + A2A Agent for the agent-utilities ecosystem — a typed, deterministic control surface for Ansible Automation Platform job templates, inventories, jobs, and credentials.

Official documentation

This site is the canonical reference for ansible-tower-mcp, maintained alongside every release.

PyPI MCP Server License GitHub

Overview

ansible-tower-mcp wraps the Ansible Tower / AWX REST API (Ansible Automation Platform) with typed, action-routed MCP tools and an optional Pydantic-AI agent server. It provides:

  • Api — a requests-based REST client for the Tower / AWX /api/v2/ surface, organized by resource (inventories, hosts, groups, job templates, jobs, projects, credentials, organizations, teams, users, schedules, system).
  • Action-routed MCP tools — one consolidated tool per resource domain, individually togglable through environment switches to keep the LLM tool surface compact.
  • An A2A agent server — a graph-routed Pydantic-AI agent (console script ansible-tower-agent) that calls the MCP tools over an MCP_URL.

Authentication resolves automatically across OIDC token delegation, OAuth client credentials, and username / password — and the server remains inactive when credentials are absent.

Explore the documentation

  • Installation — pip, source, extras, and the prebuilt Docker image.
  • Deployment — run the MCP and agent servers, Docker Compose, Caddy + Technitium.
  • Usage — the MCP tools, the Api client, and the CLI.
  • Overview — ecosystem role, concept registry, and architecture.
  • Concepts — the CONCEPT:ANSIBLE-* registry.

Quick start

pip install "ansible-tower-mcp[mcp]"
ansible-tower-mcp                # stdio MCP server (default transport)

Connect it to an Ansible Tower / AWX controller:

export ANSIBLE_BASE_URL=https://your-tower.example.com
export ANSIBLE_USERNAME=admin
export ANSIBLE_PASSWORD=secret
ansible-tower-mcp --transport streamable-http --host 0.0.0.0 --port 8000

See Installation and Deployment for the full matrix (PyPI extras, Docker image, all transports, the agent server, reverse proxy, DNS).