· via dev.to (home feed)
Breeze v2 repositions Go web framework as AI-first platform with built-in MCP
Breeze v2 turns the event-driven Go web framework into an AI-first application platform, with MCP built into the framework, a read-only production mode for agents, and ordinary routes that double as agent-callable tools.

Breeze, an event-driven web framework for Go built on the gnet networking library, has been repositioned in its second major version as an AI-first application platform. In an announcement on dev.to, the project's author describes v2 as a system in which AI agents, APIs, services, workflows, observability and runtime infrastructure are all treated as primary design concerns, rather than a web framework with an AI layer wrapped around it.
From web framework to application platform
The post's core argument is architectural. Most backends were designed for human clients and internal services, and the arrival of agents has pushed teams to bolt on extra layers: a standalone MCP server, a second authentication system, additional API adapters, and a separate path for exposing tools and inspecting production. The author considers this backwards — if agents are becoming major consumers of software, the framework itself should understand them from the start.
According to the dev.to announcement, Breeze v2 is organised around three components: MCP, which gives agents a standardised interface into the application; Fleet, a unified observability and tracing layer aimed at distributed systems; and a runtime that ties everything together and handles application control.
An agent that can operate, not just generate
MCP is not a plugin in Breeze — it is part of the framework itself. The first exposure mode, launched with breeze-mcp --mode=generator, offers roughly 40 tools intended for development agents. As listed in the post, these cover scaffolding projects, generating resources, wiring framework features, planning change sets, running the Go toolchain, inspecting services, routes, errors, logs, performance and traces, detecting contract violations, diagnosing services, and Docker-aware fleet provisioning.
The framing matters: instead of an agent guessing how a project is structured, it receives a defined set of capabilities. The author's stated ambition is to move past simple code generation toward compound requests — build a service, expose it, run tests, inspect the result and report problems — following a loop of understanding, planning, generating, building, running, inspecting, diagnosing, changing and verifying.
Production access is read-only by construction
A second mode, --mode=app-runtime, exposes a running system to agents but is read-only. The post highlights a design choice with clear security implications: mutating tools are not merely hidden behind a permission check — they are never registered in the first place. A production agent can inspect, diagnose, observe and analyse, but there is no mutation surface sitting there waiting to be triggered by mistake. The author argues this is the kind of boundary AI infrastructure needs.
In-process MCP and routes that become tools
Two further capabilities round out the design. MCP can be embedded directly inside a Breeze application, so an app can host its own MCP control plane alongside normal HTTP traffic without running a separate MCP process — same application, same runtime, different consumers, with a capability scope, port and token configured in code.
The other, which the author calls Auto-MCP, lets developers make an existing route callable by an agent simply by tagging it, for example with breeze.MCPTool("create_order", "Places an order for a customer."). Untagged routes are not exposed. Crucially, the resulting tool call goes through the same middleware chain as HTTP, so authentication and other middleware still apply. The post stresses that Auto-MCP does not bypass the application's architecture — there is no duplicated handler for agents, just one route serving both humans and models.
Why it matters
Breeze v2 is an early, concrete attempt to answer a question many platform teams are now asking: what does a backend look like if agents are expected clients rather than an afterthought? Three details stand out. Reusing the HTTP middleware chain means auth, validation and rate limiting extend to agent calls automatically, closing a common gap when teams build separate tool servers. Not registering mutating tools in production mode is a stronger guarantee than a permission flag, since the dangerous capability simply does not exist at runtime. And route-level opt-in keeps the agent surface explicit rather than exposing everything by default.
The obvious caveat is that this is a first-party announcement: the tool counts, security properties and architectural claims all come from the project's own dev.to post, and real-world maturity remains to be demonstrated. Still, as a design signal for where backend frameworks may be heading, it is a story worth tracking.
- #go
- #mcp
- #ai-agents
- #open-source
- #developer-tools