id: string

The unique ID of the tool call.

arguments: string

A JSON string of the arguments passed to the tool.

name: string

The name of the tool that was run.

server_label: string

The label of the MCP server running the tool.

type: "mcp_call"

The type of the item. Always mcp_call.

agent?: Agent | null

The agent that produced this item.

agent_name: string

The canonical name of the agent that produced this item.

approval_request_id?: string | null

Unique identifier for the MCP tool call approval request. Include this value in a subsequent mcp_approval_response input to approve or reject the corresponding tool call.

error?: BetaMcpToolCallError | null

The error from the tool call, if any.

One of the following:
McpProtocolError { code, message, type }
code: number
message: string
type: "mcp_protocol_error"
McpToolExecutionError { content, type }
content: unknown
type: "mcp_tool_execution_error"
HTTPError { code, message, type }
code: number
message: string
type: "http_error"
output?: string | null

The output from the tool call.

status?: "in_progress" | "completed" | "incomplete" | 2 more

The status of the tool call. One of in_progress, completed, incomplete, calling, or failed.

One of the following:
"in_progress"
"completed"
"incomplete"
"calling"
"failed"