CircleCI's CLI is now a Go rewrite with an MCP server bolted on CircleCI has rewritten its CLI from scratch in Go, shipping it as a 1.0 beta with a built-in MCP server for agent hosts like Claude, Cursor, and VS Code. The CLI emits JSON on every data-returning command, supports a --jq flag for inline querying, and includes a debugging TUI, structured error messages, and theme customization. CircleCI's design prioritizes human-first composability with opt-in piping, aiming to eliminate the rough edges that trip up coding agents. The last time I asked a coding agent to look at a failed CircleCI job for me, it burned three tool calls parsing --help output and still picked the wrong flag. I laughed, then I stopped laughing, because I do this a lot now and every wasted turn is a real second off my afternoon. So when CircleCI posted on July 7 that they had rebuilt the CLI from scratch in Go and shipped it as a 1.0 beta with an MCP server baked in, I read the whole thing. CircleCI's new CLI is a ground-up rewrite in Go, shipping as 1.0 beta and installable from cli.circleci.com. Per the post, every data-returning command emits JSON, the login is a browser OAuth flow with credentials in the system keyring, and there is a --jq flag built in so you can query the JSON payload without piping through another binary. There is also a debugging TUI built on charm/bubbletea, structured error messages with links back to the docs, theme customisation with a live preview, and respect for NO COLOR , PAGER , DO NOT TRACK and CI=true . CircleCI describes the design as human-first with composability opt-in: pretty in a terminal, plain and pipeable the moment you redirect output. The other headline is a first-party MCP server. circleci mcp claude enable , circleci mcp cursor enable and circleci mcp vscode enable wire the same binary up as an MCP transport for those three agent hosts, so your agent can call CircleCI directly instead of shelling out and hoping. If your day involves an agent that reads pipeline output and decides what to do next, "predictable JSON on every command" is not a marketing bullet. It is the difference between a loop that resolves in one turn and a loop that eats your afternoon by wording and rewording --help prompts. Stable exit codes do the same job for control flow: an agent that has learned "0 means green, anything else means fetch the JSON payload and look at the error" stops trying to parse ANSI colour codes as facts. CircleCI's own framing is that coding agents cannot guess around rough edges the way a human can, so the rough edges had to go. For the humans still in the loop, the same design gives you the composability you actually reach for when scripting a check. You can pipe into jq , or skip that and use --jq inline. Text at the terminal, JSON when you redirect stdout, no surprise ANSI in a log file. None of this is revolutionary. It is quietly correct, which is what I want from a CLI I run thirty times a day. Install from cli.circleci.com; per the post, packages are there for multiple platforms. circleci run list and circleci run get give you pipeline shape, and circleci job get drops into a specific job. circleci setting set theme opens the theme picker with a live preview if you care about that I do, more than I should . The MCP wire-up is a single subcommand per agent host: pick your editor, run circleci mcp