The Four Gates Between a Tool Call and a Business Outcome
A tool call that returns success is not proof an action happened. The four-gate chain shows what AI agents must verify before it counts.
Yash Sharma5 min readAgentic AI in production
Research area 19: Tool, agent-computer-interface and protocol engineering
In brief
- A tool call that returns success is not proof the action happened.
- The four-gate action chain checks valid, invoked, authorized and verified separately.
- Skipping the verified gate causes duplicate effects and unaudited pass rates leaders trust wrongly.
Tool, agent-computer-interface and protocol engineering decides whether an AI agent's action actually happened, not just whether its call returned successfully. A tool that parses, executes and reports success can still leave the wrong record in a production system, or none at all, and a retry can duplicate the very effect it was checking for. Executives funding agents that touch payments, claims, tickets or inventory need to know that schema validity, successful invocation and a completed outcome are three separate questions.
What it is
A tool schema describes what an agent can call and what its arguments and results look like. An action contract sits above it: the preconditions that make a call safe, the authority it needs, the side effects it causes, and the postcondition that proves it worked. An agent-computer interface is how the model sees all of this. A protocol standardizes how the exchange travels between a model and a server, or between two agents, and an adapter translates its promises into what a specific backend actually does.
Four principles hold this together. Idempotency is not the same as reliable delivery: a repeatable operation still needs a mechanism that knows whether it was already sent. Cancellation requests termination, it does not undo what already committed. A protocol version string proves nothing about deployed behavior, an adapter has to be tested against what a provider actually implements. Tool results are data the agent reads, not instructions with authority: a result telling the model to grant itself a new permission should never be honored just because it arrived inside a tool response.
The architecture
I call the discipline that closes this gap the four-gate action chain: valid, invoked, authorized, verified. Each gate is a separate question with its own evidence, and a call only counts once it has cleared all four.

Valid asks whether the call parses and its arguments satisfy the schema. Invoked asks whether the call actually reached the backend and executed there, something a client can fail to know if the acknowledgment is lost in transit. Authorized asks whether the principal holds the authority for that specific action, checked outside the model's own text so a tool result can never grant itself a new permission. Verified asks whether backend state changed as intended, confirmed independently rather than inferred from a success flag the tool itself returned.
The gate skipped most often is the fourth. In a funds transfer where the backend commits it but the acknowledgment never reaches the client, the client sees the same timeout it would see had the transfer never happened, so a blind retry can duplicate it. The correct move is to query durable status before retrying anything not provably idempotent. An idempotency key must bind principal, operation, target and payload together, and a request reusing a key with a different payload must be rejected outright.
Two 2026 protocol revisions show this cannot be delegated to the wire format. The Model Context Protocol's July 28, 2026 release made its core stateless and self-describing and moved durable Tasks into an optional extension. The Agent-to-Agent protocol's 1.0 specification, released March 12, 2026 and patched in May, leaves Send Message idempotency optional rather than guaranteed. Both standardize how an exchange travels. Neither guarantees a duplicate-free outcome, so the fourth gate has to live in the application, not the protocol.
The same reasoning covers tool catalogs. A catalog of a thousand tools averaging 120 description tokens each costs about 120,000 tokens before an agent does anything. Discovery narrowing that to eight candidates cuts it to under a thousand tokens, arithmetic that says nothing about the case where the one tool needed was not among the candidates retrieved.
Ownership belongs jointly to whoever owns the product decision an agent may act on and whoever owns the security boundary it crosses, not a platform team alone: both must sign off before a tool goes live. Fund a durable operation-status store, adapter conformance tests against each provider's actual edge cases, and authorization enforcement that lives outside anything the model can read or write. Treat a clean test run with caution: with zero failures across thirty trials, the underlying failure rate could still be roughly 9.5 percent, and it takes closer to three hundred clean trials to bound that risk near 1 percent. Stop granting any tool broad execution authority beyond what the task requires, and stop accepting an optional-idempotency operation, such as A2A's Send Message, into a financially or clinically consequential workflow without a durable status check of your own.
Two calls belong to the executive alone: which capabilities may carry side-effecting authority at all, since that list defines an agent program's blast radius, and the tolerance for unknown outcomes, how long a system may sit unresolved before it escalates to a person rather than whichever engineer wrote the retry logic.
What it is worth
Money, risk and time show up in three places: duplicate side effects from a retried action never confirmed, decisions made on a pass rate never checked against ground truth, and the token cost of a catalog sized for convenience rather than what a task needs. A mid-2026 validity audit had three human experts spend 89 hours checking 496 tool-calling tasks across four benchmarks and found the automated grader disagreed with them 18.5 percent of the time, evidence that an unaudited pass rate is not proof of anything.
Measure before and after against the baselines the research uses: a small tool set on one backend, the full catalog with no discovery layer, and a durable status lookup added to the workflow. Track completion through all four gates separately, since a rising number on one can mask a falling number on another.
The 2026 evidence supports testing failure and recovery at every gate and treating a pass rate as a hypothesis, not a fact. It does not support a claim that any current protocol guarantees exactly-once effects across arbitrary providers, and no such figure, and no return-on-investment number, belongs in this essay.
Questions leaders ask
- What is tool, agent-computer-interface and protocol engineering, in practical terms?
- It is the discipline of making sure an AI agent's call to a tool, server or another agent produces a real, verified business outcome, not just a parsed request and a success message. It covers the schema an agent calls against, the authority that call needs, and the protocol layer, such as MCP or A2A, that carries the exchange between the model and the backend that actually executes it.
- Does a tool call returning success mean the action actually happened?
- Not on its own. The four-gate action chain treats a completed action as four separate questions: whether the call was schema-valid, whether it reached the backend, whether the caller was actually authorized, and whether the real backend state changed as intended. A returned success message is evidence for the last question, not proof of it, and should be checked independently before a business decision relies on it.
- What do the 2026 MCP and A2A protocol updates actually guarantee?
- Less than a version number suggests. MCP's July 28, 2026 release made its core stateless and self-describing and moved durable Tasks into an optional extension. The A2A 1.0 specification from March 2026, patched in May, leaves its Send Message operation's idempotency optional rather than guaranteed. Both standardize how an exchange travels. Neither guarantees a duplicate-free business transaction on its own.
- Should an agent retry a tool call that timed out?
- Not automatically. A lost acknowledgment looks identical to a request that never arrived, so a blind retry on a non-idempotent action can duplicate a committed effect such as a payment or a record update. The safer path is to query durable status or reconcile the actual effect first, and to require any idempotency key to bind the principal, operation, target and payload together before it is trusted.
- How many tools should an AI agent's catalog expose at once?
- There is no universal threshold. A catalog of a thousand tools can cost around 120,000 description tokens before an agent does anything, and narrowing that through discovery to a handful of candidates cuts that cost sharply, but only if the one tool the task actually needs is still among the candidates retrieved. Filter by authority before relevance, and record which catalog version an agent searched.


