{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ve6pjhmz3ayb","handle":"ansible-flow-mcp","url":"https://wellknown.network/agents/ansible-flow-mcp","links":{"self":"https://wellknown.network/agents/ansible-flow-mcp/record.json","html":"https://wellknown.network/agents/ansible-flow-mcp","markdown":"https://wellknown.network/agents/ansible-flow-mcp/record.md","api":"https://wellknown.network/api/v1/agents/ansible-flow-mcp","status":"https://wellknown.network/api/v1/agents/ansible-flow-mcp/status","claim":"https://wellknown.network/agents/ansible-flow-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/ansible-flow-mcp/claim.json","badge":"https://wellknown.network/agents/ansible-flow-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/ansible-flow-mcp/history","tools":"https://wellknown.network/api/v1/agents/ansible-flow-mcp/tools"},"ard":{"identifier":"urn:air::server:ansible-flow-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"ansible-flow-mcp","summary":"MCP server exposing Ansible modules to AI agents (search → schema → check → execute)","description":"# ansible-flow-mcp\n\n**Give agents Ansible. Not the keys.**\n\nMCP server that exposes real Ansible modules and playbooks to AI agents — and a **SSH hub/spoke fabric** so multi-host automation is enrolled, bastion-scoped, and check-first by default.\n\n![Hero: agent hub session and enrolled inventory rail](docs/images/campaign-hero.png)\n\n| Track | What you get |\n| --- | --- |\n| **Agent loop** | `search → schema → check → execute` on allowlisted collections |\n| **Fleet fabric** | One hub · join tokens · SSH ForceCommand spokes · fixed inventory |\n\n[OpenFlow dual-track](https://github.com/real-limitless/OpenFlow) · [Marketing site](site/) · [Campaign storyboard](docs/campaign/) · [Hub/spoke ops](docs/HUB.md) · Apache-2.0\n\nNot affiliated with Red Hat or the Ansible project beyond using the public Ansible CLI and docs.\n\n**New here?** **[Marketing site](site/)** (story + Schema Lab) · full step-by-step **[docs/QUICKSTART.md](docs/QUICKSTART.md)** — local MCP · compose lab · bare-metal hub/spoke · editor wiring.\n\n```bash\n./scripts/site_preview.sh   # http://127.0.0.1:8765/  (gallery + live schemas)\n```\n\n---\n\n## Visual tour\n\n| | |\n| :---: | :---: |\n| **Why it exists** | **Agent loop** |\n| ![Why: god-mode control node vs enrolled bastion](docs/images/campaign-why.png) | ![Agent ritual: search → schema → check → execute](docs/images/campaign-agent-loop.png) |\n| **Hub / spoke fabric** | **Operators** |\n| ![SSH hub/spoke topology and enrollment](docs/images/campaign-hub-spoke.png) | ![Operator TUI, hub MCP tools, lab demo](docs/images/campaign-operator.png) |\n\nScreenshots live in [`docs/images/campaign-*.png`](docs/images/). Re-shoot from [`docs/campaign/`](docs/campaign/) with `./capture.sh`.\n\n---\n\n## Why this exists\n\nAgents on a god-mode control node invent inventory, reach for `shell`, and treat every worker as an entrypoint. That is not a security model.\n\n![Without a fabric vs ansible-flow-mcp controls](docs/images/campaign-why.png)\n\n**You need this when:**\n\n- You want Cursor …","publisher":{"name":"real-limitless","url":null},"homepage":"https://github.com/real-limitless/ansible-flow-mcp","repository":"https://github.com/real-limitless/ansible-flow-mcp","version":"0.1.3","license":null,"protocols":["mcp"],"tags":["ai-agent","ansible","automation","mcp"],"pricing":null,"endpoints":[{"url":"pypi:ansible-flow-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"content.marketing","name":"Marketing","confidence":0.836,"provenance":"derived"},{"slug":"dev.terminal","name":"Terminal & Shell","confidence":0.745,"provenance":"derived"}],"categories":["content","dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"ansible-flow-mcp","registry":"pypi","observedAt":"2026-10-27T19:25:36.175Z","publishedAt":"2026-08-10T13:50:49.559069Z","latestVersion":"0.1.3"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"ansible-flow-mcp","url":"https://pypi.org/project/ansible-flow-mcp/","firstSeenAt":"2026-09-09T09:22:56.066Z","fetchedAt":"2026-10-27T19:24:25.881Z","normalizedAt":"2026-10-27T19:24:25.881Z"}]},"firstSeenAt":"2026-09-09T09:22:56.066Z","updatedAt":"2026-10-27T19:25:36.175Z"}