diff --git a/axhub-common/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java b/axhub-common/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java index 0ea23cd..7e9ba26 100644 --- a/axhub-common/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java +++ b/axhub-common/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java @@ -38,8 +38,8 @@ public class ToolMetadata { // 1. Tool 기본 정보 private String uid; // UUID 형식의 고유 식별자 private String semver; // 버전 (예: 1.0.0) - private String name; // 사람이 읽는 라벨 (1-128자) - private String subToolName; // MCP 서브툴 명칭 (64자 이하, 예: CustomerSearchTool) + private String displayName; // 사람이 읽는 라벨 (1-128자) + private String name; // MCP 서브툴 명칭 (64자 이하, 예: CustomerSearchTool) private String description; // 툴의 목적 및 설명 (LLM 프롬프트에 활용 가능) // 2. 파라미터 스키마 (JSON Schema 형태의 Map) diff --git a/axhub-common/src/main/java/io/shinhanlife/axhub/common/util/PodScaffolder.java b/axhub-common/src/main/java/io/shinhanlife/axhub/common/util/PodScaffolder.java index 029b606..f484105 100644 --- a/axhub-common/src/main/java/io/shinhanlife/axhub/common/util/PodScaffolder.java +++ b/axhub-common/src/main/java/io/shinhanlife/axhub/common/util/PodScaffolder.java @@ -160,8 +160,7 @@ public class PodScaffolder { # API 보안 키 설정 mcp.security.api-keys.SHINHAN_MCP_SECRET_KEY_2026=mcp-client-1 - mcp.security.api-keys.SHINHAN_MCP_TEST_KEY_9999=mcp-client-2 - mcp.security.tenant-domains.mcp-client-1=CUSTOMER,COMMON + mcp.security.tenant-domains.mcp-client-1=CUSTOMER,COMMON mcp.security.tenant-domains.mcp-client-2=ALL # Gateway/Tool URLs diff --git a/axhub-gateway/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java b/axhub-gateway/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java index 5b9827a..a1c8be3 100644 --- a/axhub-gateway/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java +++ b/axhub-gateway/src/main/java/io/shinhanlife/axhub/biz/mcp/gateway/dto/ToolMetadata.java @@ -38,8 +38,8 @@ public class ToolMetadata { // 1. Tool 기본 정보 private String uid; // UUID 형식의 고유 식별자 private String semver; // 버전 (예: 1.0.0) - private String name; // 사람이 읽는 라벨 (1-128자) - private String subToolName; // MCP 서브툴 명칭 (64자 이하, 예: CustomerSearchTool) + private String displayName; // 사람이 읽는 라벨 (1-128자) + private String name; // MCP 서브툴 명칭 (64자 이하, 예: CustomerSearchTool) private String description; // 툴의 목적 및 설명 (LLM 프롬프트에 활용 가능) // 2. 파라미터 스키마 (JSON Schema 형태의 Map) diff --git a/axhub-gateway/src/main/resources/static/admin/scaffold.html b/axhub-gateway/src/main/resources/static/admin/scaffold.html index 883bb40..71ad8fa 100644 --- a/axhub-gateway/src/main/resources/static/admin/scaffold.html +++ b/axhub-gateway/src/main/resources/static/admin/scaffold.html @@ -387,7 +387,7 @@
- +
@@ -515,8 +515,8 @@ ${t.categoryKey || 'UNKNOWN'} - - ${t.subToolName} + + ${t.name} ${badgeHtml} @@ -555,8 +555,8 @@ } let editModalInstance = null; - function openEditModal(subToolName, categoryKey, description, isReg) { - document.getElementById('editSubToolName').value = subToolName; + function openEditModal(toolName, categoryKey, description, isReg) { + document.getElementById('editToolName').value = toolName; document.getElementById('editCategoryKey').value = categoryKey !== 'null' ? categoryKey : ''; document.getElementById('editDescription').value = description; document.getElementById('editRegister').value = isReg ? 'true' : 'false'; @@ -568,7 +568,7 @@ } function submitToolUpdate() { - const subToolName = document.getElementById('editSubToolName').value; + const toolName = document.getElementById('editToolName').value; const categoryKey = document.getElementById('editCategoryKey').value; const description = document.getElementById('editDescription').value; const register = document.getElementById('editRegister').value; @@ -582,7 +582,7 @@ method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ - subToolName: subToolName, + toolName: toolName, categoryKey: categoryKey, description: description, register: register diff --git a/axhub-gateway/src/main/resources/static/catalog.html b/axhub-gateway/src/main/resources/static/catalog.html index a99b6e4..3c2d890 100644 --- a/axhub-gateway/src/main/resources/static/catalog.html +++ b/axhub-gateway/src/main/resources/static/catalog.html @@ -317,7 +317,7 @@
${tool.integrationType || 'DIRECT'}
-

${tool.subToolName}

+

${tool.name}

${tool.description || '설명이 없습니다.'}

${paramHtml} diff --git a/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/dto/ToolMetadata.java b/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/dto/ToolMetadata.java index 01daa6e..cea597e 100644 --- a/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/dto/ToolMetadata.java +++ b/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/dto/ToolMetadata.java @@ -31,8 +31,8 @@ public class ToolMetadata { // 1. Tool 기본 정보 private String uid; // UUID 형식의 고유 식별자 private String semver; // 버전 (예: 1.0.0) - private String name; // 사람이 읽는 라벨 (1-128자) - private String subToolName; // MCP 서브툴 명칭 (64자 이하, 예: CustomerSearchTool) + private String displayName; // 사람이 읽는 라벨 (1-128자) + private String name; // MCP 서브툴 명칭 (64자 이하, 예: CustomerSearchTool) private String description; // 툴의 목적 및 설명 (LLM 프롬프트에 활용 가능) // 2. 파라미터 스키마 (JSON Schema 형태의 Map) diff --git a/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/service/ToolRegistryHeartbeatSender.java b/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/service/ToolRegistryHeartbeatSender.java index a1809e1..19576f3 100644 --- a/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/service/ToolRegistryHeartbeatSender.java +++ b/axhub-tool-core/src/main/java/io/shinhanlife/axhub/biz/mcp/tool/service/ToolRegistryHeartbeatSender.java @@ -93,8 +93,8 @@ public class ToolRegistryHeartbeatSender { ToolMetadata meta = new ToolMetadata(); meta.setUid(java.util.UUID.nameUUIDFromBytes(subToolName.getBytes()).toString()); - meta.setName(baseName); - meta.setSubToolName(subToolName); + meta.setDisplayName(baseName); + meta.setName(subToolName); meta.setSemver("1.0.0"); meta.setDescription(functionAnnotation.description()); meta.setCategoryKey(toolAnnotation.categoryKey());