From 7914f24d8312486caf76ac67e73ff08c22c0a6f4 Mon Sep 17 00:00:00 2001 From: jiah0231 <2243725197@cug.edu.cn> Date: Thu, 27 Aug 2026 10:31:18 +0800 Subject: [PATCH] fix: preserve dynamic MCP argument schemas --- server/src/cursor/tools/dispatch/mod.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/server/src/cursor/tools/dispatch/mod.rs b/server/src/cursor/tools/dispatch/mod.rs index 217c8de..53ce5c1 100644 --- a/server/src/cursor/tools/dispatch/mod.rs +++ b/server/src/cursor/tools/dispatch/mod.rs @@ -39,9 +39,6 @@ pub(super) async fn start( context: &ExecContext, store: Option<&Store>, ) -> Result { - let normalized_call = normalize_block_until_ms(call)?; - let call = normalized_call.as_ref().unwrap_or(call); - if let Some(definition) = dynamic_mcp.get(&call.name) { return exec::start_dynamic(runtime, call, definition, context).await; } @@ -54,6 +51,9 @@ pub(super) async fn start( return local::subagents_disabled(call); } + let normalized_call = normalize_block_until_ms(call)?; + let call = normalized_call.as_ref().unwrap_or(call); + match normalized(&call.name).as_str() { "shell" | "read" | "delete" | "grep" | "glob" | "readlints" | "task" | "callmcptool" | "fetchmcpresource" | "getmcptools" => exec::start(runtime, call, context).await,