Place a decision gate ahead of consequential actions

MCP tools may be discovered and called by a model, so applications should put a human decision point in front of actions where execution could matter. The MCP tools guidance favors making available tools visible, indicating when a call is occurring, and giving a person a way to refuse it.

Continue reading: Designing Prompt-Injection Defenses for Tool-Using Assistants.

Use MCP elicitation for information the tool still needs

A server can return an input-required response when a call cannot proceed without more details. The client may then obtain answers from the user and retry while carrying the relevant request state.

For ordinary structured fields, use elicitation form mode. Do not use that route for passwords, access tokens, API keys, or payment data: MCP reserves URL mode for sensitive exchanges that should occur outside the MCP client.

A careful client identifies the server making the request, lets the user cancel or decline, and permits review and editing of form answers. Before opening a URL flow, it should expose the destination host and seek consent.

Enforce pauses in the execution runtime

In the OpenAI Agents SDK, a tool can be configured to need approval every time, or an asynchronous policy can decide based on the individual call. If a callable policy cannot safely inspect malformed arguments, the documented behavior is to require manual review rather than silently allow execution.

When a decision is needed, execution stops and an interruption exposes information such as the responsible agent, requested tool, and arguments. The application can turn the result into RunState, record approval or rejection, and continue the same top-level run.

An SDK approval can apply only to one call. Alternatively, a choice may stay active for later invocations of that tool within the current run; documentation indicates that serialized RunState preserves those durable choices.

Continue reading: Choosing Conversation State and Runtime Context in the OpenAI Agents SDK.

Choose the layer that owns the approval experience

Protocol-level MCP guidance describes an opportunity for human refusal but leaves the interface design to the implementation. By contrast, the SDK describes runtime mechanisms for interruption, decision handling, and continuation.

For delegated work, decide whether the outer agent tool, the nested agent execution, or both need review. The SDK documents nested interruptions being surfaced through the outer run, which supports a single RunState-based handling path.

Limits and change-management notes

The MCP materials in this source set are draft specification pages, so their requirements and examples can change. The supplied material does not establish a publication date, a final protocol version, or behavior beyond the available excerpt.

This guidance is an architectural starting point rather than evidence of a tested integration.