From 411ff551ae7641dfc5c9331e99bf8b6e5770e2fa Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 30 十二月 2025 18:05:14 +0800
Subject: [PATCH] #mcp
---
src/main/java/com/zy/ai/mcp/dto/ToolRegistry.java | 30 ++++++++++++++++++++++++++++++
1 files changed, 30 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/ai/mcp/dto/ToolRegistry.java b/src/main/java/com/zy/ai/mcp/dto/ToolRegistry.java
new file mode 100644
index 0000000..1f44742
--- /dev/null
+++ b/src/main/java/com/zy/ai/mcp/dto/ToolRegistry.java
@@ -0,0 +1,30 @@
+package com.zy.ai.mcp.dto;
+
+import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
+
+public class ToolRegistry {
+ private final Map<String, ToolDefinition> tools = new ConcurrentHashMap<String, ToolDefinition>();
+
+ public void register(ToolDefinition def) {
+ tools.put(def.getName(), def);
+ }
+
+ public List<Map<String, Object>> listTools() {
+ List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
+ for (ToolDefinition def : tools.values()) {
+ list.add(def.toMcpToolJson());
+ }
+ // 涓轰簡绋冲畾杈撳嚭锛屾寜 name 鎺掑簭
+ Collections.sort(list, new Comparator<Map<String, Object>>() {
+ public int compare(Map<String, Object> a, Map<String, Object> b) {
+ return String.valueOf(a.get("name")).compareTo(String.valueOf(b.get("name")));
+ }
+ });
+ return list;
+ }
+
+ public ToolDefinition get(String name) {
+ return tools.get(name);
+ }
+}
--
Gitblit v1.9.1