Skip to content

v0.1.3

Choose a tag to compare

@msradam msradam released this 15 Jun 15:20
· 3 commits to main since this release

Rocannon turns any Ansible control node into an MCP server: every installed module, and now every role with an argument spec, becomes a typed MCP tool.

Highlights

  • Roles as tools. A profile can declare roles: (and roles_path: for standalone roles). A role that ships meta/argument_specs.yml is documented by ansible-doc -t role -j like a module, so its main entry point's arguments become the tool's typed parameters. Execution runs through ansible-runner and ansible validates the argspec at run time. Roles without an argspec are skipped.
  • Richer tool metadata. Each tool is tagged by collection and namespace, and its MCP meta carries the module's documented Python requirements, return keys, related modules, version added, and deprecation, straight from ansible-doc.
  • Faster startup. Module schemas load in a single batched ansible-doc call instead of one per module.

Also

  • rocannon --version, and the ansible binaries resolve when launched by absolute path (so MCP clients work without the venv on PATH).
  • rocannon quickstart pins ansible_python_interpreter so modules with third-party deps run in the right environment.

Install

pip install rocannon