Implementation:Openai Openai python Response MCP Call Failed
| Knowledge Sources | |
|---|---|
| Domains | API_Types, Responses_API |
| Last Updated | 2026-02-15 00:00 GMT |
Overview
Concrete streaming event type for signaling that an MCP tool call has failed provided by the openai-python SDK.
Description
ResponseMcpCallFailedEvent is a Pydantic model emitted when an MCP tool call has failed. It carries the item_id identifying the MCP tool call item that failed, the output_index indicating which output item failed, and a sequence_number for event ordering. The type field is always "response.mcp_call.failed".
Usage
Import this type when building streaming event handlers that need to detect and handle MCP tool call failures, for example to log errors or retry the operation.
Code Reference
Source Location
- Repository: openai-python
- File: src/openai/types/responses/response_mcp_call_failed_event.py
Signature
class ResponseMcpCallFailedEvent(BaseModel):
"""Emitted when an MCP tool call has failed."""
item_id: str
output_index: int
sequence_number: int
type: Literal["response.mcp_call.failed"]
Import
from openai.types.responses import ResponseMcpCallFailedEvent
I/O Contract
Fields
| Name | Type | Required | Description |
|---|---|---|---|
| item_id | str | Yes | The ID of the MCP tool call item that failed. |
| output_index | int | Yes | The index of the output item that failed. |
| sequence_number | int | Yes | The sequence number of this event. |
| type | Literal["response.mcp_call.failed"] | Yes | The type of the event. Always response.mcp_call.failed.
|
Usage Examples
import openai
client = openai.OpenAI()
stream = client.responses.create(
model="gpt-4o",
input="Use the MCP tool to fetch data.",
stream=True,
)
for event in stream:
if event.type == "response.mcp_call.failed":
print(f"MCP call FAILED: item {event.item_id} "
f"at output index {event.output_index}")