mirror of
https://github.com/openai/codex.git
synced 2026-10-30 19:18:49 +00:00
Fix regression 2
This commit is contained in:
@@ -38,7 +38,6 @@ pub enum ToolPayload {
|
||||
Mcp {
|
||||
server: String,
|
||||
tool: String,
|
||||
arguments: Option<serde_json::Value>,
|
||||
raw_arguments: String,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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,
|
||||
},
|
||||
}))
|
||||
|
||||
Reference in New Issue
Block a user