Making Kovanex Easier for AI Agents

After shipping a skill library in v7.7.0, the next question was obvious: what slows an agent down when it actually uses Kovanex? Two things — parsing human tables, and a half-wired MCP. v7.8.0 fixes both.

Structured --json everywhere it matters

Agents were scraping pretty-printed tables with regexes. Now every read command an agent leans on takes a global --json flag and emits structured protojson instead:

kovanex-ctl tasks list <project> --json
kovanex-ctl board <project> --json
kovanex-ctl pipelines get <id> --json
kovanex-ctl releases list <project> --json
kovanex-ctl problems list <project> --json

No more counting columns. The shape is stable (unpopulated fields kept), so an agent can jq or parse it directly.

Pipeline job ids — logs you can reach

pipelines get --json now includes job ids. That closes a real gap: the standalone pipelines logs <pipeline_id> <job_id> was previously unreachable from the CLI because job ids were never printed. An agent can now go red-pipeline → failed job → its logs without the AI-assisted path.

MCP: fixed, and wider

The MCP server had a registration bug that made it stack-overflow on startup — effectively non-functional. Fixed. While there, we added the tools agents had been missing for the newer services:

So an MCP client (Claude, Cursor, Copilot) reaches the KB graph and the problem graph natively, not just over the CLI.

The throughline

Skills (v7.7.0) gave agents capabilities; ergonomics (v7.8.0) make those capabilities cheap to call. Structured output, reachable logs, a working MCP — small things that compound into an agent-native platform.

Grab the new kovanex-ctl / kovanex-mcp at /download.