50 lines
2.3 KiB
YAML
50 lines
2.3 KiB
YAML
# MCP Server의 bundle 조회 설정 예시 (protocol-v0.2-bundle-discovery.md 3절)
|
|
#
|
|
# 이 파일은 계약 예시이며 실제 적용 설정이 아니다.
|
|
# 운영에서는 ConfigMap으로 주입하고 MCP Server마다 다른 bundle 목록을 갖는다.
|
|
#
|
|
# 키 이름은 구현된 McpProperties와 1:1로 맞춰 두었다. Spring relaxed binding이
|
|
# camelCase와 kebab-case를 모두 받으므로 이 문서는 읽기 쉬운 camelCase를 쓴다.
|
|
|
|
mcp:
|
|
# 이 MCP Server의 식별자. Redis key namespace에 사용한다.
|
|
identity: mcp-insurance-core
|
|
|
|
registry:
|
|
# 조회 주기와 첫 scheduled refresh 쏠림을 줄이는 지연 jitter. 기동 preload는 즉시 실행한다.
|
|
refreshIntervalSeconds: 30
|
|
refreshJitterSeconds: 5
|
|
|
|
discovery:
|
|
# 운영 profile에서는 true이고 아래 Tool Service 매니페스트만 원천으로 사용한다.
|
|
# false는 local profile의 테스트 JSON에만 사용한다.
|
|
enabled: true
|
|
|
|
connectTimeoutMillis: 1000
|
|
readTimeoutMillis: 3000
|
|
|
|
# 상한. 초과 시 처리는 계약 7절을 따른다.
|
|
maxToolsPerBundle: 100
|
|
maxToolsTotal: 200
|
|
maxManifestBytes: 1048576
|
|
|
|
# 매니페스트가 선언한 Tool timeout의 상한. 초과분은 절삭한다.
|
|
# Tool이 과도한 timeout을 선언해 MCP 스레드를 점유하는 것을 막는다.
|
|
maxToolTimeoutMillis: 30000
|
|
|
|
# 스키마는 N개를 허용하지만 운영 배포에서는 항상 한 항목이다.
|
|
# MCP 배포 하나가 Tool Service 하나만 보기 때문이다(ADR-0007).
|
|
# 대상을 늘리려면 이 목록이 아니라 MCP 배포를 하나 더 만든다.
|
|
bundles:
|
|
- id: insurance-processing
|
|
# 매니페스트 조회 주소 (MCP -> Tool)
|
|
manifestUrl: http://tool-processing.ax-hub.svc.cluster.local:8080/tool-manifest
|
|
# Tool 실행 주소. Pod IP가 아니라 Service URL을 사용한다.
|
|
# 매니페스트가 이 값을 바꿀 수 없다. 이것이 조회 방식의 보안 기반이다.
|
|
baseEndpoint: http://tool-processing.ax-hub.svc.cluster.local:8080/mcp
|
|
# Tool Service가 선언한 표준 MCP name이 따라야 할 접두사.
|
|
# 업무 단위이며 중요도 등급을 넣지 않는다. 등급이 이름에 들어가면
|
|
# Tool 재분류가 Tool name 변경이 되어 Agent Builder 재등록을 부른다.
|
|
namePrefix: "processing."
|
|
enabled: true
|