From 6bbf2e34e77fb0daf8c16ebc811a1f63e21f5c9e Mon Sep 17 00:00:00 2001 From: Kit Langton Date: Thu, 27 Aug 2026 19:26:40 -0400 Subject: [PATCH] refactor(core): parse MCP prompt arguments once (#45646) --- packages/core/src/plugin/command.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/core/src/plugin/command.ts b/packages/core/src/plugin/command.ts index 4cc8f9380d9..a690d65c50f 100644 --- a/packages/core/src/plugin/command.ts +++ b/packages/core/src/plugin/command.ts @@ -58,14 +58,12 @@ export const Plugin = define({ description: prompt.description, execute: (input) => Effect.gen(function* () { + const args = parseArguments(input.prompt.text) const result = yield* mcp.prompt({ server: prompt.server, name: prompt.name, args: Object.fromEntries( - (prompt.arguments ?? []).map((argument, index) => [ - argument.name, - parseArguments(input.prompt.text)[index] ?? "", - ]), + (prompt.arguments ?? []).map((argument, index) => [argument.name, args[index] ?? ""]), ), }) if (!result) return yield* Effect.fail(new Error(`MCP prompt not found: ${prompt.server}:${prompt.name}`))