approve tool; when an action needs a checkpoint, the agent raises a proposal and links you to the transition console in the dashboard.
The Changes surface is enabled per organization — if you don’t see Changes in the dashboard sidebar, it isn’t enabled for your organization yet.
Connect
Traffical provides your organization’s MCP endpoint during onboarding — reach out if you don’t have it yet.Claude Code
/mcp inside Claude Code to authenticate or check connection status.
Other MCP clients
Any MCP client that supports streamable HTTP with OAuth discovery works zero-config. Point it at your organization’s MCP endpoint; the first 401 response carries aWWW-Authenticate header pointing at the server’s OAuth discovery document (/.well-known/oauth-protected-resource on the endpoint’s origin), which names the authorization server, and the client runs the standard OAuth flow from there.
Two transport details for client authors:
- The server speaks plain JSON-RPC 2.0 over
POST /mcp— no sessions, no SSE streams (GET /mcpreturns405). - OAuth tokens are audience-bound (RFC 8707): the token must be minted for the MCP resource. Clients that follow the discovery flow get this right automatically.
API key (headless agents, CI)
For agents that can’t run a browser flow, use a management API key as a plain bearer token. The scope on the key decides what it can do:mgmt:read scope; write scopes are granted deliberately. See API key types for how scopes work.
Scopes
Three write scopes sit on top of the read scopes.tools/list is scope-filtered, so a token only sees the tools its scopes permit.
You never mint these fine-grained scopes directly — they come from the coarse scope on the key, or from your role over OAuth.
mgmt:read grants every :read scope; mgmt:operate (the Lifecycle Operate Key preset) grants all three write scopes; admin (Full Access) grants everything. A plain mgmt:write key grants none of the write scopes, and over OAuth only admins and owners carry them — members and viewers connect read-only. See API key scopes.
Scope is the durable ceiling; the autonomy resolver narrows it again at runtime, per action.
Tools
Read tools
preview_transition and get_autonomy are advisory — they show what would happen and why, but change nothing. Omit kind on preview_transition to preview the natural next step.
Write tools
These appear intools/list only when the token carries the scope.
How writes are governed
Even with a write scope, no transition executes unconditionally. The autonomy resolver evaluates each request and returnsexecute or propose, weighing the caller’s scope, the change’s computed risk class, the action’s direction (risk-decreasing actions like revert are always auto-eligible), guardrail breaches, and whether measured evidence meets the plan’s minimums — agent assessments never satisfy that gate. Approvals and autonomy covers the full model.
Three connection-level guarantees:
- No
approvetool. Approval happens only in the dashboard transition console, which makes it structurally human. Aproposedresult carries aconsoleUrldeep link for review. - No certified protocol, no traffic. A change whose plan matches no certified measurement protocol cannot begin serving traffic until a human approves a measurement plan.
- Everything is audited. Every MCP-originated write lands on the decision log as “Agent, on behalf of
<human>, via MCP.”
Write mode
Lifecycle transitions are off by default. A global write mode gates every transition —request_transition, and create_change’s optional start — with per-organization enablement on top; the effective mode is the lower of the two:
Write mode governs the actions that move traffic. The advisory writes — drafting changes, assessments, annotations, evidence refreshes, approval requests — serve no traffic and are bounded by their scopes instead, so they work in any mode.
Read-only tokens carry no write scope and cannot be replayed against write tools; every tool enforces the same per-project access checks as the management API.
Companion agent skill
For Claude-family agents, the open-sourcetraffical-changes skill (github.com/traffical/skills) teaches the agent to use these tools well — and to respect the boundary that humans own approvals:
Next steps
Changes
What a change is and how its measured lifecycle works.
Approvals and autonomy
The full governance model behind execute vs propose.
Agent Skill
The build-time skill: setup, parametrizing code, SDK wiring, events.
API overview
API key scopes and how authentication works.