Confirm this is a Node library issue and not an underlying OpenAI API issue
Describe the bug
There's a type mistake in the mcp_call response output item. The type of item.error says it should be string | null, but I received an object with multiple properties. Not sure if the issue is the type definition, or if the error wasn't turned into a string somewhere else.
Here's the type definition of McpCall:
export interface McpCall {
/**
* The unique ID of the tool call.
*/
id: string;
/**
* A JSON string of the arguments passed to the tool.
*/
arguments: string;
/**
* The name of the tool that was run.
*/
name: string;
/**
* The label of the MCP server running the tool.
*/
server_label: string;
/**
* The type of the item. Always `mcp_call`.
*/
type: 'mcp_call';
/**
* The error from the tool call, if any.
*/
error?: string | null;
/**
* The output from the tool call.
*/
output?: string | null;
}
And here's an mcp_call item I just got from the responses API:
const item = {
id: 'mcp_68653a694bec8198a308e96e37ba509b09483f21bc1f2ea7',
type: 'mcp_call',
approval_request_id: null,
arguments: '{"query":"latest tech gadgets"}',
error: {
type: 'mcp_protocol_error',
code: 32600,
message: 'Session terminated'
},
name: 'search',
output: null,
server_label: 'my-mcp-server'
}
To Reproduce
Use the responses API like this:
const response = await openaiClient.responses.create({
input: "Hello world, please call a tool",
model: 'gpt-4o',
tools: [
{
require_approval: 'never',
server_label: 'my-mcp-server',
server_url: mcpServerUrl,
type: 'mcp',
},
],
});
Have a failing MCP server (not sure what the actual underlying Session terminated error is) that generated this kind of error.
Code snippets
OS
macOS
Node version
v20
Library version
openai v5.8.2
Confirm this is a Node library issue and not an underlying OpenAI API issue
Describe the bug
There's a type mistake in the
mcp_callresponse output item. The type of item.error says it should bestring | null, but I received an object with multiple properties. Not sure if the issue is the type definition, or if the error wasn't turned into a string somewhere else.Here's the type definition of
McpCall:And here's an mcp_call item I just got from the responses API:
To Reproduce
Use the responses API like this:
Have a failing MCP server (not sure what the actual underlying Session terminated error is) that generated this kind of error.
Code snippets
OS
macOS
Node version
v20
Library version
openai v5.8.2