diff --git a/codex-rs/core/src/tools/context.rs b/codex-rs/core/src/tools/context.rs index 43d25aa1f5..9bd8440399 100644 --- a/codex-rs/core/src/tools/context.rs +++ b/codex-rs/core/src/tools/context.rs @@ -38,7 +38,6 @@ pub enum ToolPayload { Mcp { server: String, tool: String, - arguments: Option, raw_arguments: String, }, } diff --git a/codex-rs/core/src/tools/handlers/mcp.rs b/codex-rs/core/src/tools/handlers/mcp.rs index 7c533fbbd7..17eae7ea7c 100644 --- a/codex-rs/core/src/tools/handlers/mcp.rs +++ b/codex-rs/core/src/tools/handlers/mcp.rs @@ -32,9 +32,8 @@ impl ToolHandler for McpHandler { ToolPayload::Mcp { server, tool, - arguments, raw_arguments, - } => (server, tool, arguments, raw_arguments), + } => (server, tool, raw_arguments), _ => { return Err(FunctionCallError::RespondToModel( "mcp handler received unsupported payload".to_string(), @@ -42,7 +41,7 @@ impl ToolHandler for McpHandler { } }; - let (server, tool, _arguments, raw_arguments) = payload; + let (server, tool, raw_arguments) = payload; let arguments_str = raw_arguments; let response = handle_mcp_tool_call( diff --git a/codex-rs/core/src/tools/router.rs b/codex-rs/core/src/tools/router.rs index 56d04fd62c..8ec02ccd71 100644 --- a/codex-rs/core/src/tools/router.rs +++ b/codex-rs/core/src/tools/router.rs @@ -53,22 +53,12 @@ impl Router { .. } => { if let Some((server, tool)) = session.parse_mcp_tool_name(&name) { - let parsed_arguments = if arguments.trim().is_empty() { - None - } else { - Some(serde_json::from_str(&arguments).map_err(|err| { - FunctionCallError::RespondToModel(format!( - "failed to parse tool call arguments: {err}" - )) - })?) - }; Ok(Some(ToolCall { tool_name: name, call_id, payload: ToolPayload::Mcp { server, tool, - arguments: parsed_arguments, raw_arguments: arguments, }, }))