From 6394ac651b1da8bda05a8e06b5ad18e35c64878a Mon Sep 17 00:00:00 2001 From: jade Date: Wed, 5 Aug 2026 14:34:23 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20example=20=EC=9E=85=EB=A0=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dap/mcc/biz/smp/dto/DailyQuoteRequest.java | 15 ++++++++++++++- .../dap/mcc/biz/smp/dto/ExchangeRateRequest.java | 14 +++++++++++++- .../dap/mcc/biz/smp/dto/TeamMemberRequest.java | 2 +- .../dap/mcc/biz/smp/dto/WeatherRequest.java | 6 ++++-- .../usecase/impl/ExchangeRateToolUseCaseImpl.java | 2 +- 5 files changed, 33 insertions(+), 6 deletions(-) diff --git a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/DailyQuoteRequest.java b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/DailyQuoteRequest.java index 707bde1d..94f98f50 100644 --- a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/DailyQuoteRequest.java +++ b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/DailyQuoteRequest.java @@ -1,3 +1,16 @@ package io.shinhanlife.dap.mcc.biz.smp.dto; -public record DailyQuoteRequest(String category) {} \ No newline at end of file + +import com.fasterxml.jackson.annotation.JsonInclude; +import io.shinhanlife.dap.lib.annotation.McpParameter; +import io.shinhanlife.dap.lib.annotation.McpValidation; +import lombok.Data; + +@Data +@JsonInclude(JsonInclude.Include.NON_NULL) +public class DailyQuoteRequest { + + @McpParameter(description = "카테고리 (예: 속담 등)", required = false) + @McpValidation(examples = {"속담"}) + private String category; +} diff --git a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/ExchangeRateRequest.java b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/ExchangeRateRequest.java index 2d14d795..3a2abf34 100644 --- a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/ExchangeRateRequest.java +++ b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/ExchangeRateRequest.java @@ -1,3 +1,15 @@ package io.shinhanlife.dap.mcc.biz.smp.dto; -public record ExchangeRateRequest(String currencyCode) {} \ No newline at end of file + +import com.fasterxml.jackson.annotation.JsonInclude; +import io.shinhanlife.dap.lib.annotation.McpParameter; +import io.shinhanlife.dap.lib.annotation.McpValidation; +import lombok.Data; + +@Data +@JsonInclude(JsonInclude.Include.NON_NULL) +public class ExchangeRateRequest { + @McpParameter(description = "환율 코드 (예: USD 등)", required = false) + @McpValidation(examples = {"USD"}) + private String currencyCode; +} \ No newline at end of file diff --git a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/TeamMemberRequest.java b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/TeamMemberRequest.java index 537d44b5..e6d249ba 100644 --- a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/TeamMemberRequest.java +++ b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/TeamMemberRequest.java @@ -23,6 +23,6 @@ import lombok.Data; @JsonInclude(JsonInclude.Include.NON_NULL) public class TeamMemberRequest { @McpParameter(description = "조회할 팀 이름 (예: AX, MCP, TOOL, 전체 등)", required = false) - @McpValidation(examples = {"개발1팀"}) + @McpValidation(examples = {"TOOL"}) private String teamName; } \ No newline at end of file diff --git a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/WeatherRequest.java b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/WeatherRequest.java index b0bcceda..d2978a30 100644 --- a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/WeatherRequest.java +++ b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/dto/WeatherRequest.java @@ -2,6 +2,8 @@ package io.shinhanlife.dap.mcc.biz.smp.dto; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import io.shinhanlife.dap.lib.annotation.McpParameter; +import io.shinhanlife.dap.lib.annotation.McpValidation; /** * @package io.shinhanlife.dap.mcc.dto @@ -18,8 +20,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyDescription; * */ public record WeatherRequest( - @JsonProperty(required = true, value = "city") - @JsonPropertyDescription("날씨를 조회할 도시 이름 (예: 서울, 부산, 제주)") + @McpParameter(description = "도시를 입력하세여(예: 서울)", required = true) + @McpValidation(examples = {"서울"}) String city ) { } \ No newline at end of file diff --git a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/usecase/impl/ExchangeRateToolUseCaseImpl.java b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/usecase/impl/ExchangeRateToolUseCaseImpl.java index 10853b02..20c0c7b5 100644 --- a/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/usecase/impl/ExchangeRateToolUseCaseImpl.java +++ b/dap-was-oth/src/main/java/io/shinhanlife/dap/mcc/biz/smp/usecase/impl/ExchangeRateToolUseCaseImpl.java @@ -34,7 +34,7 @@ public class ExchangeRateToolUseCaseImpl extends AbstractMcpToolUseCase implemen @Override public ExchangeRateResponse execute(ExchangeRateRequest req) { - String targetCurrency = req.currencyCode() != null ? req.currencyCode().toUpperCase().trim() : "USD"; + String targetCurrency = req.getCurrencyCode() != null ? req.getCurrencyCode().toUpperCase().trim() : "USD"; // 간단한 모의 데이터로 반환 (실제 구현 시 외부 연동) double dummyRate = 1350.50;