summaryrefslogtreecommitdiff
path: root/packages/core/src/prompts/prompt-registry.ts
diff options
context:
space:
mode:
authorRamón Medrano Llamas <[email protected]>2025-08-05 23:59:31 +0200
committerGitHub <[email protected]>2025-08-05 21:59:31 +0000
commit29c3825604fdc82b483902bf79f204673e2dfdae (patch)
tree5c73f8937ad4ee52948b66f558136dddf5a9c86e /packages/core/src/prompts/prompt-registry.ts
parentfaf6a5497a7fd902edb4dfd0941c4157edb62dd5 (diff)
fix(mcp): clear prompt registry on refresh to prevent duplicates (#5385)
Co-authored-by: Jacob Richman <[email protected]> Co-authored-by: Sandy Tao <[email protected]>
Diffstat (limited to 'packages/core/src/prompts/prompt-registry.ts')
-rw-r--r--packages/core/src/prompts/prompt-registry.ts18
1 files changed, 18 insertions, 0 deletions
diff --git a/packages/core/src/prompts/prompt-registry.ts b/packages/core/src/prompts/prompt-registry.ts
index 56699130..a94183ac 100644
--- a/packages/core/src/prompts/prompt-registry.ts
+++ b/packages/core/src/prompts/prompt-registry.ts
@@ -53,4 +53,22 @@ export class PromptRegistry {
}
return serverPrompts.sort((a, b) => a.name.localeCompare(b.name));
}
+
+ /**
+ * Clears all the prompts from the registry.
+ */
+ clear(): void {
+ this.prompts.clear();
+ }
+
+ /**
+ * Removes all prompts from a specific server.
+ */
+ removePromptsByServer(serverName: string): void {
+ for (const [name, prompt] of this.prompts.entries()) {
+ if (prompt.serverName === serverName) {
+ this.prompts.delete(name);
+ }
+ }
+ }
}