diff --git a/dat-was-cus/src/main/resources/application-local.yml b/dat-was-cus/src/main/resources/application-local.yml
index 202566779..0699708fc 100644
--- a/dat-was-cus/src/main/resources/application-local.yml
+++ b/dat-was-cus/src/main/resources/application-local.yml
@@ -7,8 +7,7 @@ spring:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-local.yml
datasource:
- url: jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
- driverClassName: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;
username: sa
password: password
h2:
diff --git a/dat-was-lib/build.gradle b/dat-was-lib/build.gradle
index 78d6bff22..c8c2cf0f0 100644
--- a/dat-was-lib/build.gradle
+++ b/dat-was-lib/build.gradle
@@ -31,7 +31,6 @@ dependencies {
// 현재 로컬 테스트 DB 및 SQL 로그 처리에 사용합니다.
api 'com.h2database:h2'
- api 'p6spy:p6spy:3.9.1'
// Spring Data Redis가 사용하는 Redis Client를 공통 모듈에서 직접 참조합니다.
api 'io.lettuce:lettuce-core:6.6.0.RELEASE'
diff --git a/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/config/P6SpySqlFormatter.java b/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/config/P6SpySqlFormatter.java
deleted file mode 100644
index 74200b162..000000000
--- a/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/config/P6SpySqlFormatter.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package io.shinhanlife.dat.lib.config;
-
-import com.p6spy.engine.logging.Category;
-import com.p6spy.engine.spy.appender.MessageFormattingStrategy;
-
-/**
- * @package io.shinhanlife.dat.lib.config
- * @className P6SpySqlFormatter
- * @description AX HUB 시스템 처리 클래스
- * @author 0986406
- * @create 2026.09.01
- *
- * ---------- 개정이력 ----------
- * 수정일 수정자 수정내용
- * ---------- -------- ---------------------------
- * 2026.09.01 0986406 최초생성
- *
- *
- */
-public class P6SpySqlFormatter implements MessageFormattingStrategy {
-
- @Override
- public String formatMessage(int connectionId, String now, long elapsed,
- String category, String prepared, String sql, String url) {
-
- if (sql == null || sql.isBlank()) return "";
- if (Category.STATEMENT.getName().equals(category)) {
-
- String prettySQL = sql
- .replaceAll("(?i)\\bSELECT\\b", "\nSELECT")
- .replaceAll("(?i)\\bFROM\\b", "\n FROM")
- .replaceAll("(?i)\\bWHERE\\b", "\n WHERE")
- .replaceAll("(?i)\\bAND\\b", "\n AND")
- .replaceAll("(?i)\\bOR\\b", "\n OR")
- .replaceAll("(?i)\\bINNER JOIN\\b", "\n INNER JOIN")
- .replaceAll("(?i)\\bLEFT JOIN\\b", "\n LEFT JOIN")
- .replaceAll("(?i)\\bORDER BY\\b", "\n ORDER BY")
- .replaceAll("(?i)\\bGROUP BY\\b", "\n GROUP BY")
- .replaceAll("(?i)\\bINSERT INTO\\b", "\nINSERT INTO")
- .replaceAll("(?i)\\bVALUES\\b", "\n VALUES")
- .replaceAll("(?i)\\bUPDATE\\b", "\nUPDATE")
- .replaceAll("(?i)\\bSET\\b", "\n SET")
- .replaceAll("(?i)\\bDELETE FROM\\b", "\nDELETE FROM");
-
- return String.format("""
- \n┌─────────────────────────────────────────
- │ SQL [%dms]
- │%s
- └─────────────────────────────────────────
- """, elapsed, prettySQL.indent(2).stripTrailing());
- }
- return "";
- }
-}
\ No newline at end of file
diff --git a/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/util/PodScaffolder.java b/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/util/PodScaffolder.java
index 4d353e519..d4754f016 100644
--- a/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/util/PodScaffolder.java
+++ b/dat-was-lib/src/main/java/io/shinhanlife/dat/lib/util/PodScaffolder.java
@@ -156,8 +156,7 @@ public class PodScaffolder {
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-local.yml
datasource:
- url: jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
- driverClassName: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;
username: sa
password: password
h2:
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/dto/AgentToolRequest.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/dto/AgentToolRequest.java
deleted file mode 100644
index fa29a47ba..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/dto/AgentToolRequest.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.dto;
-
-import lombok.Data;
-import org.springaicommunity.mcp.annotation.McpToolParam;
-
-@Data
-public class AgentToolRequest {
- @McpToolParam(description = "설계사번호", required = false)
- private String agentId;
-
- @McpToolParam(description = "GA 조직번호", required = false)
- private String organizationId;
-
- @McpToolParam(description = "조회 기준일(YYYY-MM-DD)", required = false)
- private String queryDate;
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/dto/AgentToolResponse.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/dto/AgentToolResponse.java
deleted file mode 100644
index f9821672e..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/dto/AgentToolResponse.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.dto;
-
-import java.util.List;
-import lombok.Data;
-
-@Data
-public class AgentToolResponse {
- private String toolName;
- private String category;
- private String referenceId;
- private String status;
- private String summary;
- private String asOfDate;
- private List details;
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/AgentInquiryUseCase.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/AgentInquiryUseCase.java
deleted file mode 100644
index 883ae1046..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/AgentInquiryUseCase.java
+++ /dev/null
@@ -1,152 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.usecase;
-
-import io.shinhanlife.dat.lib.annotation.GrowToolHint;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolRequest;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolResponse;
-import org.springaicommunity.mcp.annotation.McpTool;
-
-public interface AgentInquiryUseCase {
- @McpTool(name = "agt_agent_profile", title = "GA 설계사 기본정보 조회", description = "GA 설계사 기본정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_AGENT_PROFILE",
- functionDescription = "GA 설계사 기본정보 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 기본정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 기본정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 기본정보 조회 정보를 보여줘", "GA 설계사 기본정보 조회 결과를 확인해줘", "현재 GA 설계사 기본정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getAgentProfile(AgentToolRequest request);
-
- @McpTool(name = "agt_appointment_status", title = "GA 설계사 위촉상태 조회", description = "GA 설계사 위촉상태 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_APPOINTMENT_STATUS",
- functionDescription = "GA 설계사 위촉상태 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 위촉상태 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 위촉상태 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 위촉상태 조회 정보를 보여줘", "GA 설계사 위촉상태 조회 결과를 확인해줘", "현재 GA 설계사 위촉상태 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getAppointmentStatus(AgentToolRequest request);
-
- @McpTool(name = "agt_agent_license", title = "GA 설계사 자격정보 조회", description = "GA 설계사 자격정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_AGENT_LICENSE",
- functionDescription = "GA 설계사 자격정보 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 자격정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 자격정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 자격정보 조회 정보를 보여줘", "GA 설계사 자격정보 조회 결과를 확인해줘", "현재 GA 설계사 자격정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getAgentLicense(AgentToolRequest request);
-
- @McpTool(name = "agt_commission_grade", title = "GA 설계사 수수료등급 조회", description = "GA 설계사 수수료등급 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_COMMISSION_GRADE",
- functionDescription = "GA 설계사 수수료등급 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 수수료등급 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 수수료등급 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 수수료등급 조회 정보를 보여줘", "GA 설계사 수수료등급 조회 결과를 확인해줘", "현재 GA 설계사 수수료등급 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getCommissionGrade(AgentToolRequest request);
-
- @McpTool(name = "agt_agent_education", title = "GA 설계사 교육이력 조회", description = "GA 설계사 교육이력 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_AGENT_EDUCATION",
- functionDescription = "GA 설계사 교육이력 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 교육이력 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 교육이력 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 교육이력 조회 정보를 보여줘", "GA 설계사 교육이력 조회 결과를 확인해줘", "현재 GA 설계사 교육이력 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getAgentEducation(AgentToolRequest request);
-
- @McpTool(name = "agt_agent_compliance", title = "GA 설계사 준법정보 조회", description = "GA 설계사 준법정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_AGENT_COMPLIANCE",
- functionDescription = "GA 설계사 준법정보 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 준법정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 준법정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 준법정보 조회 정보를 보여줘", "GA 설계사 준법정보 조회 결과를 확인해줘", "현재 GA 설계사 준법정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getAgentCompliance(AgentToolRequest request);
-
- @McpTool(name = "agt_customer_assignment", title = "GA 설계사 고객배정 조회", description = "GA 설계사 고객배정 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_CUSTOMER_ASSIGNMENT",
- functionDescription = "GA 설계사 고객배정 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 고객배정 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 고객배정 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 고객배정 조회 정보를 보여줘", "GA 설계사 고객배정 조회 결과를 확인해줘", "현재 GA 설계사 고객배정 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getCustomerAssignment(AgentToolRequest request);
-
- @McpTool(name = "agt_activity_status", title = "GA 설계사 활동상태 조회", description = "GA 설계사 활동상태 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_ACTIVITY_STATUS",
- functionDescription = "GA 설계사 활동상태 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 활동상태 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 활동상태 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 활동상태 조회 정보를 보여줘", "GA 설계사 활동상태 조회 결과를 확인해줘", "현재 GA 설계사 활동상태 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getActivityStatus(AgentToolRequest request);
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/AgentPerformanceUseCase.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/AgentPerformanceUseCase.java
deleted file mode 100644
index be0a67cde..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/AgentPerformanceUseCase.java
+++ /dev/null
@@ -1,170 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.usecase;
-
-import io.shinhanlife.dat.lib.annotation.GrowToolHint;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolRequest;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolResponse;
-import org.springaicommunity.mcp.annotation.McpTool;
-
-public interface AgentPerformanceUseCase {
- @McpTool(name = "agt_production_summary", title = "GA 설계사 신계약 실적 조회", description = "GA 설계사 신계약 실적 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_PRODUCTION_SUMMARY",
- functionDescription = "GA 설계사 신계약 실적 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 신계약 실적 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 신계약 실적 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 신계약 실적 조회 정보를 보여줘", "GA 설계사 신계약 실적 조회 결과를 확인해줘", "현재 GA 설계사 신계약 실적 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getProductionSummary(AgentToolRequest request);
-
- @McpTool(name = "agt_contract_count", title = "GA 설계사 계약건수 조회", description = "GA 설계사 계약건수 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_CONTRACT_COUNT",
- functionDescription = "GA 설계사 계약건수 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 계약건수 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 계약건수 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 계약건수 조회 정보를 보여줘", "GA 설계사 계약건수 조회 결과를 확인해줘", "현재 GA 설계사 계약건수 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getContractCount(AgentToolRequest request);
-
- @McpTool(name = "agt_premium_summary", title = "GA 설계사 보험료 실적 조회", description = "GA 설계사 보험료 실적 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_PREMIUM_SUMMARY",
- functionDescription = "GA 설계사 보험료 실적 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 보험료 실적 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 보험료 실적 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 보험료 실적 조회 정보를 보여줘", "GA 설계사 보험료 실적 조회 결과를 확인해줘", "현재 GA 설계사 보험료 실적 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getPremiumSummary(AgentToolRequest request);
-
- @McpTool(name = "agt_persistency_rate", title = "GA 설계사 계약유지율 조회", description = "GA 설계사 계약유지율 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_PERSISTENCY_RATE",
- functionDescription = "GA 설계사 계약유지율 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 계약유지율 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 계약유지율 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 계약유지율 조회 정보를 보여줘", "GA 설계사 계약유지율 조회 결과를 확인해줘", "현재 GA 설계사 계약유지율 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getPersistencyRate(AgentToolRequest request);
-
- @McpTool(name = "agt_claim_support", title = "GA 보험금 청구지원 현황 조회", description = "GA 보험금 청구지원 현황 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_CLAIM_SUPPORT",
- functionDescription = "GA 보험금 청구지원 현황 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 보험금 청구지원 현황 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 보험금 청구지원 현황 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 보험금 청구지원 현황 조회 정보를 보여줘", "GA 보험금 청구지원 현황 조회 결과를 확인해줘", "현재 GA 보험금 청구지원 현황 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getClaimSupport(AgentToolRequest request);
-
- @McpTool(name = "agt_commission_summary", title = "GA 설계사 수수료 요약 조회", description = "GA 설계사 수수료 요약 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_COMMISSION_SUMMARY",
- functionDescription = "GA 설계사 수수료 요약 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 수수료 요약 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 수수료 요약 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 수수료 요약 조회 정보를 보여줘", "GA 설계사 수수료 요약 조회 결과를 확인해줘", "현재 GA 설계사 수수료 요약 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getCommissionSummary(AgentToolRequest request);
-
- @McpTool(name = "agt_campaign", title = "GA 영업 캠페인 조회", description = "GA 영업 캠페인 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_CAMPAIGN",
- functionDescription = "GA 영업 캠페인 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 영업 캠페인 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 영업 캠페인 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 영업 캠페인 조회 정보를 보여줘", "GA 영업 캠페인 조회 결과를 확인해줘", "현재 GA 영업 캠페인 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getCampaign(AgentToolRequest request);
-
- @McpTool(name = "agt_task_list", title = "GA 설계사 업무목록 조회", description = "GA 설계사 업무목록 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_TASK_LIST",
- functionDescription = "GA 설계사 업무목록 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 업무목록 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 업무목록 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 업무목록 조회 정보를 보여줘", "GA 설계사 업무목록 조회 결과를 확인해줘", "현재 GA 설계사 업무목록 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getTaskList(AgentToolRequest request);
-
- @McpTool(name = "agt_notice_list", title = "GA 설계사 공지목록 조회", description = "GA 설계사 공지목록 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_NOTICE_LIST",
- functionDescription = "GA 설계사 공지목록 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 설계사 공지목록 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 설계사 공지목록 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 설계사 공지목록 조회 정보를 보여줘", "GA 설계사 공지목록 조회 결과를 확인해줘", "현재 GA 설계사 공지목록 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getNoticeList(AgentToolRequest request);
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/GaOrganizationUseCase.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/GaOrganizationUseCase.java
deleted file mode 100644
index c5d645d18..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/GaOrganizationUseCase.java
+++ /dev/null
@@ -1,152 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.usecase;
-
-import io.shinhanlife.dat.lib.annotation.GrowToolHint;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolRequest;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolResponse;
-import org.springaicommunity.mcp.annotation.McpTool;
-
-public interface GaOrganizationUseCase {
- @McpTool(name = "agt_ga_profile", title = "GA 조직 기본정보 조회", description = "GA 조직 기본정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_GA_PROFILE",
- functionDescription = "GA 조직 기본정보 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 조직 기본정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 조직 기본정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 조직 기본정보 조회 정보를 보여줘", "GA 조직 기본정보 조회 결과를 확인해줘", "현재 GA 조직 기본정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getGaProfile(AgentToolRequest request);
-
- @McpTool(name = "agt_branch_list", title = "GA 지점목록 조회", description = "GA 지점목록 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_BRANCH_LIST",
- functionDescription = "GA 지점목록 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 지점목록 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 지점목록 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 지점목록 조회 정보를 보여줘", "GA 지점목록 조회 결과를 확인해줘", "현재 GA 지점목록 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getBranchList(AgentToolRequest request);
-
- @McpTool(name = "agt_organization_tree", title = "GA 조직도 조회", description = "GA 조직도 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_ORGANIZATION_TREE",
- functionDescription = "GA 조직도 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 조직도 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 조직도 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 조직도 조회 정보를 보여줘", "GA 조직도 조회 결과를 확인해줘", "현재 GA 조직도 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getOrganizationTree(AgentToolRequest request);
-
- @McpTool(name = "agt_organization_manager", title = "GA 조직 책임자 조회", description = "GA 조직 책임자 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_ORGANIZATION_MANAGER",
- functionDescription = "GA 조직 책임자 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 조직 책임자 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 조직 책임자 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 조직 책임자 조회 정보를 보여줘", "GA 조직 책임자 조회 결과를 확인해줘", "현재 GA 조직 책임자 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getOrganizationManager(AgentToolRequest request);
-
- @McpTool(name = "agt_organization_agent_list", title = "GA 소속 설계사 목록 조회", description = "GA 소속 설계사 목록 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_ORGANIZATION_AGENT_LIST",
- functionDescription = "GA 소속 설계사 목록 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 소속 설계사 목록 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 소속 설계사 목록 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 소속 설계사 목록 조회 정보를 보여줘", "GA 소속 설계사 목록 조회 결과를 확인해줘", "현재 GA 소속 설계사 목록 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getOrganizationAgentList(AgentToolRequest request);
-
- @McpTool(name = "agt_sales_area", title = "GA 영업지역 조회", description = "GA 영업지역 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_SALES_AREA",
- functionDescription = "GA 영업지역 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 영업지역 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 영업지역 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 영업지역 조회 정보를 보여줘", "GA 영업지역 조회 결과를 확인해줘", "현재 GA 영업지역 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getSalesArea(AgentToolRequest request);
-
- @McpTool(name = "agt_affiliation_history", title = "GA 소속변경 이력 조회", description = "GA 소속변경 이력 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_AFFILIATION_HISTORY",
- functionDescription = "GA 소속변경 이력 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 소속변경 이력 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 소속변경 이력 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 소속변경 이력 조회 정보를 보여줘", "GA 소속변경 이력 조회 결과를 확인해줘", "현재 GA 소속변경 이력 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getAffiliationHistory(AgentToolRequest request);
-
- @McpTool(name = "agt_support_contact", title = "GA 업무지원 연락처 조회", description = "GA 업무지원 연락처 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "agt",
- mappingId = "DIRECT_AGT_SUPPORT_CONTACT",
- functionDescription = "GA 업무지원 연락처 조회 정보를 조회합니다.",
- whenToUse = "GA·설계사 업무에서 GA 업무지원 연락처 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "GA 업무지원 연락처 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"GA 업무지원 연락처 조회 정보를 보여줘", "GA 업무지원 연락처 조회 결과를 확인해줘", "현재 GA 업무지원 연락처 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"agt", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- AgentToolResponse getSupportContact(AgentToolRequest request);
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/AgentInquiryUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/AgentInquiryUseCaseImpl.java
deleted file mode 100644
index 1e677ad78..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/AgentInquiryUseCaseImpl.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.usecase.impl;
-
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolRequest;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolResponse;
-import io.shinhanlife.dat.mcc.biz.agt.usecase.AgentInquiryUseCase;
-import java.util.List;
-import org.springframework.stereotype.Service;
-
-@Service
-public class AgentInquiryUseCaseImpl implements AgentInquiryUseCase {
- @Override
- public AgentToolResponse getAgentProfile(AgentToolRequest request) {
- return mockResponse(request, "agt_agent_profile", "GA 설계사 기본정보 조회");
- }
-
- @Override
- public AgentToolResponse getAppointmentStatus(AgentToolRequest request) {
- return mockResponse(request, "agt_appointment_status", "GA 설계사 위촉상태 조회");
- }
-
- @Override
- public AgentToolResponse getAgentLicense(AgentToolRequest request) {
- return mockResponse(request, "agt_agent_license", "GA 설계사 자격정보 조회");
- }
-
- @Override
- public AgentToolResponse getCommissionGrade(AgentToolRequest request) {
- return mockResponse(request, "agt_commission_grade", "GA 설계사 수수료등급 조회");
- }
-
- @Override
- public AgentToolResponse getAgentEducation(AgentToolRequest request) {
- return mockResponse(request, "agt_agent_education", "GA 설계사 교육이력 조회");
- }
-
- @Override
- public AgentToolResponse getAgentCompliance(AgentToolRequest request) {
- return mockResponse(request, "agt_agent_compliance", "GA 설계사 준법정보 조회");
- }
-
- @Override
- public AgentToolResponse getCustomerAssignment(AgentToolRequest request) {
- return mockResponse(request, "agt_customer_assignment", "GA 설계사 고객배정 조회");
- }
-
- @Override
- public AgentToolResponse getActivityStatus(AgentToolRequest request) {
- return mockResponse(request, "agt_activity_status", "GA 설계사 활동상태 조회");
- }
-
- private AgentToolResponse mockResponse(AgentToolRequest request, String toolName, String title) {
- AgentToolResponse response = new AgentToolResponse();
- response.setToolName(toolName);
- response.setCategory("AGT");
- response.setReferenceId(request != null && hasText(request.getAgentId()) ? request.getAgentId()
- : request != null && hasText(request.getOrganizationId()) ? request.getOrganizationId() : "AGT-000001");
- response.setStatus("정상");
- response.setSummary(title + " 결과");
- response.setAsOfDate(request != null && hasText(request.getQueryDate()) ? request.getQueryDate() : "2026-08-14");
- response.setDetails(List.of(title + " 모의 상세정보", "외부 시스템을 변경하지 않는 조회 결과"));
- return response;
- }
-
- private boolean hasText(String value) {
- return value != null && !value.isBlank();
- }
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/AgentPerformanceUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/AgentPerformanceUseCaseImpl.java
deleted file mode 100644
index bb5cd4d70..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/AgentPerformanceUseCaseImpl.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.usecase.impl;
-
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolRequest;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolResponse;
-import io.shinhanlife.dat.mcc.biz.agt.usecase.AgentPerformanceUseCase;
-import java.util.List;
-import org.springframework.stereotype.Service;
-
-@Service
-public class AgentPerformanceUseCaseImpl implements AgentPerformanceUseCase {
- @Override
- public AgentToolResponse getProductionSummary(AgentToolRequest request) {
- return mockResponse(request, "agt_production_summary", "GA 설계사 신계약 실적 조회");
- }
-
- @Override
- public AgentToolResponse getContractCount(AgentToolRequest request) {
- return mockResponse(request, "agt_contract_count", "GA 설계사 계약건수 조회");
- }
-
- @Override
- public AgentToolResponse getPremiumSummary(AgentToolRequest request) {
- return mockResponse(request, "agt_premium_summary", "GA 설계사 보험료 실적 조회");
- }
-
- @Override
- public AgentToolResponse getPersistencyRate(AgentToolRequest request) {
- return mockResponse(request, "agt_persistency_rate", "GA 설계사 계약유지율 조회");
- }
-
- @Override
- public AgentToolResponse getClaimSupport(AgentToolRequest request) {
- return mockResponse(request, "agt_claim_support", "GA 보험금 청구지원 현황 조회");
- }
-
- @Override
- public AgentToolResponse getCommissionSummary(AgentToolRequest request) {
- return mockResponse(request, "agt_commission_summary", "GA 설계사 수수료 요약 조회");
- }
-
- @Override
- public AgentToolResponse getCampaign(AgentToolRequest request) {
- return mockResponse(request, "agt_campaign", "GA 영업 캠페인 조회");
- }
-
- @Override
- public AgentToolResponse getTaskList(AgentToolRequest request) {
- return mockResponse(request, "agt_task_list", "GA 설계사 업무목록 조회");
- }
-
- @Override
- public AgentToolResponse getNoticeList(AgentToolRequest request) {
- return mockResponse(request, "agt_notice_list", "GA 설계사 공지목록 조회");
- }
-
- private AgentToolResponse mockResponse(AgentToolRequest request, String toolName, String title) {
- AgentToolResponse response = new AgentToolResponse();
- response.setToolName(toolName);
- response.setCategory("AGT");
- response.setReferenceId(request != null && hasText(request.getAgentId()) ? request.getAgentId()
- : request != null && hasText(request.getOrganizationId()) ? request.getOrganizationId() : "AGT-000001");
- response.setStatus("정상");
- response.setSummary(title + " 결과");
- response.setAsOfDate(request != null && hasText(request.getQueryDate()) ? request.getQueryDate() : "2026-08-14");
- response.setDetails(List.of(title + " 모의 상세정보", "외부 시스템을 변경하지 않는 조회 결과"));
- return response;
- }
-
- private boolean hasText(String value) {
- return value != null && !value.isBlank();
- }
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/GaOrganizationUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/GaOrganizationUseCaseImpl.java
deleted file mode 100644
index 5d05883ee..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/agt/usecase/impl/GaOrganizationUseCaseImpl.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.agt.usecase.impl;
-
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolRequest;
-import io.shinhanlife.dat.mcc.biz.agt.dto.AgentToolResponse;
-import io.shinhanlife.dat.mcc.biz.agt.usecase.GaOrganizationUseCase;
-import java.util.List;
-import org.springframework.stereotype.Service;
-
-@Service
-public class GaOrganizationUseCaseImpl implements GaOrganizationUseCase {
- @Override
- public AgentToolResponse getGaProfile(AgentToolRequest request) {
- return mockResponse(request, "agt_ga_profile", "GA 조직 기본정보 조회");
- }
-
- @Override
- public AgentToolResponse getBranchList(AgentToolRequest request) {
- return mockResponse(request, "agt_branch_list", "GA 지점목록 조회");
- }
-
- @Override
- public AgentToolResponse getOrganizationTree(AgentToolRequest request) {
- return mockResponse(request, "agt_organization_tree", "GA 조직도 조회");
- }
-
- @Override
- public AgentToolResponse getOrganizationManager(AgentToolRequest request) {
- return mockResponse(request, "agt_organization_manager", "GA 조직 책임자 조회");
- }
-
- @Override
- public AgentToolResponse getOrganizationAgentList(AgentToolRequest request) {
- return mockResponse(request, "agt_organization_agent_list", "GA 소속 설계사 목록 조회");
- }
-
- @Override
- public AgentToolResponse getSalesArea(AgentToolRequest request) {
- return mockResponse(request, "agt_sales_area", "GA 영업지역 조회");
- }
-
- @Override
- public AgentToolResponse getAffiliationHistory(AgentToolRequest request) {
- return mockResponse(request, "agt_affiliation_history", "GA 소속변경 이력 조회");
- }
-
- @Override
- public AgentToolResponse getSupportContact(AgentToolRequest request) {
- return mockResponse(request, "agt_support_contact", "GA 업무지원 연락처 조회");
- }
-
- private AgentToolResponse mockResponse(AgentToolRequest request, String toolName, String title) {
- AgentToolResponse response = new AgentToolResponse();
- response.setToolName(toolName);
- response.setCategory("AGT");
- response.setReferenceId(request != null && hasText(request.getAgentId()) ? request.getAgentId()
- : request != null && hasText(request.getOrganizationId()) ? request.getOrganizationId() : "AGT-000001");
- response.setStatus("정상");
- response.setSummary(title + " 결과");
- response.setAsOfDate(request != null && hasText(request.getQueryDate()) ? request.getQueryDate() : "2026-08-14");
- response.setDetails(List.of(title + " 모의 상세정보", "외부 시스템을 변경하지 않는 조회 결과"));
- return response;
- }
-
- private boolean hasText(String value) {
- return value != null && !value.isBlank();
- }
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/ClaimInquiryUseCase.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/ClaimInquiryUseCase.java
deleted file mode 100644
index 9c436a01b..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/ClaimInquiryUseCase.java
+++ /dev/null
@@ -1,152 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase;
-
-import io.shinhanlife.dat.lib.annotation.GrowToolHint;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolRequest;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolResponse;
-import org.springaicommunity.mcp.annotation.McpTool;
-
-public interface ClaimInquiryUseCase {
- @McpTool(name = "pro_claim_eligibility", title = "보험금 청구 가능여부 조회", description = "보험금 청구 가능여부 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_ELIGIBILITY",
- functionDescription = "보험금 청구 가능여부 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 청구 가능여부 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 청구 가능여부 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 청구 가능여부 조회 정보를 보여줘", "보험금 청구 가능여부 조회 결과를 확인해줘", "현재 보험금 청구 가능여부 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimEligibility(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_history", title = "보험금 청구이력 조회", description = "보험금 청구이력 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_HISTORY",
- functionDescription = "보험금 청구이력 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 청구이력 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 청구이력 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 청구이력 조회 정보를 보여줘", "보험금 청구이력 조회 결과를 확인해줘", "현재 보험금 청구이력 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimHistory(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_status", title = "보험금 청구상태 조회", description = "보험금 청구상태 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_STATUS",
- functionDescription = "보험금 청구상태 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 청구상태 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 청구상태 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 청구상태 조회 정보를 보여줘", "보험금 청구상태 조회 결과를 확인해줘", "현재 보험금 청구상태 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimStatus(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_documents", title = "보험금 청구서류 조회", description = "보험금 청구서류 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_DOCUMENTS",
- functionDescription = "보험금 청구서류 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 청구서류 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 청구서류 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 청구서류 조회 정보를 보여줘", "보험금 청구서류 조회 결과를 확인해줘", "현재 보험금 청구서류 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimDocuments(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_payment", title = "보험금 지급내역 조회", description = "보험금 지급내역 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_PAYMENT",
- functionDescription = "보험금 지급내역 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 지급내역 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 지급내역 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 지급내역 조회 정보를 보여줘", "보험금 지급내역 조회 결과를 확인해줘", "현재 보험금 지급내역 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimPayment(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_accident", title = "보험사고 정보 조회", description = "보험사고 정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_ACCIDENT",
- functionDescription = "보험사고 정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험사고 정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험사고 정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험사고 정보 조회 정보를 보여줘", "보험사고 정보 조회 결과를 확인해줘", "현재 보험사고 정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimAccident(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_beneficiary", title = "보험금 수익자 조회", description = "보험금 수익자 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_BENEFICIARY",
- functionDescription = "보험금 수익자 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 수익자 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 수익자 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 수익자 조회 정보를 보여줘", "보험금 수익자 조회 결과를 확인해줘", "현재 보험금 수익자 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimBeneficiary(ProductToolRequest request);
-
- @McpTool(name = "pro_claim_contact", title = "보험금 청구 담당자 조회", description = "보험금 청구 담당자 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CLAIM_CONTACT",
- functionDescription = "보험금 청구 담당자 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험금 청구 담당자 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험금 청구 담당자 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험금 청구 담당자 조회 정보를 보여줘", "보험금 청구 담당자 조회 결과를 확인해줘", "현재 보험금 청구 담당자 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getClaimContact(ProductToolRequest request);
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/ContractInquiryUseCase.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/ContractInquiryUseCase.java
deleted file mode 100644
index b65e72182..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/ContractInquiryUseCase.java
+++ /dev/null
@@ -1,170 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase;
-
-import io.shinhanlife.dat.lib.annotation.GrowToolHint;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolRequest;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolResponse;
-import org.springaicommunity.mcp.annotation.McpTool;
-
-public interface ContractInquiryUseCase {
- @McpTool(name = "pro_contract_list", title = "보험계약 목록 조회", description = "보험계약 목록 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_LIST",
- functionDescription = "보험계약 목록 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 목록 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 목록 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 목록 조회 정보를 보여줘", "보험계약 목록 조회 결과를 확인해줘", "현재 보험계약 목록 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractList(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_detail", title = "보험계약 상세 조회", description = "보험계약 상세 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_DETAIL",
- functionDescription = "보험계약 상세 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 상세 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 상세 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 상세 조회 정보를 보여줘", "보험계약 상세 조회 결과를 확인해줘", "현재 보험계약 상세 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractDetail(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_coverage", title = "보험계약 보장내역 조회", description = "보험계약 보장내역 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_COVERAGE",
- functionDescription = "보험계약 보장내역 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 보장내역 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 보장내역 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 보장내역 조회 정보를 보여줘", "보험계약 보장내역 조회 결과를 확인해줘", "현재 보험계약 보장내역 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractCoverage(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_premium", title = "보험계약 보험료 조회", description = "보험계약 보험료 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_PREMIUM",
- functionDescription = "보험계약 보험료 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 보험료 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 보험료 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 보험료 조회 정보를 보여줘", "보험계약 보험료 조회 결과를 확인해줘", "현재 보험계약 보험료 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractPremium(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_payment_status", title = "보험료 납입상태 조회", description = "보험료 납입상태 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_PAYMENT_STATUS",
- functionDescription = "보험료 납입상태 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험료 납입상태 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험료 납입상태 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험료 납입상태 조회 정보를 보여줘", "보험료 납입상태 조회 결과를 확인해줘", "현재 보험료 납입상태 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractPaymentStatus(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_beneficiary", title = "보험계약 수익자 조회", description = "보험계약 수익자 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_BENEFICIARY",
- functionDescription = "보험계약 수익자 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 수익자 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 수익자 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 수익자 조회 정보를 보여줘", "보험계약 수익자 조회 결과를 확인해줘", "현재 보험계약 수익자 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractBeneficiary(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_surrender_value", title = "보험계약 해지환급금 조회", description = "보험계약 해지환급금 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_SURRENDER_VALUE",
- functionDescription = "보험계약 해지환급금 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 해지환급금 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 해지환급금 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 해지환급금 조회 정보를 보여줘", "보험계약 해지환급금 조회 결과를 확인해줘", "현재 보험계약 해지환급금 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractSurrenderValue(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_loan_status", title = "보험계약 대출현황 조회", description = "보험계약 대출현황 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_LOAN_STATUS",
- functionDescription = "보험계약 대출현황 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 대출현황 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 대출현황 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 대출현황 조회 정보를 보여줘", "보험계약 대출현황 조회 결과를 확인해줘", "현재 보험계약 대출현황 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractLoanStatus(ProductToolRequest request);
-
- @McpTool(name = "pro_contract_rider_list", title = "보험계약 특약목록 조회", description = "보험계약 특약목록 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CONTRACT_RIDER_LIST",
- functionDescription = "보험계약 특약목록 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 보험계약 특약목록 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "보험계약 특약목록 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"보험계약 특약목록 조회 정보를 보여줘", "보험계약 특약목록 조회 결과를 확인해줘", "현재 보험계약 특약목록 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getContractRiderList(ProductToolRequest request);
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/CustomerInquiryUseCase.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/CustomerInquiryUseCase.java
deleted file mode 100644
index 5599495b5..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/CustomerInquiryUseCase.java
+++ /dev/null
@@ -1,152 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase;
-
-import io.shinhanlife.dat.lib.annotation.GrowToolHint;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolRequest;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolResponse;
-import org.springaicommunity.mcp.annotation.McpTool;
-
-public interface CustomerInquiryUseCase {
- @McpTool(name = "pro_customer_profile", title = "고객 기본정보 조회", description = "고객 기본정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_PROFILE",
- functionDescription = "고객 기본정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 기본정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 기본정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 기본정보 조회 정보를 보여줘", "고객 기본정보 조회 결과를 확인해줘", "현재 고객 기본정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerProfile(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_contact", title = "고객 연락처 조회", description = "고객 연락처 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_CONTACT",
- functionDescription = "고객 연락처 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 연락처 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 연락처 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 연락처 조회 정보를 보여줘", "고객 연락처 조회 결과를 확인해줘", "현재 고객 연락처 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerContact(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_consent", title = "고객 동의정보 조회", description = "고객 동의정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_CONSENT",
- functionDescription = "고객 동의정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 동의정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 동의정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 동의정보 조회 정보를 보여줘", "고객 동의정보 조회 결과를 확인해줘", "현재 고객 동의정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerConsent(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_identity", title = "고객 본인확인정보 조회", description = "고객 본인확인정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_IDENTITY",
- functionDescription = "고객 본인확인정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 본인확인정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 본인확인정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 본인확인정보 조회 정보를 보여줘", "고객 본인확인정보 조회 결과를 확인해줘", "현재 고객 본인확인정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerIdentity(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_address", title = "고객 주소정보 조회", description = "고객 주소정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_ADDRESS",
- functionDescription = "고객 주소정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 주소정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 주소정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 주소정보 조회 정보를 보여줘", "고객 주소정보 조회 결과를 확인해줘", "현재 고객 주소정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerAddress(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_occupation", title = "고객 직업정보 조회", description = "고객 직업정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_OCCUPATION",
- functionDescription = "고객 직업정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 직업정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 직업정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 직업정보 조회 정보를 보여줘", "고객 직업정보 조회 결과를 확인해줘", "현재 고객 직업정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerOccupation(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_family", title = "고객 가족정보 조회", description = "고객 가족정보 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_FAMILY",
- functionDescription = "고객 가족정보 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 가족정보 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 가족정보 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 가족정보 조회 정보를 보여줘", "고객 가족정보 조회 결과를 확인해줘", "현재 고객 가족정보 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerFamily(ProductToolRequest request);
-
- @McpTool(name = "pro_customer_risk_grade", title = "고객 위험등급 조회", description = "고객 위험등급 조회 정보를 안전한 모의 데이터로 제공합니다.")
- @GrowToolHint(
- requiresApproval = false,
- categoryKey = "pro",
- mappingId = "DIRECT_PRO_CUSTOMER_RISK_GRADE",
- functionDescription = "고객 위험등급 조회 정보를 조회합니다.",
- whenToUse = "고객·보험계약 업무에서 고객 위험등급 조회 정보가 필요할 때 사용합니다.",
- whenNotToUse = "정보 변경, 승인 또는 실제 업무처리에는 사용하지 않습니다.",
- ioLimits = "입력 식별자에 대한 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.",
- displayDescription = "고객 위험등급 조회 정보를 안전한 모의 데이터로 제공합니다.",
- exampleQueries = {"고객 위험등급 조회 정보를 보여줘", "고객 위험등급 조회 결과를 확인해줘", "현재 고객 위험등급 조회 내용을 알려줘"},
- destructive = false,
- idempotent = true,
- tags = {"pro", "조회", "mock"},
- ownerOrg = "MCP_TOOL"
- )
- ProductToolResponse getCustomerRiskGrade(ProductToolRequest request);
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/ClaimInquiryUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/ClaimInquiryUseCaseImpl.java
deleted file mode 100644
index 89181e5e2..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/ClaimInquiryUseCaseImpl.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase.impl;
-
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolRequest;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolResponse;
-import io.shinhanlife.dat.mcc.biz.pro.usecase.ClaimInquiryUseCase;
-import java.util.List;
-import org.springframework.stereotype.Service;
-
-@Service
-public class ClaimInquiryUseCaseImpl implements ClaimInquiryUseCase {
- @Override
- public ProductToolResponse getClaimEligibility(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_eligibility", "보험금 청구 가능여부 조회");
- }
-
- @Override
- public ProductToolResponse getClaimHistory(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_history", "보험금 청구이력 조회");
- }
-
- @Override
- public ProductToolResponse getClaimStatus(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_status", "보험금 청구상태 조회");
- }
-
- @Override
- public ProductToolResponse getClaimDocuments(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_documents", "보험금 청구서류 조회");
- }
-
- @Override
- public ProductToolResponse getClaimPayment(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_payment", "보험금 지급내역 조회");
- }
-
- @Override
- public ProductToolResponse getClaimAccident(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_accident", "보험사고 정보 조회");
- }
-
- @Override
- public ProductToolResponse getClaimBeneficiary(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_beneficiary", "보험금 수익자 조회");
- }
-
- @Override
- public ProductToolResponse getClaimContact(ProductToolRequest request) {
- return mockResponse(request, "pro_claim_contact", "보험금 청구 담당자 조회");
- }
-
- private ProductToolResponse mockResponse(ProductToolRequest request, String toolName, String title) {
- ProductToolResponse response = new ProductToolResponse();
- response.setToolName(toolName);
- response.setCategory("PRO");
- response.setReferenceId(request != null && hasText(request.getSubjectId()) ? request.getSubjectId() : "CUST-000001");
- response.setStatus("정상");
- response.setSummary(title + " 결과");
- response.setAsOfDate(request != null && hasText(request.getQueryDate()) ? request.getQueryDate() : "2026-08-14");
- response.setDetails(List.of(title + " 모의 상세정보", "외부 시스템을 변경하지 않는 조회 결과"));
- return response;
- }
-
- private boolean hasText(String value) {
- return value != null && !value.isBlank();
- }
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/ContractInquiryUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/ContractInquiryUseCaseImpl.java
deleted file mode 100644
index f6e3ea4ba..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/ContractInquiryUseCaseImpl.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase.impl;
-
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolRequest;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolResponse;
-import io.shinhanlife.dat.mcc.biz.pro.usecase.ContractInquiryUseCase;
-import java.util.List;
-import org.springframework.stereotype.Service;
-
-@Service
-public class ContractInquiryUseCaseImpl implements ContractInquiryUseCase {
- @Override
- public ProductToolResponse getContractList(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_list", "보험계약 목록 조회");
- }
-
- @Override
- public ProductToolResponse getContractDetail(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_detail", "보험계약 상세 조회");
- }
-
- @Override
- public ProductToolResponse getContractCoverage(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_coverage", "보험계약 보장내역 조회");
- }
-
- @Override
- public ProductToolResponse getContractPremium(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_premium", "보험계약 보험료 조회");
- }
-
- @Override
- public ProductToolResponse getContractPaymentStatus(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_payment_status", "보험료 납입상태 조회");
- }
-
- @Override
- public ProductToolResponse getContractBeneficiary(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_beneficiary", "보험계약 수익자 조회");
- }
-
- @Override
- public ProductToolResponse getContractSurrenderValue(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_surrender_value", "보험계약 해지환급금 조회");
- }
-
- @Override
- public ProductToolResponse getContractLoanStatus(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_loan_status", "보험계약 대출현황 조회");
- }
-
- @Override
- public ProductToolResponse getContractRiderList(ProductToolRequest request) {
- return mockResponse(request, "pro_contract_rider_list", "보험계약 특약목록 조회");
- }
-
- private ProductToolResponse mockResponse(ProductToolRequest request, String toolName, String title) {
- ProductToolResponse response = new ProductToolResponse();
- response.setToolName(toolName);
- response.setCategory("PRO");
- response.setReferenceId(request != null && hasText(request.getSubjectId()) ? request.getSubjectId() : "CUST-000001");
- response.setStatus("정상");
- response.setSummary(title + " 결과");
- response.setAsOfDate(request != null && hasText(request.getQueryDate()) ? request.getQueryDate() : "2026-08-14");
- response.setDetails(List.of(title + " 모의 상세정보", "외부 시스템을 변경하지 않는 조회 결과"));
- return response;
- }
-
- private boolean hasText(String value) {
- return value != null && !value.isBlank();
- }
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/CustomerInquiryUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/CustomerInquiryUseCaseImpl.java
deleted file mode 100644
index 8f5d32a88..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/CustomerInquiryUseCaseImpl.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase.impl;
-
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolRequest;
-import io.shinhanlife.dat.mcc.biz.pro.dto.ProductToolResponse;
-import io.shinhanlife.dat.mcc.biz.pro.usecase.CustomerInquiryUseCase;
-import java.util.List;
-import org.springframework.stereotype.Service;
-
-@Service
-public class CustomerInquiryUseCaseImpl implements CustomerInquiryUseCase {
- @Override
- public ProductToolResponse getCustomerProfile(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_profile", "고객 기본정보 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerContact(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_contact", "고객 연락처 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerConsent(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_consent", "고객 동의정보 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerIdentity(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_identity", "고객 본인확인정보 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerAddress(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_address", "고객 주소정보 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerOccupation(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_occupation", "고객 직업정보 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerFamily(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_family", "고객 가족정보 조회");
- }
-
- @Override
- public ProductToolResponse getCustomerRiskGrade(ProductToolRequest request) {
- return mockResponse(request, "pro_customer_risk_grade", "고객 위험등급 조회");
- }
-
- private ProductToolResponse mockResponse(ProductToolRequest request, String toolName, String title) {
- ProductToolResponse response = new ProductToolResponse();
- response.setToolName(toolName);
- response.setCategory("PRO");
- response.setReferenceId(request != null && hasText(request.getSubjectId()) ? request.getSubjectId() : "CUST-000001");
- response.setStatus("정상");
- response.setSummary(title + " 결과");
- response.setAsOfDate(request != null && hasText(request.getQueryDate()) ? request.getQueryDate() : "2026-08-14");
- response.setDetails(List.of(title + " 모의 상세정보", "외부 시스템을 변경하지 않는 조회 결과"));
- return response;
- }
-
- private boolean hasText(String value) {
- return value != null && !value.isBlank();
- }
-}
diff --git a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/PersonalCustomerDetailInquiryUseCaseImpl.java b/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/PersonalCustomerDetailInquiryUseCaseImpl.java
deleted file mode 100644
index 1643c8230..000000000
--- a/dat-was-pro/src/main/java/io/shinhanlife/dat/mcc/biz/pro/usecase/impl/PersonalCustomerDetailInquiryUseCaseImpl.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package io.shinhanlife.dat.mcc.biz.pro.usecase.impl;
-
-import io.shinhanlife.glow.communication.dto.Transfer;
-import org.springframework.stereotype.Service;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-
-/**
- * @package io.shinhanlife.dat.mcc.biz.pro.usecase.impl
- * @className PersonalCustomerDetailInquiryUseCaseImpl
- * @description AX HUB 시스템 처리 클래스
- * @author jade
- * @create 2026.08.25
- *
- * ---------- 개정이력 ----------
- * 수정일 수정자 수정내용
- * ---------- -------- ---------------------------
- * 2026.08.25 jade 최초생성
- *
- *
- */
-@Slf4j
-@Service
-@RequiredArgsConstructor
-public class PersonalCustomerDetailInquiryUseCaseImpl implements PersonalCustomerDetailInquiryUseCase {
-
- private final MciNcscClient mci;
- private final PersonalCustomerDetailInquiryConverter converter;
-
- @Override
- public PersonalCustomerDetailInquiryResponse execute(PersonalCustomerDetailInquiryRequest req) {
- log.info("[MCI Tool] {} 요청 수신.", "pro_personal_inquiry");
- try {
- // MapStruct를 이용한 자동 매핑 (AI DTO -> MCI DTO)
- DATNCSO00001_I mciReq = converter.toLegacyRequest(req);
-
- Transfer< DATNCSO00001_O> resTransfer = mci.callTo(
- " DATNCSO00001",
- null,
- mciReq,
- DATNCSO00001_O.class
- );
- PersonalCustomerDetailInquiryResponse response = new PersonalCustomerDetailInquiryResponse();
- if (resTransfer.getBody() != null) {
- response = converter.toResponse(resTransfer.getBody());
- }
- response.setResultCode("SUCCESS");
- response.setResultMessage(resTransfer.getBody() != null
- ? "MCI call completed."
- : "MCI call completed without a response body.");
- return response;
- } catch (Exception e) {
- log.error("[MCI Tool] 연동 중 오류 발생: {}", e.getMessage(), e);
- PersonalCustomerDetailInquiryResponse response = new PersonalCustomerDetailInquiryResponse();
- response.setResultCode("ERROR");
- response.setResultMessage(e.getMessage() != null ? e.getMessage() : "Unknown error");
- return response;
- }
- }
-}
diff --git a/dat-was-pro/src/main/resources/application-local.yml b/dat-was-pro/src/main/resources/application-local.yml
index caa93c7fd..c06a60353 100644
--- a/dat-was-pro/src/main/resources/application-local.yml
+++ b/dat-was-pro/src/main/resources/application-local.yml
@@ -7,8 +7,7 @@ spring:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-local.yml
datasource:
- url: jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
- driverClassName: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;
username: sa
password: password
h2:
diff --git a/dat-was-sal/src/main/resources/application-local.yml b/dat-was-sal/src/main/resources/application-local.yml
index d4add3581..7cb958feb 100644
--- a/dat-was-sal/src/main/resources/application-local.yml
+++ b/dat-was-sal/src/main/resources/application-local.yml
@@ -7,8 +7,7 @@ spring:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-local.yml
datasource:
- url: jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
- driverClassName: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;
username: sa
password: password
h2:
diff --git a/dat-was-sys/src/main/resources/application-local.yml b/dat-was-sys/src/main/resources/application-local.yml
index caa93c7fd..c06a60353 100644
--- a/dat-was-sys/src/main/resources/application-local.yml
+++ b/dat-was-sys/src/main/resources/application-local.yml
@@ -7,8 +7,7 @@ spring:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-local.yml
datasource:
- url: jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
- driverClassName: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;
username: sa
password: password
h2: