refactor: massive rename dap -> dat and fix scaffold syntax error
Some checks failed
Deploy to OCIWP / deploy (push) Failing after 14s

This commit is contained in:
jade
2026-08-20 10:41:37 +09:00
parent 64c422378f
commit 0085ec6919
765 changed files with 1151 additions and 1151 deletions

View File

@@ -0,0 +1,10 @@
package io.shinhanlife.dat.mcc.biz.iam.dto;
import lombok.Data;
import org.springaicommunity.mcp.annotation.McpToolParam;
@Data
public class SystemStatusRequest {
@McpToolParam(description = "조회할 환경명", required = false)
private String environment;
}

View File

@@ -0,0 +1,11 @@
package io.shinhanlife.dat.mcc.biz.iam.dto;
import lombok.Data;
@Data
public class SystemStatusResponse {
private String systemName;
private String environment;
private String status;
private String checkedAt;
}

View File

@@ -0,0 +1,10 @@
package io.shinhanlife.dat.mcc.biz.iam.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class TeamContactRequest {
@Schema(description = "조회할 대상 (예: 전체, AX 추진팀, MCP 팀, TOOL 팀, 담당자)", defaultValue = "전체")
private String target;
}

View File

@@ -0,0 +1,32 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface AccountInquiryUseCase {
@McpTool(name = "iam_account_profile", title = "계정 프로필 조회", description = "모의 계정 프로필 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCOUNT_PROFILE")
SystemStatusResponse getPrimary(SystemStatusRequest request);
@McpTool(name = "iam_account_list", title = "계정 목록 조회", description = "모의 계정 목록 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCOUNT_LIST")
SystemStatusResponse getList(SystemStatusRequest request);
@McpTool(name = "iam_account_status", title = "계정 상태 조회", description = "모의 계정 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCOUNT_STATUS")
SystemStatusResponse getStatus(SystemStatusRequest request);
@McpTool(name = "iam_account_role", title = "계정 역할 조회", description = "모의 계정 역할 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCOUNT_ROLE")
SystemStatusResponse getDetail(SystemStatusRequest request);
@McpTool(name = "iam_account_lock_status", title = "계정 잠금 상태 조회", description = "모의 계정 잠금 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCOUNT_LOCK_STATUS")
SystemStatusResponse getContact(SystemStatusRequest request);
@McpTool(name = "iam_account_password_expiry", title = "비밀번호 만료일 조회", description = "모의 비밀번호 만료일 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCOUNT_PASSWORD_EXPIRY")
SystemStatusResponse getResult(SystemStatusRequest request);
}

View File

@@ -0,0 +1,32 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface AuthenticationInquiryUseCase {
@McpTool(name = "iam_login_history", title = "로그인 이력 조회", description = "모의 로그인 이력 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_LOGIN_HISTORY")
SystemStatusResponse getPrimary(SystemStatusRequest request);
@McpTool(name = "iam_authentication_method", title = "인증 수단 조회", description = "모의 인증 수단 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_AUTHENTICATION_METHOD")
SystemStatusResponse getList(SystemStatusRequest request);
@McpTool(name = "iam_mfa_status", title = "다중 인증 상태 조회", description = "모의 다중 인증 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_MFA_STATUS")
SystemStatusResponse getStatus(SystemStatusRequest request);
@McpTool(name = "iam_access_token_status", title = "접근 토큰 상태 조회", description = "모의 접근 토큰 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCESS_TOKEN_STATUS")
SystemStatusResponse getDetail(SystemStatusRequest request);
@McpTool(name = "iam_session_list", title = "세션 목록 조회", description = "모의 세션 목록 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_SESSION_LIST")
SystemStatusResponse getContact(SystemStatusRequest request);
@McpTool(name = "iam_trusted_device_list", title = "신뢰 기기 목록 조회", description = "모의 신뢰 기기 목록 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_TRUSTED_DEVICE_LIST")
SystemStatusResponse getResult(SystemStatusRequest request);
}

View File

@@ -0,0 +1,32 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface AuthorizationInquiryUseCase {
@McpTool(name = "iam_permission_list", title = "권한 목록 조회", description = "모의 권한 목록 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_PERMISSION_LIST")
SystemStatusResponse getPrimary(SystemStatusRequest request);
@McpTool(name = "iam_role_list", title = "역할 목록 조회", description = "모의 역할 목록 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ROLE_LIST")
SystemStatusResponse getList(SystemStatusRequest request);
@McpTool(name = "iam_menu_access", title = "메뉴 접근 권한 조회", description = "모의 메뉴 접근 권한 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_MENU_ACCESS")
SystemStatusResponse getStatus(SystemStatusRequest request);
@McpTool(name = "iam_resource_access", title = "자원 접근 권한 조회", description = "모의 자원 접근 권한 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_RESOURCE_ACCESS")
SystemStatusResponse getDetail(SystemStatusRequest request);
@McpTool(name = "iam_approval_authority", title = "결재 권한 조회", description = "모의 결재 권한 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_APPROVAL_AUTHORITY")
SystemStatusResponse getContact(SystemStatusRequest request);
@McpTool(name = "iam_delegation_status", title = "권한 위임 상태 조회", description = "모의 권한 위임 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_DELEGATION_STATUS")
SystemStatusResponse getResult(SystemStatusRequest request);
}

View File

@@ -0,0 +1,45 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface SystemStatusUseCase {
@McpTool(name = "iam_system_status", title = "시스템 상태 조회",
description = "조회 전용 모의 시스템 상태를 반환합니다.",
annotations = @McpTool.McpAnnotations(openWorldHint = false))
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_STATUS")
SystemStatusResponse getSystemStatus(SystemStatusRequest request);
@McpTool(name = "iam_service_health", title = "서비스 상태 조회", description = "모의 서비스 상태를 조회합니다.")
SystemStatusResponse getServiceHealth(SystemStatusRequest request);
@McpTool(name = "iam_environment_info", title = "환경 정보 조회", description = "모의 환경 정보를 조회합니다.")
SystemStatusResponse getEnvironmentInfo(SystemStatusRequest request);
@McpTool(name = "iam_deployment_version", title = "배포 버전 조회", description = "모의 배포 버전을 조회합니다.")
SystemStatusResponse getDeploymentVersion(SystemStatusRequest request);
@McpTool(name = "iam_access_policy", title = "접근 정책 조회", description = "모의 접근 정책을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_ACCESS_POLICY")
SystemStatusResponse getAccessPolicy(SystemStatusRequest request);
@McpTool(name = "iam_session_status", title = "세션 상태 조회", description = "모의 세션 상태를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_SESSION_STATUS")
SystemStatusResponse getSessionStatus(SystemStatusRequest request);
@McpTool(name = "iam_identity_provider_list", title = "인증 제공자 목록 조회", description = "모의 인증 제공자 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_IDENTITY_PROVIDER_LIST")
SystemStatusResponse getIdentityProviderList(SystemStatusRequest request);
@McpTool(name = "iam_security_event_list", title = "보안 이벤트 목록 조회", description = "모의 보안 이벤트 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_SECURITY_EVENT_LIST")
SystemStatusResponse getSecurityEventList(SystemStatusRequest request);
@McpTool(name = "iam_privilege_change_history", title = "권한 변경 이력 조회", description = "모의 권한 변경 이력을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_PRIVILEGE_CHANGE_HISTORY")
SystemStatusResponse getPrivilegeChangeHistory(SystemStatusRequest request);
@McpTool(name = "iam_user_group_list", title = "사용자 그룹 목록 조회", description = "모의 사용자 그룹 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_USER_GROUP_LIST")
SystemStatusResponse getUserGroupList(SystemStatusRequest request);
}

View File

@@ -0,0 +1,12 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.iam.dto.TeamContactRequest;
import org.springaicommunity.mcp.annotation.McpTool;
public interface TeamContactUseCase {
@McpTool(name = "iam_team_contact", title = "팀 연락처 및 담당자 조회", description = "AX 팀, MCP 팀, TOOL 팀 등 특정 팀이나 전체 팀의 인원 및 담당자 정보를 조회합니다. 대상을 입력하여 원하는 정보만 필터링하여 받을 수 있습니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "iam", mappingId = "DIRECT_IAM_TEAM_CONTACT")
String getTeamContactInfo(TeamContactRequest request);
}

View File

@@ -0,0 +1,48 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase.impl;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import io.shinhanlife.dat.mcc.biz.iam.usecase.AccountInquiryUseCase;
import org.springframework.stereotype.Service;
@Service
public class AccountInquiryUseCaseImpl implements AccountInquiryUseCase {
@Override
public SystemStatusResponse getPrimary(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getList(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getStatus(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getDetail(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getContact(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getResult(SystemStatusRequest request) {
return mockResponse(request);
}
private SystemStatusResponse mockResponse(SystemStatusRequest request) {
SystemStatusResponse response = new SystemStatusResponse();
response.setSystemName("AX Hub IAM");
response.setEnvironment(request != null && request.getEnvironment() != null && !request.getEnvironment().isBlank() ? request.getEnvironment() : "개발");
response.setStatus("정상");
response.setCheckedAt(java.time.OffsetDateTime.now().toString());
return response;
}
}

View File

@@ -0,0 +1,48 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase.impl;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import io.shinhanlife.dat.mcc.biz.iam.usecase.AuthenticationInquiryUseCase;
import org.springframework.stereotype.Service;
@Service
public class AuthenticationInquiryUseCaseImpl implements AuthenticationInquiryUseCase {
@Override
public SystemStatusResponse getPrimary(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getList(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getStatus(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getDetail(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getContact(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getResult(SystemStatusRequest request) {
return mockResponse(request);
}
private SystemStatusResponse mockResponse(SystemStatusRequest request) {
SystemStatusResponse response = new SystemStatusResponse();
response.setSystemName("AX Hub IAM");
response.setEnvironment(request != null && request.getEnvironment() != null && !request.getEnvironment().isBlank() ? request.getEnvironment() : "개발");
response.setStatus("정상");
response.setCheckedAt(java.time.OffsetDateTime.now().toString());
return response;
}
}

View File

@@ -0,0 +1,48 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase.impl;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import io.shinhanlife.dat.mcc.biz.iam.usecase.AuthorizationInquiryUseCase;
import org.springframework.stereotype.Service;
@Service
public class AuthorizationInquiryUseCaseImpl implements AuthorizationInquiryUseCase {
@Override
public SystemStatusResponse getPrimary(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getList(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getStatus(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getDetail(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getContact(SystemStatusRequest request) {
return mockResponse(request);
}
@Override
public SystemStatusResponse getResult(SystemStatusRequest request) {
return mockResponse(request);
}
private SystemStatusResponse mockResponse(SystemStatusRequest request) {
SystemStatusResponse response = new SystemStatusResponse();
response.setSystemName("AX Hub IAM");
response.setEnvironment(request != null && request.getEnvironment() != null && !request.getEnvironment().isBlank() ? request.getEnvironment() : "개발");
response.setStatus("정상");
response.setCheckedAt(java.time.OffsetDateTime.now().toString());
return response;
}
}

View File

@@ -0,0 +1,30 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase.impl;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusRequest;
import io.shinhanlife.dat.mcc.biz.iam.dto.SystemStatusResponse;
import io.shinhanlife.dat.mcc.biz.iam.usecase.SystemStatusUseCase;
import java.time.OffsetDateTime;
import org.springframework.stereotype.Service;
@Service
public class SystemStatusUseCaseImpl implements SystemStatusUseCase {
@Override public SystemStatusResponse getServiceHealth(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getEnvironmentInfo(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getDeploymentVersion(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getAccessPolicy(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getSessionStatus(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getIdentityProviderList(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getSecurityEventList(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getPrivilegeChangeHistory(SystemStatusRequest request) { return getSystemStatus(request); }
@Override public SystemStatusResponse getUserGroupList(SystemStatusRequest request) { return getSystemStatus(request); }
@Override
public SystemStatusResponse getSystemStatus(SystemStatusRequest request) {
SystemStatusResponse response = new SystemStatusResponse();
response.setSystemName("AX Hub 시스템");
response.setEnvironment(request != null && request.getEnvironment() != null && !request.getEnvironment().isBlank()
? request.getEnvironment() : "개발");
response.setStatus("정상");
response.setCheckedAt(OffsetDateTime.now().toString());
return response;
}
}

View File

@@ -0,0 +1,33 @@
package io.shinhanlife.dat.mcc.biz.iam.usecase.impl;
import io.shinhanlife.dat.mcc.biz.iam.dto.TeamContactRequest;
import io.shinhanlife.dat.mcc.biz.iam.usecase.TeamContactUseCase;
import org.springframework.stereotype.Service;
@Service
public class TeamContactUseCaseImpl implements TeamContactUseCase {
@Override
public String getTeamContactInfo(TeamContactRequest request) {
String target = request != null && request.getTarget() != null ? request.getTarget() : "전체";
if (target.contains("AX") || target.contains("추진")) {
return "- AX 추진팀: 박세진 프로\n";
} else if (target.contains("이사") || target.contains("담당자") || target.contains("윤희준")) {
return "- MCP & TOOL 팀 담당자: 윤희준 이사\n";
} else if (target.contains("MCP")) {
return "- MCP 팀: 고석민 수석, 장효원 책임\n";
} else if (target.contains("TOOL") || target.contains("")) {
return "- TOOL 팀: 김형식 수석, 김영진 책임, 김도겸 대리, 이주희 선임, 문주현 선임, 이보람 대리, 박수빈 대리\n";
} else {
return "=================================================\n" +
"[ 신한라이프 AX HUB 팀 전체 인원 안내 ]\n" +
"=================================================\n" +
"- AX 추진팀: 박세진 프로\n" +
"- MCP & TOOL 팀 담당자: 윤희준 이사\n" +
"- MCP 팀: 고석민 수석, 장효원 책임\n" +
"- TOOL 팀: 김형식 수석, 김영진 책임, 김도겸 대리, 이주희 선임, 문주현 선임, 이보람 대리, 박수빈 대리\n" +
"=================================================";
}
}
}

View File

@@ -0,0 +1,5 @@
package io.shinhanlife.dat.mcc.biz.pct.converter;
/** Per-Tool converters are generated beside this compatibility marker. */
public interface SystemNoticeConverter {
}

View File

@@ -0,0 +1,10 @@
package io.shinhanlife.dat.mcc.biz.pct.dto;
import lombok.Data;
import org.springaicommunity.mcp.annotation.McpToolParam;
@Data
public class SystemNoticeRequest {
@McpToolParam(description = "공지 분류", required = false)
private String category;
}

View File

@@ -0,0 +1,16 @@
package io.shinhanlife.dat.mcc.biz.pct.dto;
import java.util.List;
import lombok.Data;
@Data
public class SystemNoticeResponse {
private List<Notice> notices;
@Data
public static class Notice {
private String title;
private String priority;
private String publishedDate;
}
}

View File

@@ -0,0 +1,32 @@
package io.shinhanlife.dat.mcc.biz.pct.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeRequest;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface MaintenanceInquiryUseCase {
@McpTool(name = "pct_maintenance_schedule", title = "점검 일정 조회", description = "모의 점검 일정 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_MAINTENANCE_SCHEDULE")
SystemNoticeResponse getPrimary(SystemNoticeRequest request);
@McpTool(name = "pct_maintenance_history", title = "점검 이력 조회", description = "모의 점검 이력 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_MAINTENANCE_HISTORY")
SystemNoticeResponse getList(SystemNoticeRequest request);
@McpTool(name = "pct_maintenance_scope", title = "점검 범위 조회", description = "모의 점검 범위 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_MAINTENANCE_SCOPE")
SystemNoticeResponse getStatus(SystemNoticeRequest request);
@McpTool(name = "pct_maintenance_status", title = "점검 진행 상태 조회", description = "모의 점검 진행 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_MAINTENANCE_STATUS")
SystemNoticeResponse getDetail(SystemNoticeRequest request);
@McpTool(name = "pct_maintenance_contact", title = "점검 담당자 조회", description = "모의 점검 담당자 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_MAINTENANCE_CONTACT")
SystemNoticeResponse getContact(SystemNoticeRequest request);
@McpTool(name = "pct_maintenance_result", title = "점검 결과 조회", description = "모의 점검 결과 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_MAINTENANCE_RESULT")
SystemNoticeResponse getResult(SystemNoticeRequest request);
}

View File

@@ -0,0 +1,32 @@
package io.shinhanlife.dat.mcc.biz.pct.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeRequest;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface ReleaseInquiryUseCase {
@McpTool(name = "pct_release_notice", title = "배포 공지 조회", description = "모의 배포 공지 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_RELEASE_NOTICE")
SystemNoticeResponse getPrimary(SystemNoticeRequest request);
@McpTool(name = "pct_release_history", title = "배포 이력 조회", description = "모의 배포 이력 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_RELEASE_HISTORY")
SystemNoticeResponse getList(SystemNoticeRequest request);
@McpTool(name = "pct_release_schedule", title = "배포 일정 조회", description = "모의 배포 일정 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_RELEASE_SCHEDULE")
SystemNoticeResponse getStatus(SystemNoticeRequest request);
@McpTool(name = "pct_release_version", title = "배포 버전 조회", description = "모의 배포 버전 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_RELEASE_VERSION")
SystemNoticeResponse getDetail(SystemNoticeRequest request);
@McpTool(name = "pct_release_scope", title = "배포 범위 조회", description = "모의 배포 범위 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_RELEASE_SCOPE")
SystemNoticeResponse getContact(SystemNoticeRequest request);
@McpTool(name = "pct_release_status", title = "배포 상태 조회", description = "모의 배포 상태 조회 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_RELEASE_STATUS")
SystemNoticeResponse getResult(SystemNoticeRequest request);
}

View File

@@ -0,0 +1,48 @@
package io.shinhanlife.dat.mcc.biz.pct.usecase;
import io.shinhanlife.dat.lib.annotation.GrowToolHint;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeRequest;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeResponse;
import org.springaicommunity.mcp.annotation.McpTool;
public interface SystemNoticeUseCase {
@McpTool(name = "pct_notice_list", title = "시스템 공지 조회", description = "모의 시스템 공지 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_NOTICE_LIST")
SystemNoticeResponse getSystemNotices(SystemNoticeRequest request);
@McpTool(name = "pct_notice_search", title = "공지 검색 조회", description = "모의 공지 검색 결과를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_NOTICE_SEARCH")
SystemNoticeResponse getNoticeSearch(SystemNoticeRequest request);
@McpTool(name = "pct_notice_recent", title = "최신 공지 조회", description = "모의 최신 공지를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_NOTICE_RECENT")
SystemNoticeResponse getRecentNotices(SystemNoticeRequest request);
@McpTool(name = "pct_alert_list", title = "알림 목록 조회", description = "모의 알림 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_ALERT_LIST")
SystemNoticeResponse getAlertList(SystemNoticeRequest request);
@McpTool(name = "pct_notice_detail", title = "공지 상세 조회", description = "모의 공지 상세 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_NOTICE_DETAIL")
SystemNoticeResponse getNoticeDetail(SystemNoticeRequest request);
@McpTool(name = "pct_notice_category", title = "공지 분류 조회", description = "모의 공지 분류 정보를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_NOTICE_CATEGORY")
SystemNoticeResponse getNoticeCategory(SystemNoticeRequest request);
@McpTool(name = "pct_incident_list", title = "장애 목록 조회", description = "모의 장애 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_INCIDENT_LIST")
SystemNoticeResponse getIncidentList(SystemNoticeRequest request);
@McpTool(name = "pct_change_request_list", title = "변경 요청 목록 조회", description = "모의 변경 요청 목록을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_CHANGE_REQUEST_LIST")
SystemNoticeResponse getChangeRequestList(SystemNoticeRequest request);
@McpTool(name = "pct_operation_calendar", title = "운영 일정 조회", description = "모의 운영 일정을 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_OPERATION_CALENDAR")
SystemNoticeResponse getOperationCalendar(SystemNoticeRequest request);
@McpTool(name = "pct_service_request_status", title = "서비스 요청 상태 조회", description = "모의 서비스 요청 상태를 조회합니다.")
@GrowToolHint(requiresApproval = false, categoryKey = "pct", mappingId = "DIRECT_PCT_SERVICE_REQUEST_STATUS")
SystemNoticeResponse getServiceRequestStatus(SystemNoticeRequest request);
}

View File

@@ -0,0 +1,49 @@
package io.shinhanlife.dat.mcc.biz.pct.usecase.impl;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeRequest;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeResponse;
import io.shinhanlife.dat.mcc.biz.pct.usecase.MaintenanceInquiryUseCase;
import org.springframework.stereotype.Service;
@Service
public class MaintenanceInquiryUseCaseImpl implements MaintenanceInquiryUseCase {
@Override
public SystemNoticeResponse getPrimary(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getList(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getStatus(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getDetail(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getContact(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getResult(SystemNoticeRequest request) {
return mockResponse(request);
}
private SystemNoticeResponse mockResponse(SystemNoticeRequest request) {
SystemNoticeResponse.Notice notice = new SystemNoticeResponse.Notice();
notice.setTitle("점검 정보 조회");
notice.setPriority("보통");
notice.setPublishedDate("2026-08-13");
SystemNoticeResponse response = new SystemNoticeResponse();
response.setNotices(java.util.List.of(notice));
return response;
}
}

View File

@@ -0,0 +1,49 @@
package io.shinhanlife.dat.mcc.biz.pct.usecase.impl;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeRequest;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeResponse;
import io.shinhanlife.dat.mcc.biz.pct.usecase.ReleaseInquiryUseCase;
import org.springframework.stereotype.Service;
@Service
public class ReleaseInquiryUseCaseImpl implements ReleaseInquiryUseCase {
@Override
public SystemNoticeResponse getPrimary(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getList(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getStatus(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getDetail(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getContact(SystemNoticeRequest request) {
return mockResponse(request);
}
@Override
public SystemNoticeResponse getResult(SystemNoticeRequest request) {
return mockResponse(request);
}
private SystemNoticeResponse mockResponse(SystemNoticeRequest request) {
SystemNoticeResponse.Notice notice = new SystemNoticeResponse.Notice();
notice.setTitle("배포 정보 조회");
notice.setPriority("보통");
notice.setPublishedDate("2026-08-13");
SystemNoticeResponse response = new SystemNoticeResponse();
response.setNotices(java.util.List.of(notice));
return response;
}
}

View File

@@ -0,0 +1,31 @@
package io.shinhanlife.dat.mcc.biz.pct.usecase.impl;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeRequest;
import io.shinhanlife.dat.mcc.biz.pct.dto.SystemNoticeResponse;
import io.shinhanlife.dat.mcc.biz.pct.usecase.SystemNoticeUseCase;
import java.util.List;
import org.springframework.stereotype.Service;
@Service
public class SystemNoticeUseCaseImpl implements SystemNoticeUseCase {
@Override public SystemNoticeResponse getSystemNotices(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getNoticeSearch(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getRecentNotices(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getAlertList(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getNoticeDetail(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getNoticeCategory(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getIncidentList(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getChangeRequestList(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getOperationCalendar(SystemNoticeRequest request) { return mockResponse(); }
@Override public SystemNoticeResponse getServiceRequestStatus(SystemNoticeRequest request) { return mockResponse(); }
private SystemNoticeResponse mockResponse() {
SystemNoticeResponse.Notice notice = new SystemNoticeResponse.Notice();
notice.setTitle("정기 점검 안내");
notice.setPriority("보통");
notice.setPublishedDate("2026-08-13");
SystemNoticeResponse response = new SystemNoticeResponse();
response.setNotices(List.of(notice));
return response;
}
}

View File

@@ -0,0 +1,32 @@
package io.shinhanlife.dat.mcc.sys;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.ConfigurationPropertiesScan;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Import;
import io.shinhanlife.dat.lib.mcp.ToolMcpServerConfiguration;
/**
* @package io.shinhanlife.dat.mcc.sys
* @className DatWasSysApplication
* @description AX HUB 시스템 처리 클래스
* @author system
* @create 2026.08.13
* <pre>
* ---------- 개정이력 ----------
* 수정일 수정자 수정내용
* ---------- -------- ---------------------------
* 2026.08.13 system 최초생성
*
* </pre>
*/
@SpringBootApplication(scanBasePackages = {"io.shinhanlife.dat.mcc", "io.shinhanlife.dat.lib"})
@ConfigurationPropertiesScan(basePackages = {"io.shinhanlife.dat.mcc", "io.shinhanlife.dat.lib"})
@EnableCaching
@Import(ToolMcpServerConfiguration.class)
public class DatWasSysApplication {
public static void main(String[] args) {
SpringApplication.run(DatWasSysApplication.class, args);
}
}

View File

@@ -0,0 +1,46 @@
# OCI 클라우드 환경 전용 설정
server:
port: ${PORT:8086}
spring:
config:
activate:
on-profile: dev
import:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-dev.yml
axhub:
gateway:
url: https://axhubmcp.devjun.net
tool:
url: http://144.24.70.100:8086
eims:
http:
url: http://localhost:${server.port}/api/gateway
tcp:
host: 127.0.0.1
port: 8090
timeout: 5000
jsp:
form:
url: http://localhost:${server.port}/mock/jsp-form
json:
url: http://localhost:${server.port}/mock/jsp-json
mci:
url: http://localhost:${server.port}/api/mock/esb/api
mcistring:
url: http://localhost:${server.port}/api/mock/esb/string
shinhan:
integration:
envrTypeCd: D
eai:
url: http://10.176.32.181
internalMci:
url: http://10.176.32.173
bancaMci:
url: http://10.176.32.117
externalMci:
url: http://10.176.32.176

View File

@@ -0,0 +1,45 @@
# Local 환경 전용 설정 (H2 메모리 DB 등)
spring:
config:
activate:
on-profile: local
import:
- 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
username: sa
password: password
h2:
console:
enabled: true
eims:
http:
url: http://localhost:${server.port}/api/gateway
tcp:
host: 127.0.0.1
port: 8090
timeout: 5000
jsp:
form:
url: http://localhost:${server.port}/mock/jsp-form
json:
url: http://localhost:${server.port}/mock/jsp-json
mci:
url: http://localhost:${server.port}/api/mock/esb/api
mcistring:
url: http://localhost:${server.port}/api/mock/esb/string
mcp:
security:
tenant-domains:
mcp-client-1: CUSTOMER,COMMON
mcp-client-2: ALL
axhub:
gateway:
url: http://localhost:8081
tool:
url: ${AXHUB_TOOL_URL:http://localhost:${server.port}}

View File

@@ -0,0 +1,16 @@
server:
port: ${PORT:8086}
spring:
config:
activate:
on-profile: prod
import:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-prod.yml
axhub:
gateway:
url: ${AXHUB_GATEWAY_URL}
tool:
url: ${AXHUB_TOOL_URL}

View File

@@ -0,0 +1,16 @@
server:
port: ${PORT:8086}
spring:
config:
activate:
on-profile: test
import:
- classpath:glow/application-glow.yml
- classpath:glow/application-glow-test.yml
axhub:
gateway:
url: ${AXHUB_GATEWAY_URL}
tool:
url: ${AXHUB_TOOL_URL}

View File

@@ -0,0 +1,18 @@
server:
port: 8086
spring:
application:
name: dat-was-sys
profiles:
active: local
logging:
level:
org.apache.kafka: ERROR
mcp:
namespace: ""
manifest:
bundle-id: was-sys
name-prefix: ""
security:
tenant-domains:
TESTER-DEV: ALL

View File

@@ -0,0 +1,25 @@
spring:
config:
activate:
on-profile: local
glow:
communication:
http:
api-list:
- name: ga-status-api
domain: ${AXHUB_GA_STATUS_API_HTTP_DOMAIN:http://localhost:${server.port}}
url: ${AXHUB_GA_STATUS_API_HTTP_URL:/api/mock/http/pct_ga_status}
method: POST
content-type: application/json;charset=UTF-8
biz-pod: false
- name: ga-activity-status
domain: ${AXHUB_GA_ACTIVITY_STATUS_HTTP_DOMAIN:http://localhost:${server.port}}
url: ${AXHUB_GA_ACTIVITY_STATUS_HTTP_URL:/api/mock/http/pct_ga_status}
method: POST
content-type: application/json;charset=UTF-8
biz-pod: false
axhub:
mock:
http:
enabled: true

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%X{traceId}] %-5level %logger{36} - %msg%n" />
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${LOG_PATTERN}</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/dat-was-sys.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/dat-was-sys-%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${LOG_PATTERN}</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
<logger name="io.shinhanlife" level="DEBUG" />
</configuration>

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_access_policy\",\"title\":\"접근 정책 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_access_token_status\",\"title\":\"접근 토큰 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_account_list\",\"title\":\"계정 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_account_lock_status\",\"title\":\"계정 잠금 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_account_password_expiry\",\"title\":\"비밀번호 만료일 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_account_profile\",\"title\":\"계정 프로필 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_account_role\",\"title\":\"계정 역할 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_account_status\",\"title\":\"계정 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_approval_authority\",\"title\":\"결재 권한 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_authentication_method\",\"title\":\"인증 수단 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_delegation_status\",\"title\":\"권한 위임 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_deployment_version\",\"title\":\"배포 버전 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_environment_info\",\"title\":\"환경 정보 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"iam_identity_provider_list\",\"title\":\"인증 제공자 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\",\"checkedAt\":\"2026-08-13T09:00:00+09:00\"}"}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_login_history\",\"title\":\"로그인 이력 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_menu_access\",\"title\":\"메뉴 접근 권한 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_mfa_status\",\"title\":\"다중 인증 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_permission_list\",\"title\":\"권한 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"iam_privilege_change_history\",\"title\":\"권한 변경 이력 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\",\"checkedAt\":\"2026-08-13T09:00:00+09:00\"}"}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_resource_access\",\"title\":\"자원 접근 권한 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_role_list\",\"title\":\"역할 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"iam_security_event_list\",\"title\":\"보안 이벤트 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\",\"checkedAt\":\"2026-08-13T09:00:00+09:00\"}"}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_service_health\",\"title\":\"서비스 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_session_list\",\"title\":\"세션 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_session_status\",\"title\":\"세션 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_system_status\",\"title\":\"시스템 상태 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\",\"checkedAt\":\"2026-08-13T09:00:00+09:00\"}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"iam_trusted_device_list\",\"title\":\"신뢰 기기 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\"}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"iam_user_group_list\",\"title\":\"사용자 그룹 목록 조회\",\"systemName\":\"AX Hub IAM\",\"environment\":\"개발\",\"status\":\"정상\",\"checkedAt\":\"2026-08-13T09:00:00+09:00\"}"}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_alert_list\",\"title\":\"알림 목록 조회\",\"notices\":[{\"title\":\"알림 목록 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"pct_change_request_list\",\"title\":\"변경 요청 목록 조회\",\"notices\":[{\"title\":\"변경 요청 목록 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"}

View File

@@ -0,0 +1,5 @@
{
"resultCode" : "SUCCESS",
"totalSessions" : 12345,
"userCount" : 9876
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"pct_incident_list\",\"title\":\"장애 목록 조회\",\"notices\":[{\"title\":\"장애 목록 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_maintenance_contact\",\"title\":\"점검 담당자 조회\",\"notices\":[{\"title\":\"점검 담당자 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_maintenance_history\",\"title\":\"점검 이력 조회\",\"notices\":[{\"title\":\"점검 이력 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_maintenance_result\",\"title\":\"점검 결과 조회\",\"notices\":[{\"title\":\"점검 결과 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_maintenance_schedule\",\"title\":\"점검 일정 조회\",\"notices\":[{\"title\":\"점검 일정 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_maintenance_scope\",\"title\":\"점검 범위 조회\",\"notices\":[{\"title\":\"점검 범위 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_maintenance_status\",\"title\":\"점검 진행 상태 조회\",\"notices\":[{\"title\":\"점검 진행 상태 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_notice_category\",\"title\":\"공지 분류 조회\",\"notices\":[{\"title\":\"공지 분류 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_notice_detail\",\"title\":\"공지 상세 조회\",\"notices\":[{\"title\":\"공지 상세 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_notice_list\",\"title\":\"시스템 공지 조회\",\"notices\":[{\"title\":\"시스템 공지 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"pct_notice_recent\",\"title\":\"최신 공지 조회\",\"notices\":[{\"title\":\"최신 시스템 공지\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"pct_notice_search\",\"title\":\"공지 검색 조회\",\"notices\":[{\"title\":\"점검 공지\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"pct_operation_calendar\",\"title\":\"운영 일정 조회\",\"notices\":[{\"title\":\"운영 일정 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_release_history\",\"title\":\"배포 이력 조회\",\"notices\":[{\"title\":\"배포 이력 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_release_notice\",\"title\":\"배포 공지 조회\",\"notices\":[{\"title\":\"배포 공지 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_release_schedule\",\"title\":\"배포 일정 조회\",\"notices\":[{\"title\":\"배포 일정 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_release_scope\",\"title\":\"배포 범위 조회\",\"notices\":[{\"title\":\"배포 범위 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_release_status\",\"title\":\"배포 상태 조회\",\"notices\":[{\"title\":\"배포 상태 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1,4 @@
{
"resultCode": "SUCCESS",
"data": "{\"toolName\":\"pct_release_version\",\"title\":\"배포 버전 조회\",\"notices\":[{\"title\":\"배포 버전 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"
}

View File

@@ -0,0 +1 @@
{"resultCode":"SUCCESS","data":"{\"toolName\":\"pct_service_request_status\",\"title\":\"서비스 요청 상태 조회\",\"notices\":[{\"title\":\"서비스 요청 상태 조회\",\"priority\":\"보통\",\"publishedDate\":\"2026-08-13\"}]}"}

View File

@@ -0,0 +1,22 @@
name: iam_access_policy
display_name: 접근 정책 조회
version: 1.0.0
category_key: iam
description:
function: 모의 접근 정책 조회 정보를 조회합니다.
when_to_use: 접근 정책 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 접근 정책 조회 정보를 조회합니다.
example_queries: ["접근 정책 조회 정보를 보여줘", "접근 정책 조회을 확인해줘", "현재 접근 정책 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_access_token_status
display_name: 접근 토큰 상태 조회
version: 1.0.0
category_key: iam
description:
function: 모의 접근 토큰 상태 조회 정보를 조회합니다.
when_to_use: 접근 토큰 상태 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 접근 토큰 상태 조회 정보를 조회합니다.
example_queries: ["접근 토큰 상태 조회 정보를 보여줘", "접근 토큰 상태 조회을 확인해줘", "현재 접근 토큰 상태 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_account_list
display_name: 계정 목록 조회
version: 1.0.0
category_key: iam
description:
function: 모의 계정 목록 조회 정보를 조회합니다.
when_to_use: 계정 목록 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 계정 목록 조회 정보를 조회합니다.
example_queries: ["계정 목록 조회 정보를 보여줘", "계정 목록 조회을 확인해줘", "현재 계정 목록 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_account_lock_status
display_name: 계정 잠금 상태 조회
version: 1.0.0
category_key: iam
description:
function: 모의 계정 잠금 상태 조회 정보를 조회합니다.
when_to_use: 계정 잠금 상태 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 계정 잠금 상태 조회 정보를 조회합니다.
example_queries: ["계정 잠금 상태 조회 정보를 보여줘", "계정 잠금 상태 조회을 확인해줘", "현재 계정 잠금 상태 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_account_password_expiry
display_name: 비밀번호 만료일 조회
version: 1.0.0
category_key: iam
description:
function: 모의 비밀번호 만료일 조회 정보를 조회합니다.
when_to_use: 비밀번호 만료일 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 비밀번호 만료일 조회 정보를 조회합니다.
example_queries: ["비밀번호 만료일 조회 정보를 보여줘", "비밀번호 만료일 조회을 확인해줘", "현재 비밀번호 만료일 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_account_profile
display_name: 계정 프로필 조회
version: 1.0.0
category_key: iam
description:
function: 모의 계정 프로필 조회 정보를 조회합니다.
when_to_use: 계정 프로필 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 계정 프로필 조회 정보를 조회합니다.
example_queries: ["계정 프로필 조회 정보를 보여줘", "계정 프로필 조회을 확인해줘", "현재 계정 프로필 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_account_role
display_name: 계정 역할 조회
version: 1.0.0
category_key: iam
description:
function: 모의 계정 역할 조회 정보를 조회합니다.
when_to_use: 계정 역할 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 계정 역할 조회 정보를 조회합니다.
example_queries: ["계정 역할 조회 정보를 보여줘", "계정 역할 조회을 확인해줘", "현재 계정 역할 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_account_status
display_name: 계정 상태 조회
version: 1.0.0
category_key: iam
description:
function: 모의 계정 상태 조회 정보를 조회합니다.
when_to_use: 계정 상태 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 계정 상태 조회 정보를 조회합니다.
example_queries: ["계정 상태 조회 정보를 보여줘", "계정 상태 조회을 확인해줘", "현재 계정 상태 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_approval_authority
display_name: 결재 권한 조회
version: 1.0.0
category_key: iam
description:
function: 모의 결재 권한 조회 정보를 조회합니다.
when_to_use: 결재 권한 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 결재 권한 조회 정보를 조회합니다.
example_queries: ["결재 권한 조회 정보를 보여줘", "결재 권한 조회을 확인해줘", "현재 결재 권한 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_authentication_method
display_name: 인증 수단 조회
version: 1.0.0
category_key: iam
description:
function: 모의 인증 수단 조회 정보를 조회합니다.
when_to_use: 인증 수단 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 인증 수단 조회 정보를 조회합니다.
example_queries: ["인증 수단 조회 정보를 보여줘", "인증 수단 조회을 확인해줘", "현재 인증 수단 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_delegation_status
display_name: 권한 위임 상태 조회
version: 1.0.0
category_key: iam
description:
function: 모의 권한 위임 상태 조회 정보를 조회합니다.
when_to_use: 권한 위임 상태 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 권한 위임 상태 조회 정보를 조회합니다.
example_queries: ["권한 위임 상태 조회 정보를 보여줘", "권한 위임 상태 조회을 확인해줘", "현재 권한 위임 상태 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,14 @@
name: iam_deployment_version
display_name: 배포 버전 조회
version: 1.0.0
category_key: iam
description: {function: 모의 배포 버전을 조회합니다., when_to_use: 배포 버전 확인이 필요할 때 사용합니다., when_not_to_use: 배포 실행에는 사용하지 않습니다., io_limits: 모의 데이터만 반환합니다.}
display_description: 배포 버전을 조회합니다.
example_queries: ["배포 버전을 보여줘", "현재 버전을 확인해줘", "개발 환경 버전을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema: {type: object, properties: {environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}}, additionalProperties: false}
tags: [iam, 배포, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,14 @@
name: iam_environment_info
display_name: 환경 정보 조회
version: 1.0.0
category_key: iam
description: {function: 모의 환경 정보를 조회합니다., when_to_use: 환경 정보 확인이 필요할 때 사용합니다., when_not_to_use: 환경 변경에는 사용하지 않습니다., io_limits: 모의 데이터만 반환합니다.}
display_description: 환경 정보를 조회합니다.
example_queries: ["환경 정보를 보여줘", "개발 환경을 확인해줘", "현재 환경 정보를 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema: {type: object, properties: {environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}}, additionalProperties: false}
tags: [iam, 환경, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_identity_provider_list
display_name: 인증 제공자 목록 조회
version: 1.0.0
category_key: iam
description:
function: 모의 인증 제공자 목록 조회 정보를 조회합니다.
when_to_use: 인증 제공자 목록 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 인증 제공자 목록 조회 정보를 조회합니다.
example_queries: ["인증 제공자 목록 조회 정보를 보여줘", "인증 제공자 목록 조회을 확인해줘", "현재 인증 제공자 목록 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회 조건, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_login_history
display_name: 로그인 이력 조회
version: 1.0.0
category_key: iam
description:
function: 모의 로그인 이력 조회 정보를 조회합니다.
when_to_use: 로그인 이력 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 로그인 이력 조회 정보를 조회합니다.
example_queries: ["로그인 이력 조회 정보를 보여줘", "로그인 이력 조회을 확인해줘", "현재 로그인 이력 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_menu_access
display_name: 메뉴 접근 권한 조회
version: 1.0.0
category_key: iam
description:
function: 모의 메뉴 접근 권한 조회 정보를 조회합니다.
when_to_use: 메뉴 접근 권한 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 메뉴 접근 권한 조회 정보를 조회합니다.
example_queries: ["메뉴 접근 권한 조회 정보를 보여줘", "메뉴 접근 권한 조회을 확인해줘", "현재 메뉴 접근 권한 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_mfa_status
display_name: 다중 인증 상태 조회
version: 1.0.0
category_key: iam
description:
function: 모의 다중 인증 상태 조회 정보를 조회합니다.
when_to_use: 다중 인증 상태 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 다중 인증 상태 조회 정보를 조회합니다.
example_queries: ["다중 인증 상태 조회 정보를 보여줘", "다중 인증 상태 조회을 확인해줘", "현재 다중 인증 상태 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_permission_list
display_name: 권한 목록 조회
version: 1.0.0
category_key: iam
description:
function: 모의 권한 목록 조회 정보를 조회합니다.
when_to_use: 권한 목록 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 권한 목록 조회 정보를 조회합니다.
example_queries: ["권한 목록 조회 정보를 보여줘", "권한 목록 조회을 확인해줘", "현재 권한 목록 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회할 환경명, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

View File

@@ -0,0 +1,22 @@
name: iam_privilege_change_history
display_name: 권한 변경 이력 조회
version: 1.0.0
category_key: iam
description:
function: 모의 권한 변경 이력 조회 정보를 조회합니다.
when_to_use: 권한 변경 이력 조회 확인이 필요할 때 사용합니다.
when_not_to_use: 정보 변경이나 실행 작업에는 사용하지 않습니다.
io_limits: 모의 조회 데이터만 반환하며 외부 시스템을 변경하지 않습니다.
display_description: 권한 변경 이력 조회 정보를 조회합니다.
example_queries: ["권한 변경 이력 조회 정보를 보여줘", "권한 변경 이력 조회을 확인해줘", "현재 권한 변경 이력 조회을 알려줘"]
read_only: true
destructive: false
idempotent: true
parameters_schema:
type: object
properties:
environment: {type: string, description: 조회 조건, pattern: "^[a-zA-Z0-9_-]{2,20}$"}
additionalProperties: false
tags: [iam, 조회, mock]
required_env_keys: []
owner_org: MCP_TOOL

Some files were not shown because too many files have changed in this diff Show More