ncloud-mcp-server
Manage Ncloud Kubernetes Service (NKS) clusters, including node groups, scaling, and configurations.
Manage Cloud DB for MongoDB instances, including creation, monitoring, and configuration.
Manage Cloud DB for MySQL instances, including creation, monitoring, and configuration.
Integrates with Naver Cloud Platform to manage over 60 services including compute, networking, database, storage, and more via the MCP protocol.
Manage Cloud DB for PostgreSQL instances, including creation, monitoring, and configuration.
Manage Cloud DB for Redis instances, including creation, monitoring, and configuration.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ncloud-mcp-serverlist my servers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Ncloud MCP Server
Naver Cloud Platform(Ncloud) 인프라를 AI 어시스턴트에서 직접 관리할 수 있는 Model Context Protocol (MCP) 서버입니다.
민간존(Public)·공공존(Government)·금융존(Financial)을 하나의 서버로 지원합니다. NCLOUD_ZONE=gov 또는 NCLOUD_ZONE=fin 한 줄로 해당 존의 API 게이트웨이·리전·서비스 카탈로그로 전환되며, 미설정 시 민간존입니다 → 존 선택.
주요 기능
Ncloud의 60개 이상 서비스, 1,000개 이상 API 도구를 MCP 프로토콜로 제공합니다.
카테고리 | 서비스 |
Compute | Server, Block Storage, Snapshot, Public IP, Init Script, Login Key, Placement Group, Fabric Cluster ⓕ, Auto Scaling, Cloud Functions |
Networking | VPC, Subnet, ACG, Network ACL, NAT Gateway, Route Table, VPC Peering, Network Interface, Load Balancer, Target Group, Global DNS, Global Traffic Manager ⓕ |
Database | Cloud DB for MySQL, PostgreSQL, MSSQL, MongoDB, Cache (Redis/Valkey), Cloud DB Serverless (MySQL) 🅿 |
Storage | Object Storage (S3 호환), Ncloud Storage (S3 호환) ⓕ, NAS, Archive Storage (Swift 호환) ⓕ |
Containers | Ncloud Kubernetes Service (NKS), Container Registry |
Security | Certificate Manager (2.0은 민간존 전용·메인 계정 키 필요), Private CA ⓕ, KMS (금융존은 암·복호화 6종만), Security Monitoring ⓕ, Secret Manager 🅿 |
Monitoring | Cloud Insight, Log Analytics |
Management & Governance | Activity Tracer, Cloud Advisor 🅿, Resource Manager, Sub Account, Web service Monitoring System (WMS), STS(호출자 식별) |
DevTools | SourceCommit, SourceBuild, SourceDeploy, SourcePipeline |
Analytics | Search Engine Service, Cloud Hadoop, Cloud Data Streaming Service, Data Stream 🅿, Data Catalog 🅿, Data Forest 🅿, Data Flow 🅿, Data Query 🅿, Datafence 🅿, Cloud Data Box 🅿 |
Media | VOD Station, Live Station ⓖ, One Click Multi DRM ⓕ |
Content Delivery (CDN) | Global Edge ⓕ, CDN+ (금융존 전용) |
Application | API Gateway, SENS (SMS/알림톡/브랜드메시지/Mail 🅿, 프로젝트), Cloud Outbound Mailer(민간존: 레거시 '27-12까지 / 공공존·금융존: 정식) |
Billing | Billing (요금/가격 조회, 비용·사용량, 할인) |
ℹ️ 각 카테고리는
NCLOUD_TOOL_GROUPS의 그룹 key와 1:1로 대응합니다. 도구 일부만 로딩하려면 아래 도구 그룹 선택 표를 참고하세요. 🅿 = 민간존 전용(공공존·금융존 API 가이드에 없음) · ⓖ = 공공존 미제공 · ⓕ = 금융존 미제공. 존별 세부 차이는 존 선택의 표를 참고하세요.
모든 도구에 MCP 표준 tool annotations(readOnlyHint/destructiveHint/idempotentHint)이 부여되어, 지원 클라이언트에서 조회 도구 자동 승인·파괴적 도구 확인 UX를 적용할 수 있습니다. 파괴적 도구의 confirm 파라미터 게이트는 그대로 유지됩니다(이중 방어).
Related MCP server: NCP MCP Server
사전 요구사항
Node.js 20 이상
Ncloud API 인증키 (포털에서 발급)
참고 사항
민간존(Public)·공공존(Government)·금융존(Financial) 을 지원합니다.
NCLOUD_ZONE으로 선택하며, 인증키는 반드시 해당 존 콘솔에서 발급한 것을 써야 합니다.API 스펙은 민간존 API 가이드, 공공존 API 가이드, 금융존 API 가이드를 기반으로 작성되었으며, 존별 엔드포인트·리전·오퍼레이션 차이는 세 가이드를 대조해 반영했습니다.
민간존 한국(KR) 리전 위주로 실계정 테스트되었습니다. 공공존·금융존 지원은 각 존의 공식 API 가이드 대조와 단위 테스트로 검증되었으며 아직 실계정으로 확인되지 않았습니다 — 공공존·금융존에서 문제가 있으면 이슈로 알려 주세요. 다른 리전·존에서는 일부 API의 동작이 다를 수 있습니다.
설치
npx (권장 — 설치 불필요)
별도 설치 없이 npx로 바로 실행할 수 있습니다:
npx -y ncloud-mcp-serverMCP 클라이언트 설정 방법은 아래 MCP 클라이언트 설정 섹션을 참고하세요.
소스에서 빌드
# 저장소 클론
git clone https://github.com/sjk4425/ncloud-mcp-server.git
cd ncloud-mcp-server
# 의존성 설치 및 빌드
npm install
npm run build환경 변수
변수 | 필수 | 설명 | 기본값 |
| ✅ | Ncloud API Access Key | - |
| ✅ | Ncloud API Secret Key | - |
| - | 존 선택. |
|
| - | 리전 코드. 민간존 |
|
| - | 기본 API 게이트웨이 override(존 기본값을 덮어씀) | 민간존 |
| - | Archive Storage 프로젝트 ID | - |
| - | Archive Storage 도메인 ID | - |
| - | SENS 채널 공통 기본 serviceId(NRN, 예 | - |
| - | Ncloud Storage( | virtual-hosted |
| - | 시작 시 로딩할 도구 그룹 선택. 미설정 시 전체 ON. | 전체 |
| - |
|
|
| - | API 요청 타임아웃(밀리초). 초과 시 호출이 중단되고 안내 메시지를 반환 (HTTP 429는 항상 최대 2회 자동 재시도, 조회 도구는 503/504·네트워크 오류도 재시도) |
|
| - | 클라이언트 에러 메시지 언어. |
|
| - | 옵트인 응답 크기 가드(바이트). 양수면 조회 도구의 대형 응답을 항목 단위로 잘라 임계 이하로 만들고 | - |
존 선택 (민간존 / 공공존 / 금융존)
하나의 패키지로 세 존을 지원합니다. NCLOUD_ZONE만 바꾸면 API 게이트웨이 도메인, 리전 카탈로그, 존별 서비스 카탈로그, 일부 서비스의 API 버전·경로·필드 차이까지 서버가 알아서 맞춥니다. 도구 이름과 파라미터는 세 존에서 동일하므로 프롬프트를 바꿀 필요가 없습니다.
민간존 ( | 공공존 ( | 금융존 ( | |
인증키 발급 | |||
기본 게이트웨이 |
|
|
|
리전 ( |
|
|
|
API 가이드 | |||
도구 수 (전 그룹) | 1,300 | 1,007 | 862 |
도구 수는
NCLOUD_ARCHIVE_PROJECT_ID/NCLOUD_ARCHIVE_DOMAIN_ID미설정 기준입니다. 설정하면 Archive Storage 도구 10개가 민간존·공공존에 추가됩니다.
⚠️ 인증키는 존별로 별개입니다. 민간존 키로 공공존·금융존을 호출하면(또는 그 반대) 인증 오류가 납니다.
NCLOUD_ZONE에pub/gov/fin외의 값을 주면 다른 존으로 조용히 가지 않도록 서버가 시작 시 종료합니다.
🔑 계정·키 관련 주의 (2.0.0)
Certificate Manager 2.0 (
ncloud_cm2_*, 민간존)은 메인 계정 Access Key로만 호출됩니다(Ncloud 기술지원 확인). 서브 계정 키는 2.0 엔드포인트가 HTTP 403으로 거부하며, 이때 서버는 호출자 정보와 함께 안내문을 돌려주고 조회·외부 인증서 등록은 어떤 키로든 되는 1.0 도구(ncloud_list_certificates,ncloud_register_external_certificate)를 안내합니다.Secret Manager (
ncloud_secret_*, 민간존)은 시크릿을 암호화한 KMS 키 종류에 따라 호스트가 다릅니다. 모든 도구의keyIsolation파라미터로 고릅니다 —global(기본,secretmanager.apigw.ntruss.com) /regional(KMS 리전 격리 키,ocapi-kr.ncloud.com/secretmanager; 일본 리전은 격리 키만). 격리 키 호스트는 서버 시작 시 리전(NCLOUD_REGION)으로 정해집니다.Cloud DB Serverless (
ncloud_serverless_*, 민간존)도 메인 계정 Access Key로만 호출됩니다. 서브 계정 키는 API가 HTTP 403sub account is not supported yet로 거부하며(2026-10-02 재확인, NCP_ADMINISTRATOR 서브 계정), 서버는 그 403에 메인 계정 키를 쓰라는 안내를 덧붙입니다. 같은 키로 Cloud DB for MySQL 등 다른 DB 도구는 정상 동작합니다.현재 키가 메인 계정인지 서브 계정인지는
ncloud_get_caller_identity(STS, 세 존)로 확인할 수 있습니다.
공공존 설정 예시
{
"mcpServers": {
"ncloud-gov": {
"command": "npx",
"args": ["-y", "ncloud-mcp-server"],
"env": {
"NCLOUD_ZONE": "gov",
"NCLOUD_ACCESS_KEY": "your-gov-access-key",
"NCLOUD_SECRET_KEY": "your-gov-secret-key",
"NCLOUD_REGION": "KR"
}
}
}
}금융존은 "NCLOUD_ZONE": "fin", "NCLOUD_REGION": "FKR"(생략 가능 — 금융존 기본값)에 금융존 콘솔에서 발급한 키를 넣으면 됩니다. 여러 존을 동시에 쓰려면 위처럼 이름이 다른 서버 항목을 여러 개(ncloud, ncloud-gov, ncloud-fin) 등록하면 됩니다.
존별 차이 (공식 가이드 대조, 2026-09-30 기준)
구분 | 내용 |
민간존 전용 서비스 | Cloud DB Serverless, Cloud Advisor, Live Station(금융존은 제공), Data Stream/Catalog/Forest/Flow/Query, Datafence, Cloud Data Box, Secret Manager, Certificate Manager 2.0, SENS Mail 채널 |
민간존 전용 오퍼레이션 | LB 리스너 인증서(SNI) 3종(금융존은 제공), NKS kubeconfig 재발급, VOD Station 채널 수정(금융존은 제공), DRM 정책 복제, SES/CDSS의 KVM(G3) 생성·스펙 조회 계열, KMS 키 생성의 |
공공존 전용 오퍼레이션 | Cloud DB for Cache 사용자(ACL) 관리 4종, Certificate Manager 사설 인증서 발급( |
금융존 미제공 서비스 | Global Traffic Manager, Ncloud Storage, Archive Storage, Cloud DB Serverless, Fabric Cluster, NKS Add-on Manager, Cloud Advisor, Data*, One Click Multi DRM, Global Edge(금융존 |
금융존 전용 오퍼레이션 | Cloud Insight Metric Export 6종, Cloud Log Analytics 서버 로그 수집 해제( |
같은 서비스, 다른 API | Cloud Functions: 민간존·금융존 API v2.1( |
호스트가 규칙( | Container Registry |
호스트가 규칙( | 기본 게이트웨이 |
이식하지 않은 서비스 | 민간·공공존의 CDN+, Global CDN (민간은 종료, 공공은 2026-12-31 종료 예정 — Global Edge 사용). 금융존은 Global Edge가 없어 CDN+ 5종을 등록 |
해당 존에서 제공되지 않는 도구는 등록 자체가 되지 않으므로 도구 목록에 나타나지 않습니다. ncloud_get_current_region으로 현재 서버가 묶인 존과 사용 가능한 리전을 확인할 수 있습니다.
MCP 클라이언트 설정
npx 사용 (권장)
mcp.json (또는 해당 클라이언트의 MCP 설정 파일)에 추가:
{
"mcpServers": {
"ncloud": {
"command": "npx",
"args": ["-y", "ncloud-mcp-server"],
"env": {
"NCLOUD_ACCESS_KEY": "your-access-key",
"NCLOUD_SECRET_KEY": "your-secret-key",
"NCLOUD_REGION": "KR"
}
}
}
}소스 빌드 사용
{
"mcpServers": {
"ncloud": {
"command": "node",
"args": ["path/to/ncloud-mcp-server/dist/index.js"],
"env": {
"NCLOUD_ACCESS_KEY": "your-access-key",
"NCLOUD_SECRET_KEY": "your-secret-key",
"NCLOUD_REGION": "KR"
}
}
}
}도구 그룹 선택 (선택)
기본 설정만으로 전체 도구(약 1,000개)가 모두 동작합니다. 그냥 다 쓰고 싶다면 이 변수를 설정하지 마세요 — 미설정이 곧 "전체 ON"이며 기존과 동일하게 동작합니다. 아래는 시작 컨텍스트를 가볍게 하거나(권장:
dynamic), 도구를 일부만 켜고 싶을 때만 보면 됩니다.
왜 필요한가요? 전체 ON이면 도구 정의만으로 세션 컨텍스트를 크게 점유합니다(tools/list ≈ 694KB / 약 177k 토큰). NCLOUD_TOOL_GROUPS로 필요한 그룹만 켜면 AI가 한 번에 보는 도구 수가 줄어 토큰 비용이 절감되고 도구 선택 정확도가 올라갑니다. 설정은 mcp.json의 env에 NCLOUD_TOOL_GROUPS 한 줄을 추가하면 됩니다. (common은 Region/Zone 공통 도구라 항상 자동 포함)
한눈에 — 어떤 값을 쓸까
원하는 것 | 설정값 | 동작 |
(권장) 가볍게 시작하고 필요할 때 자동 확장 |
| 핵심 세트로 시작, 나머지는 세션 중 자동으로 켜짐 |
특정 그룹을 매일 사용 |
| 핵심 세트 + analytics를 시작부터 ON, 나머지는 확장 가능 |
처음부터 전부 켜두기 | (미설정) 또는 | 14개 그룹 전부 ON (기존 동작) |
정해준 그룹만, 런타임 확장 금지 |
| 그 그룹만 — 런타임 확장 잠금 |
전체에서 일부만 제외 |
| billing 빼고 전부 ( |
핵심 규칙:
dynamic키워드가 있을 때만 세션 중 그룹 확장이 켜집니다.dynamic없이 그룹을 나열하면(예:compute,network) "딱 이것만"을 의미하는 잠금이 되고,all/미설정은 이미 전부 켜져 있어 확장이 무의미합니다(더 켤 그룹 없음). 사용 가능한 전체 그룹 key 목록은 아래 세부 제어의 표를 참조하세요.
권장: dynamic (동적 그룹)
전체를 다 켜는 대신 핵심 그룹만 켠 채 가볍게 시작하고, AI가 다른 서비스를 요청받으면 서버 재시작 없이 세션 중에 해당 그룹을 자동으로 켭니다.
{
"mcpServers": {
"ncloud": {
"command": "npx",
"args": ["-y", "ncloud-mcp-server"],
"env": {
"NCLOUD_ACCESS_KEY": "your-access-key",
"NCLOUD_SECRET_KEY": "your-secret-key",
"NCLOUD_REGION": "KR",
"NCLOUD_TOOL_GROUPS": "dynamic"
}
}
}
}한 줄 요약:
dynamic= "확장 모드 ON + 핵심 세트로 가볍게 시작". 안 쓰는 그룹은 처음에 안 올려 토큰을 아끼고, 필요할 때만 자동으로 켭니다.
시작 ON:
common+compute+network+database(약 367개 도구 / 약 65k 토큰 — 전체 대비 63% 절감)AI는 항상 켜져 있는 메타 도구로 나머지 그룹에 도달합니다:
ncloud_list_tool_groups— 14개 그룹의 서비스·도구 수·현재 ON/OFF 조회ncloud_enable_tool_group— 그룹을 런타임에 활성화 (멱등)
dynamic vs all — 무엇이 다른가
시작 시 로딩 | 안 쓰는 그룹 | 토큰(시작) | |
| 14개 그룹 전부 | 이미 다 켜져 있음 | ~177k |
| 핵심 세트만 | 필요할 때 자동으로 켜짐 | ~65k |
둘 다 결국 모든 그룹을 쓸 수 있지만, dynamic은 "처음엔 핵심만, 나머지는 쓸 때" 방식이라 시작 컨텍스트가 가볍습니다. 이 절감이 dynamic의 존재 이유입니다.
동작 흐름 (예: Live Station 요청)
1. 서버 시작: 핵심 그룹 + 메타 도구만 ON
2. 사용자: "Live Station 채널 목록 보여줘"
3. AI: 카탈로그에서 media 그룹 확인 → ncloud_enable_tool_group("media")
4. 서버: media 도구 등록 + tools/list_changed 통지 → 클라이언트 도구 목록 갱신
5. AI: 새로 나타난 Live Station 도구 호출 → 작업 계속켜진 상태는 세션 동안만 유지됩니다(다음 세션은 기본값으로 리셋).
dynamic에 그룹 키를 더하면 그 그룹은 "시작 즉시 ON"입니다(나중에 동적으로 붙는 게 아님). 예:dynamic,analytics는 핵심 세트 + analytics를 처음부터 켜고 나머지만 확장 대상으로 둡니다. 매일 쓰는 그룹은 이렇게 적어두면 enable 호출 없이 바로 씁니다.
클라이언트 호환성 — 동적 추가된 도구가 즉시 나타나려면 클라이언트가 tools/list_changed 통지를 지원해야 합니다.
클라이언트 |
| 비고 |
Claude Code | ✅ 지원 (검증) | enable 즉시 같은 세션에서 새 도구 호출 가능 |
Claude Desktop | ✅ 지원 (MCP 표준) | 미검증 |
Kiro | ❌ 미반영 (검증) | enable 해도 재시작 전까지 새 도구가 안 보임 — 아래 안내 참고 |
Cursor | ⚠️ 미검증 | 도구 목록 변경에 수동 새로고침이 필요할 수 있음 — 자가 검증 권장 |
Codex | ⚠️ 미검증 | 자가 검증 권장 |
💡 표에 없거나 "미검증"인 클라이언트는 30초만에 직접 확인할 수 있습니다.
NCLOUD_TOOL_GROUPS=dynamic으로 설정 후 AI에게 *"media 그룹 켜고 Live Station 채널 목록 보여줘"*라고 요청 → 새 도구가 그 세션에서 호출되면 지원, AI가 도구를 못 찾으면 미지원이니 그룹을 미리 나열하는 방식으로 쓰면 됩니다.
list_changed 미지원 클라이언트(예: Kiro)에서는
dynamic의 세션 중 자동 확장이 동작하지 않습니다. enable은 되지만 새 도구가 도구 목록에 안 떠 호출할 수 없습니다. 이 경우 자주 쓰는 그룹을 미리 나열하세요 — 예:dynamic,governance,media처럼 시작부터 켜거나, 명시 리스트(compute,network,...)·all로 설정. (enable 응답도 같은 폴백을 안내합니다:NCLOUD_TOOL_GROUPS에 그룹을 추가하고 재시작.) 폴백 시 기존과 동일한 경험으로 회귀하므로 악화는 없습니다.
ℹ️ 권한 경계: MCP 도구가 노출된다고 권한이 부여되는 것은 아닙니다. Ncloud 측 실제 권한은 Access Key의 Sub Account 권한이 최종 경계입니다. 동적 로딩은 confirm 게이트·destructive 경고 등 기존 안전장치를 우회하지 않습니다.
세부 제어 — 특정 그룹만 켜기 / 잠금
dynamic 없이 그룹 key를 쉼표로 나열하면 그 그룹만 켜지고 런타임 확장이 잠깁니다(엄격 운영·최소 권한 환경용). 예: "NCLOUD_TOOL_GROUPS": "compute,network,billing". all,-billing처럼 -로 특정 그룹을 제외할 수도 있으며, 제외된 그룹은 동적 enable도 거부됩니다(운영자 보안 경계).
서버 시작 시 어떤 그룹이 로딩됐는지 로그로 확인할 수 있습니다:
ncloud-mcp-server: 4개 그룹 등록 (common, compute, network, billing)잘못된 key는 무시되고 경고만 출력됩니다.
그룹 key → 포함 서비스
그룹 key | 포함 서비스 |
| Server, Block Storage, Snapshot, Public IP, Login Key, Init Script, Placement Group, Fabric Cluster, Auto Scaling, Cloud Functions |
| VPC, Subnet, ACG, Network ACL, NAT Gateway, Route Table, VPC Peering, Network Interface, Load Balancer, Target Group, Global DNS, Global Traffic Manager |
| Cloud DB for MySQL / PostgreSQL / MSSQL / MongoDB / Cache (Redis/Valkey; 공공존은 사용자(ACL) 관리 포함) / Cloud DB Serverless (MySQL, 민간존·메인 계정 키 전용) |
| Object Storage, Ncloud Storage, NAS, Archive Storage |
| Ncloud Kubernetes Service(NKS), Container Registry |
| Cloud Insight, Cloud Log Analytics |
| Activity Tracer, Cloud Advisor(민간존), Resource Manager, Sub Account, Web service Monitoring System, STS 호출자 식별( |
| SourceCommit, SourceBuild, SourceDeploy, SourcePipeline |
| Search Engine Service, Cloud Hadoop, Cloud Data Streaming Service, Data Stream/Catalog/Forest/Flow/Query(민간존), Datafence·Cloud Data Box(민간존) |
| VOD Station, Live Station(민간존·금융존), One Click Multi DRM |
| Global Edge (민간존·공공존) · CDN+ (금융존 전용 — 민간은 종료, 공공은 2026-12-31 종료 예정이라 미등록) |
| Certificate Manager(공공존은 사설 인증서 발급 포함, 민간존은 2.0 |
| API Gateway, SENS (SMS/알림톡/브랜드메시지/Mail(민간존), 프로젝트), Cloud Outbound Mailer(민간존 레거시 / 공공존 정식) |
| Billing (요금/가격 조회, 비용·사용량, 할인) |
| Region / Zone 공통 |
사용 예시
MCP 클라이언트에서 자연어로 Ncloud 인프라를 관리할 수 있습니다:
"현재 서버 목록을 보여줘"
"KR-2 존에 Ubuntu 서버를 하나 만들어줘"
"my-vpc의 서브넷 목록을 조회해줘"
"Cloud DB for MySQL 인스턴스 상태를 확인해줘"
"Object Storage에 새 버킷을 만들어줘"
"로드밸런서에 연결된 타겟 그룹을 확인해줘"
"Cloud Insight에서 CPU 사용률 상위 서버를 조회해줘"지원 리전
민간존 (NCLOUD_ZONE=pub, 기본값)
리전 | 코드 |
한국 |
|
일본 |
|
싱가포르 |
|
참고: 미국 서부(
USWN), 독일(DEN) 리전은 Classic 환경만 지원되어 VPC 기반인 본 MCP 서버에서는 사용이 제한됩니다.
공공존 (NCLOUD_ZONE=gov)
리전 | 코드 |
한국 수도권 (KR-CENTRAL) |
|
한국 남부권 (KR-SOUTH) |
|
참고: 공공존 Ncloud Storage·Archive Storage는
KR단일 리전이며, Object Storage는KR(gov-standard)·KRS(gov2-standard) 두 리전을 제공합니다.ncloud_set_region은 존의 리전 목록만 허용합니다.
금융존 (NCLOUD_ZONE=fin)
리전 | 코드 |
한국 (금융) |
|
참고: 금융존은
FKR단일 리전이며NCLOUD_REGION미설정 시FKR이 기본값입니다. Object Storage는kr.object.fin-ncloudstorage.com(서명 리전fin-standard)을 씁니다.
문제 해결
증상 | 원인 | 해결 방법 |
서버 시작 시 즉시 종료 | 환경 변수 미설정 |
|
| API 인증키 오류 | 포털에서 키 상태가 활성인지 확인. 키 값에 공백이나 줄바꿈이 포함되지 않았는지 확인 |
| 서비스 권한 부족 | 서비스 이용 신청 여부 확인. Sub Account 사용 시 해당 서비스에 대한 API 권한 부여 필요 |
| 잘못된 리전 코드 | 지원 리전(KR, JPN, SGN) 확인. |
| API 엔드포인트 연결 불가 | 네트워크 상태 확인. 방화벽/프록시 환경에서는 |
| API 응답 지연 | 잠시 후 재시도. 지속 시 Ncloud 상태 페이지 확인 |
| API Rate Limit 도달 | 요청 간격을 두고 재시도 |
프로젝트 구조
ncloud-mcp-server/
├── src/
│ ├── index.ts # MCP 서버 엔트리포인트 (stdio transport)
│ ├── auth/
│ │ └── signature.ts # HMAC-SHA256 서명 생성
│ ├── client/
│ │ ├── ncloud-client.ts # Ncloud API HTTP 클라이언트
│ │ ├── s3-compatible-client.ts # Object Storage (S3 호환)
│ │ └── swift-compatible-client.ts # Archive Storage (Swift 호환)
│ └── tools/ # 서비스별 MCP 도구 (63개 파일)
│ ├── compute-server.ts
│ ├── vpc.ts
│ ├── cloud-insight.ts
│ └── ...
├── package.json
├── tsconfig.json
├── LICENSE
└── README.md개발
# 빌드
npm run build
# 테스트
npm test
# 타입 체크
npx tsc --noEmit기여
이슈와 PR을 환영합니다. 기여 시 다음을 참고해주세요:
Fork 후 feature 브랜치에서 작업
npm run build로 빌드 확인npm test로 테스트 통과 확인PR 제출
라이선스
Available Tools
1300 toolsncloud_abort_multipart_uploadADestructive
⚠️ Destructive: Abort a multipart upload and delete all uploaded parts. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| uploadId | Yes | Upload ID of the multipart upload to abort | |
| bucketName | Yes | Name of the bucket | |
| objectName | Yes | Object key (path) for the multipart upload |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by explicitly warning '⚠️ Destructive' and detailing what gets destroyed ('delete all uploaded parts'). It also introduces the safety requirement 'Set confirm=true to execute', which is critical behavioral context not present in the annotation alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, high-impact sentence that front-loads the destructive warning and clearly states the action and confirm requirement. No filler or redundant information; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive action with 4 well-documented parameters and no output schema, the description covers the essential purpose, destructive effect, and confirmation gate. It lacks explicit references to related tools for obtaining uploadId, but this is not critical given the schema and name. Slight gap in usage context prevents a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already well-documented. The description reinforces the confirm parameter's necessity but does not add new meaning beyond the schema's existing descriptions for bucketName, objectName, uploadId, or confirm. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Abort a multipart upload and delete all uploaded parts.' This specifies the verb (abort), resource (multipart upload), and the effect (delete parts), distinguishing it from sibling operations like complete_multipart_upload or upload_part.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for cancelling an in-progress multipart upload, but does not explicitly contrast with alternatives (e.g., complete_multipart_upload) or provide when-to-use/when-not-to-use guidance. The name and warning make the primary use case clear, but no exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_accept_reject_vpc_peeringA
Accept or reject a pending VPC Peering request
| Name | Required | Description | Default |
|---|---|---|---|
| isAccept | Yes | true to accept, false to reject the peering request | |
| vpcPeeringInstanceNo | Yes | VPC Peering instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. It clearly indicates a mutating action (accept/reject), but does not disclose any consequences, reversibility, or permission requirements. The action itself is simple, but the description adds little beyond the name and schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that clearly communicates the tool's purpose. It is front-loaded with the action verb and resource, with no redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, and the schema fully documents both parameters. The description covers the action and adds the 'pending' requirement. While there is no output schema, for a binary accept/reject action the lack of return value documentation is acceptable. It is complete enough for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage for both parameters with clear descriptions (isAccept: true to accept, false to reject; vpcPeeringInstanceNo: VPC Peering instance number). The tool description adds only the 'pending' context, which is already implied by the word 'pending' in the description. No additional parameter meaning is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (accept or reject), the resource (VPC Peering request), and the condition (pending). It distinguishes this tool from sibling tools like create/delete/describe peering by focusing on the response to a pending request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'pending VPC Peering request' provides clear context that this tool is for responding to requests in a specific state. It does not explicitly name alternatives or exclusions, but the context is strong enough to know when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_acg_inbound_ruleB
Add an inbound rule to an Access Control Group
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (required) | |
| ipBlock | No | Access source IP block in CIDR format (e.g., 0.0.0.0/0). Cannot be used with accessControlGroupSequence. | |
| portRange | No | Allowed port range (e.g., 22, 1-65535). Required if protocol is TCP or UDP. | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP, or 1-254 protocol number) | |
| accessControlGroupNo | Yes | ACG number to add rule to (required) | |
| accessControlGroupSequence | No | Access source ACG number (alternative to ipBlock). Cannot be used with ipBlock. | |
| accessControlGroupRuleDescription | No | Rule description (0-1000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what the destructiveHint=false annotation already conveys. It does not state whether the rule is immediately applied, whether duplicate rules are prevented, or what the API response contains. For a mutation tool, this is a minimal level of transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It immediately communicates the action and target, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich input schema, the description is minimally viable but lacks operational context. It does not mention return values (no output schema) or the distinction from outbound rule addition, which would help an agent fully understand the tool's role. The moderate complexity (7 params, conditional rules) is partially addressed by the schema, but the description alone would be insufficient for a new user.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with descriptions for all seven parameters, including conditional requirements (e.g., portRange required for TCP/UDP) and mutual exclusivity (ipBlock vs accessControlGroupSequence). The tool description itself does not add any parameter semantics, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Add' and the resource 'inbound rule to an Access Control Group'. The word 'inbound' differentiates it from the sibling tool ncloud_add_acg_outbound_rule, making the tool's specific role unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as ncloud_add_acg_outbound_rule. It also does not mention any prerequisites (e.g., needing an existing ACG or VPC). The only implied usage is from the tool name itself, which is insufficient for an agent to choose confidently.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_acg_outbound_ruleA
Add an outbound rule to an Access Control Group
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (required) | |
| ipBlock | No | Destination IP block in CIDR format (e.g., 0.0.0.0/0). Cannot be used with accessControlGroupSequence. | |
| portRange | No | Allowed port range (e.g., 80, 1-65535). Required if protocol is TCP or UDP. | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP, or 1-254 protocol number) | |
| accessControlGroupNo | Yes | ACG number to add rule to (required) | |
| accessControlGroupSequence | No | Destination ACG number (alternative to ipBlock). Cannot be used with ipBlock. | |
| accessControlGroupRuleDescription | No | Rule description (0-1000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include destructiveHint: false, which provides a safety signal. The description adds that this is an additive mutation ('Add'), but does not disclose potential side effects (e.g., whether rules are appended, duplicate handling, or permission requirements). With annotations present, the baseline is lower, and the description adds minimal context beyond the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It is appropriately terse and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (7 params, mutual exclusions) and the absence of an output schema, the description only covers the basic purpose. While the schema documents parameters, the description lacks preconditions, expected behavior, or result information, leaving important gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 7 parameters have rich descriptions in the schema, including mutual exclusions (ipBlock vs. accessControlGroupSequence) and conditional requirements (portRange for TCP/UDP). The tool description itself adds no parameter information, so it does not exceed the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Add' and a specific resource 'outbound rule to an Access Control Group', clearly distinguishing it from inbound rule tools like ncloud_add_acg_inbound_rule. It precisely conveys the action and target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool vs. alternatives such as ncloud_add_acg_inbound_rule, nor are prerequisites (e.g., existing ACG and VPC) mentioned. The description gives no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_file_pluginB
Add file monitoring plugin(s) to a server instance.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| configList | Yes | File paths to monitor | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, and the description adds no behavioral context beyond the basic action. It does not disclose whether the operation is idempotent, whether the server must be running, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words, front-loading the verb and object. It is concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, and the description omits return value details and preconditions. It is minimal for a mutation tool, lacking context about plugin replacement behavior or server requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes all three parameters (instanceNo, configList, type) with descriptions, and the description adds no additional parameter semantics. Since schema coverage is 100%, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('add') and identifies the resource ('file monitoring plugin(s)') and target ('server instance'), distinguishing it from sibling tools like add_process_plugin and add_port_plugin.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool, such as whether it appends to existing plugins or replaces them, nor any alternatives. No context about prerequisites or comparison to sibling tools like set_file_plugins is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_lb_listener_certificateB
Add an SNI-based TLS certificate to a load balancer listener
| Name | Required | Description | Default |
|---|---|---|---|
| sslCertificateNo | Yes | SSL certificate number to add | |
| loadBalancerListenerNo | Yes | Load balancer listener number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=false, but description adds no additional behavioral context. For example, does it replace existing certificates? Are there limits? What permissions are required? The description is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the key verb and resource. It is concise with no unnecessary words, though could benefit from slight expansion.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple add operation with no output schema, the description adequately states the purpose. However, it lacks any mention of return values, effects (e.g., certificate added to listener's list), or related actions, which would help the agent understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters. The description does not add any extra meaning beyond what is in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add'), the resource ('SNI-based TLS certificate'), and the target ('load balancer listener'). It distinguishes from sibling tools like 'remove_lb_listener_certificate' and 'list_lb_listener_certificates'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. It does not mention prerequisites (e.g., listener and certificate must exist) or scenarios where adding a certificate is preferred over other operations like changing listener config.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_member_server_image_sharingB
Add sharing permission for a member server image to specified accounts
| Name | Required | Description | Default |
|---|---|---|---|
| targetLoginIdList | Yes | List of target login IDs to grant sharing permission | |
| memberServerImageInstanceNo | Yes | Member server image instance number to share |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, but the tool is still a mutation operation. The description does not disclose whether sharing is additive or replaces existing permissions, whether the operation is idempotent, or what happens if permissions already exist. It adds no behavioral context beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core action and resource. There is no redundancy or filler; every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and minimal annotations, the description is too sparse. It omits important contextual details such as whether the operation is additive, whether target accounts must exist, or any error conditions. The agent lacks sufficient information to predict side effects or verify success.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters clearly documented in the schema. The description's phrase 'specified accounts' maps to targetLoginIdList but adds no additional semantic detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add sharing permission'), the resource ('member server image'), and the target ('specified accounts'). It distinguishes itself from sibling tools like ncloud_add_server_image_sharing by explicitly naming 'member server image'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied by the action verb 'Add' - an agent can infer this is for granting sharing access. However, there is no explicit comparison with alternatives like ncloud_set_member_server_image_sharing or ncloud_remove_member_server_image_sharing, and no prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_mongodb_usersA
Add users to a Cloud DB for MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbUserList | Yes | List of users to add | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint: false, which conflicts with nothing. The description adds no behavioral details beyond what the name suggests, such as idempotency, error scenarios, or prerequisites. With annotations covering the safety profile, the description still offers no extra context, so a score of 2 reflects the lack of added transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant information, front-loading the action and target. It earns a 5 for efficiency and clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple add operation, the description is functional but minimal. It does not mention response behavior, side effects, or validation rules, and there is no output schema to compensate. While the schema covers parameters, the description alone provides limited context beyond the tool's purpose, so a 3 is reasonable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters and nested user fields. The description does not add any additional meaning or clarify parameter usage, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Add' with the resource 'users' and target 'Cloud DB for MongoDB instance', clearly distinguishing it from sibling tools like ncloud_list_mongodb_users, ncloud_change_mongodb_users, and ncloud_delete_mongodb_users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is clear: this tool is for adding users to a MongoDB instance. However, it lacks explicit guidance about when not to use it (e.g., for modifying existing users) or mentions of alternatives. The verb 'Add' alone implies creation, but no explicit exclusions are stated, so a 4 is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_mysql_databasesA
Add databases to a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number | |
| cloudMysqlDatabaseNameList | Yes | List of database names to add |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=false already indicates the operation is non-destructive, and the description adds no additional behavioral context. It does not mention potential failure conditions, idempotency, or any side effects beyond the simple addition of databases. The description is consistent with the annotation but does not enrich it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that directly states the tool's action and target. There is no redundant or extraneous information, and it is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and has full schema coverage for inputs, but there is no output schema and the description does not explain what the response conveys (e.g., status or job details). It also does not mention constraints like duplicate database names or instance state requirements. The description is minimally sufficient but leaves some gaps for a fully informed agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for both parameters (100% coverage), so the description does not need to compensate. The description itself adds no parameter-level detail, and the schema already explains that cloudMysqlInstanceNo is the instance number and cloudMysqlDatabaseNameList is the list of database names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Add' with a clear resource ('databases') and target ('Cloud DB for MySQL instance'), making the tool's purpose unambiguous. It naturally distinguishes itself from sibling tools like ncloud_delete_mysql_databases and ncloud_list_mysql_databases through the additive action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you need to add databases to a MySQL instance) but provides no explicit context about when to choose this tool over alternatives, nor does it mention any prerequisites or exclusions. It is minimally adequate but lacks the comparative guidance seen in stronger examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_mysql_usersA
Add users to a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlUserList | Yes | List of users to add | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what the annotations already provide (destructiveHint=false). It does not mention permissions, idempotency, error scenarios, or side effects. The one-line description simply reiterates the tool's purpose without enriching the agent's understanding of the operation's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that directly states the action and target. Every word is necessary, and it is front-loaded with the main purpose. There is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple add operation with a well-detailed schema, the description is minimally adequate. However, it lacks useful context such as whether the operation is idempotent, what happens if a user already exists, or any prerequisites. Given no output schema, the agent might benefit from more information, but the tool's simplicity keeps it at an acceptable level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both parameters (cloudMysqlInstanceNo and cloudMysqlUserList). The description does not add any extra meaning beyond the schema, so it stays at baseline. It does not clarify the allowed values for 'authority' (e.g., READ, DDL, CRUD) which are enumerated only in the schema but not as enums.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (add) and the target resource (users to a Cloud DB for MySQL instance). It distinguishes this tool from siblings like ncloud_add_mysql_databases, ncloud_change_mysql_users, and ncloud_delete_mysql_users by specifying the exact operation and object.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need to add users to a MySQL instance. However, it does not explicitly mention when not to use it or provide alternatives such as ncloud_change_mysql_users for modifying existing users. The guidance is minimal and relies on the user understanding the verb 'add'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_nas_volume_access_controlB
Add server instance access control to a NAS volume (NFS protocol)
| Name | Required | Description | Default |
|---|---|---|---|
| nasVolumeInstanceNo | Yes | NAS volume instance number | |
| serverInstanceNoList | Yes | List of server instance numbers to grant access |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations only include destructiveHint: false, and the description adds only the 'NFS protocol' context. It does not disclose whether the operation is additive/overwriting, whether it requires special permissions, or what side effects it may have on existing access rules. With minimal annotation coverage, the description carries a heavier burden that it does not meet.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the action verb and resource. There is no unnecessary information, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter operation with full schema coverage, the description is mostly adequate. However, it lacks guidance on usage context and behavioral details (e.g., whether this appends to existing rules, whether it's idempotent). These gaps make it only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters well-described in the schema ('NAS volume instance number' and 'List of server instance numbers to grant access'). The description text adds no additional parameter meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add') and the resource ('server instance access control to a NAS volume'), and specifies the protocol (NFS). However, it does not explicitly distinguish itself from the sibling tool 'ncloud_set_nas_volume_access_control', so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as 'set_nas_volume_access_control' or 'remove_nas_volume_access_control'. It does not mention any preconditions, limitations, or context for when this operation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_network_acl_inboundA
Add an inbound rule to a Network ACL
| Name | Required | Description | Default |
|---|---|---|---|
| ipBlock | No | IP block in CIDR format (e.g., 0.0.0.0/0) | |
| priority | Yes | Rule priority (1-199) | |
| portRange | No | Port range (e.g., 80, 1-65535) | |
| networkAclNo | Yes | Network ACL number | |
| ruleActionCode | Yes | Rule action (ALLOW or DROP) | |
| ruleDescription | No | Description for the rule | |
| denyAllowGroupNo | No | Deny-Allow Group number (alternative to ipBlock) | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the action itself. Annotations only declare destructiveHint=false, so the agent knows it's non-destructive, but nothing about rule evaluation order, reversibility, or conflict handling is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no waste, front-loading the core purpose. It is appropriately sized for a simple add-operation where schema carries the parameter detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema covers parameters, the description omits important context like priority ordering of rules, the mutual exclusivity of ipBlock and denyAllowGroupNo, and what happens when a rule already exists. It is sufficient for a basic understanding but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-level detail, but the schema already provides meaningful descriptions for all 8 parameters, including examples and alternatives.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Add an inbound rule to a Network ACL' clearly states the action (add) and resource (Network ACL inbound rules). It distinguishes itself from sibling tools like ncloud_add_network_acl_outbound and ncloud_remove_network_acl_inbound by specifying the rule direction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (use for inbound rules) but provides no explicit guidance on when to choose this over alternatives, nor any exclusions. It does not mention related tools like the outbound counterpart, leaving the agent to infer from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_network_acl_outboundC
Add an outbound rule to a Network ACL
| Name | Required | Description | Default |
|---|---|---|---|
| ipBlock | No | IP block in CIDR format (e.g., 0.0.0.0/0) | |
| priority | Yes | Rule priority (1-199) | |
| portRange | No | Port range (e.g., 80, 1-65535) | |
| networkAclNo | Yes | Network ACL number | |
| ruleActionCode | Yes | Rule action (ALLOW or DROP) | |
| ruleDescription | No | Description for the rule | |
| denyAllowGroupNo | No | Deny-Allow Group number (alternative to ipBlock) | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotation destructiveHint: false tells the agent this is not destructive, but the description adds no further behavioral context. It does not mention whether rules are inserted with priorities, whether duplicates are allowed, or what happens on success. The description relies entirely on the annotation for safety disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that gets straight to the point with no filler. It is appropriately sized for the tool's simple purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with 8 parameters, no output schema, and minimal annotation, the description is too sparse. It does not hint at expected response content, any ordering constraints, or typical usage prerequisites. The one-line description leaves significant contextual gaps for an agent to make informed decisions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — all 8 parameters have individual descriptions (e.g., protocolTypeCode, ruleActionCode, ipBlock). The tool description itself adds no parameter meaning, so the baseline of 3 applies as the schema carries the semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Add' and the resource 'outbound rule to a Network ACL', which distinguishes it from the inbound variant at a basic level. However, it does not explicitly reference sibling tools or provide additional context about what an outbound rule entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool as opposed to alternatives like ncloud_add_network_acl_inbound or ncloud_remove_network_acl_outbound. Usage is only implied by the tool name and the word 'outbound'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_nic_acgB
Add access control groups (ACGs) to a network interface
| Name | Required | Description | Default |
|---|---|---|---|
| networkInterfaceNo | Yes | Network interface number to add ACGs to | |
| accessControlGroupNoList | Yes | List of ACG numbers to add |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only restates the action already evident from the tool name and annotations. With destructiveHint:false already declaring non-destructiveness, the description adds no additional behavioral context such as idempotency, effect on existing ACGs, or required permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence of eight words, front-loading the action and resource without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with full schema coverage and an annotation, the description is minimally adequate but lacks details about the operation's effect on existing ACGs or failure conditions, which would be valuable for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters (networkInterfaceNo and accessControlGroupNoList). The description adds no extra meaning beyond the schema, so it meets the baseline for complete schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb 'Add' and specifies the resource 'access control groups (ACGs)' and target 'network interface'. This unambiguously distinguishes it from sibling tools like ncloud_remove_nic_acg.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_remove_nic_acg. The description simply states the action without prerequisites or exclusions, leaving the agent to infer usage from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_placement_group_serverA
Add a server instance to a placement group
| Name | Required | Description | Default |
|---|---|---|---|
| placementGroupNo | Yes | Placement group number | |
| serverInstanceNo | Yes | Server instance number to add |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description simply states the action without disclosing additional behavioral traits beyond what the 'destructiveHint: false' annotation already implies. It does not mention side effects, reversibility, or requirements. With the annotation covering the safety profile, the description adds marginal value, so a baseline score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with nine words, concisely and front-loaded with the action. Every word contributes to clarity, with no filler or repetition. It is optimally sized for a simple operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the operation (2 parameters, no output schema), the description is adequate at a basic level. However, it does not cover potential constraints (e.g., placement group capacity, server status) or explain the response format. For an agent, this is minimally sufficient but not rich enough to handle edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for both parameters ('Placement group number' and 'Server instance number to add'), giving 100% coverage. The description does not add extra meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Add') and resource ('a server instance to a placement group'), clearly stating the operation. It distinguishes itself from the sibling tool 'ncloud_remove_placement_group_server' by the opposite action. The tool name and description are aligned, leaving no ambiguity about what it does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, prerequisites, or any exclusions. For example, it does not mention that the placement group must exist or that the server must not already be in a placement group. This leaves the agent without context for appropriate invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_port_pluginA
Add port monitoring plugin(s) to a server instance.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| portList | Yes | Port numbers to monitor | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=false already covers non-destructiveness. The description adds little beyond stating the add action; it does not disclose idempotency, whether existing plugins are preserved, or any server state requirements. No contradiction with annotations, but no extra behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler words. It is appropriately front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple 3-parameter schema and a non-destructive annotation, but no output schema. The description does not mention response format, error conditions, or how this differs from ncloud_set_port_plugins, leaving some gaps for an agent. However, the schema and annotation provide adequate baseline context for a basic add operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three properties described (type with default and enum, portList as port numbers, instanceNo as server instance number). The tool description adds no parameter-level meaning beyond the schema, matching the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Add') and resource ('port monitoring plugin(s)') and targets 'a server instance', clearly distinguishing it from sibling tools like ncloud_list_port_plugins or ncloud_remove_port_plugin. It immediately conveys the action and scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context that this tool is for adding port monitoring plugins to a server, which distinguishes it from list/remove/get/set siblings. However, it does not explicitly mention when not to use it or name alternatives, so it lacks full exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_postgresql_databasesA
Add databases to a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number | |
| cloudPostgresqlDatabaseList | Yes | List of databases to add |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=false, which matches the additive operation. The description adds that it targets a Cloud DB for PostgreSQL instance and supports a list of databases, but does not disclose behavior such as duplicate handling, prerequisite instance states, or idempotency. This is adequate but minimal given annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler or redundant information. It is front-loaded and immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation with full schema coverage and a non-destructive annotation, the description plus schema provides sufficient information for correct invocation. It omits details about return values or constraints, but these are not critical for a straightforward add operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of the parameters ('Cloud PostgreSQL instance number' and 'List of databases to add'), so the description does not need to add parameter-level details. The phrase 'Add databases' aligns with the array parameter but provides no additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Add') and a specific resource ('databases to a Cloud DB for PostgreSQL instance'), clearly distinguishing it from siblings like ncloud_add_postgresql_users and ncloud_delete_postgresql_databases. It precisely states what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the usage context (when you need to add databases to a PostgreSQL instance) but does not provide explicit when-to-use/when-not-to-use guidance or mention alternatives. It is self-evident from the operation name but lacks explicit directional guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_postgresql_usersB
Add users to a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlUserList | Yes | List of users to add | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false provided, the description adds no behavioral context beyond the annotation. It does not disclose what happens if a user already exists, whether the operation is idempotent, or any prerequisites. The description merely restates the action without revealing operational implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action and resource. It is concise, free of unnecessary words, and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple add operation with full schema coverage, but it lacks usage guidelines and behavioral context. Given the presence of many sibling tools with similar names, the description alone may not fully prepare an agent to choose and invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters with 100% coverage. The tool description adds no additional parameter semantics, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add users') and the specific resource ('Cloud DB for PostgreSQL instance'), which distinguishes it from sibling tools for other database engines (e.g., MySQL, MongoDB) and from related PostgreSQL operations like change/delete/list users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that this creates new database users, nor does it point to change_postgresql_users for modifying existing users or delete_postgresql_users for removing them. There is no context about prerequisites or when this operation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_process_pluginA
Add process monitoring plugin(s) to a server instance. Provide one or more process names (wildcards like abc allowed).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| configList | Yes | Process names to monitor | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false, so the description carries the burden of behavioral disclosure. It does not mention whether existing plugins are preserved, how duplicate names are handled, or if adding a wildcard affects monitoring behavior. The simple 'Add' action lacks important side-effect details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is composed of two concise sentences: one stating the action and target, the second explaining parameter usage. Every word adds value, and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation tool, the core functionality is covered, but the description lacks guidance on how the addition interacts with existing plugins and omits any mention of the optional 'type' parameter (which defaults to vpcserver). Additional context about idempotency or the effect of wildcards would make it more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all three parameters, but the description adds valuable detail beyond the schema by noting that process names support wildcards (e.g., *abc*). This clarifies the intended format of the configList parameter, which the schema only describes as 'Process names to monitor'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states a specific verb and resource: 'Add process monitoring plugin(s) to a server instance.' This action is distinct from sibling tools like remove_process_plugin and set_process_plugins, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for adding plugins to a server instance and notes that wildcards are allowed. However, it does not explicitly contrast with the similar 'set_process_plugins' tool or specify when NOT to use this tool, leaving some ambiguity about the choice between additive and replacement operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_routeA
Add a route to a route table
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| targetNo | Yes | Target instance number | |
| targetName | No | Target name | |
| routeTableNo | Yes | Route table number | |
| targetTypeCode | Yes | Target type code (NATGW, VPCPEERING, VGW) | |
| destinationCidrBlock | Yes | Destination CIDR block (e.g., 0.0.0.0/0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only restates the basic action and adds no behavioral context beyond the annotation's non-destructive hint. It does not disclose prerequisites, potential conflicts with existing routes, target validation, or side effects, which are important for a network operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It is appropriately concise and front-loaded, conveying the essential action immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal but the schema is detailed, covering all parameters. However, it does not explain the broader context of route tables or the outcome of the operation. Given the moderate complexity of the tool (networking resource), a bit more context would be helpful, but the current description is not wholly inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter having a clear description (e.g., targetTypeCode with allowed values, destinationCidrBlock with format). The description itself adds no parameter details, so it relies on the schema, which is sufficient. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description "Add a route to a route table" clearly states the action (add) and the resource (route to a route table), which distinguishes it from sibling tools like ncloud_remove_route or ncloud_list_routes. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you want to add a route) but does not explicitly state when not to use it or mention alternatives. It lacks explicit exclusions or comparisons with related tools such as ncloud_remove_route.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_route_table_subnetB
Associate a subnet with a route table
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| subnetNo | Yes | Subnet number to associate | |
| routeTableNo | Yes | Route table number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations only providing destructiveHint=false, the description adds no further behavioral context—no mention of idempotency, effects on existing associations, failure conditions, or response behavior. It does not contradict annotations, but it also does not enrich them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence conveys the purpose with zero wasted words. It is efficient and easy to parse, striking the right length for the simplicity of the operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and minimal annotations, yet the description provides no additional context about expected responses, preconditions, or side effects. For a mutation-like operation, this is insufficient for an agent to fully anticipate the outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter briefly described. The description adds no additional parameter semantics beyond what the schema already provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Associate a subnet with a route table' uses a specific verb and resource, clearly stating the action. It effectively distinguishes this tool from its sibling ncloud_remove_route_table_subnet by naming the opposite operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no mention of prerequisites, and no exclusions. The description simply states the action without contextualizing it in a decision process.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_server_image_sharingB
Add sharing permission for a server image to specified accounts
| Name | Required | Description | Default |
|---|---|---|---|
| serverImageNo | Yes | Server image number to share | |
| targetLoginIdList | Yes | List of target login IDs to grant sharing permission |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the destructiveHint annotation. It does not disclose whether existing sharing permissions are preserved, whether the operation is idempotent, or what authorization is required. Since the annotation already indicates non-destructiveness, the description contributes minimal extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the primary verb 'Add' and fully communicates the operation without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple two-parameter nature and rich schema coverage, the description is largely complete. However, it lacks differentiation from closely related sibling tools and does not provide usage context, which slightly reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides clear descriptions for both parameters (serverImageNo and targetLoginIdList), covering 100% of the parameter semantics. The description does not add meaningful detail beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (Add), resource (server image), and recipients (specified accounts). However, it does not distinguish between server image sharing and the sibling ncloud_add_member_server_image_sharing, which may cause ambiguity in tool selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like ncloud_add_member_server_image_sharing or ncloud_remove_server_image_sharing. Missing prerequisites, exclusions, or context for sharing permissions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_add_targetA
Add targets (server instances) to a target group
| Name | Required | Description | Default |
|---|---|---|---|
| targetNoList | Yes | List of target (server instance) numbers to add | |
| targetGroupNo | Yes | Target group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=false, so the safety profile is covered. The description adds minor context by clarifying targets are server instances but does not disclose other behavioral traits like idempotency, failure conditions, or whether existing targets are affected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence that communicates the essential purpose with no redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation with two fully described parameters, no output schema, and annotations covering destructive behavior, the description is sufficient for basic use. It lacks mention of prerequisites (target group existence) or duplicate handling, but these are not critical given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described (targetNoList and targetGroupNo). The description merely restates these concepts ('targets', 'target group') without adding format, relationships, or constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Add) and the resource (target group), specifying that targets are server instances. This distinguishes it from siblings like ncloud_remove_target (removes) and ncloud_set_targets (likely replaces all targets).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives such as ncloud_set_targets or ncloud_remove_target. The context is implied but not stated, leaving the agent to infer when additive behavior is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_download_all_resultsARead-only
Download the complete Excel report of check results for all categories. Saves to savePath or returns base64 content.
| Name | Required | Description | Default |
|---|---|---|---|
| savePath | No | Local file path to save the .xlsx to (recommended). If omitted, the file is returned inline as base64 when it is 256 KB or smaller. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds that the output is an Excel (.xlsx) report and that it either saves to disk or returns base64, but the dual-output behavior and the 256 KB inline cutoff are already spelled out in the schema, so incremental value is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short, front-loaded sentences with no filler: the action and scope come first, the output behavior second. Nothing is wasted, though it is minimal rather than richly structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only download with one fully documented parameter and a readOnlyHint annotation, the definition covers what the tool returns (an Excel report of all categories) and how the output is delivered. No output schema exists, but the file nature of the result is stated, so little is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single savePath parameter, and the description merely restates its save-vs-inline behavior without the size threshold the schema provides. Baseline 3 is appropriate when the schema does the documentation work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Download the complete Excel report of check results') plus the scope qualifier 'for all categories', which implicitly separates it from ncloud_advisor_download_category_results and ncloud_advisor_download_item_results. It stops short of naming those siblings, so the differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for all categories' implies when this tool is appropriate versus the category- or item-scoped download siblings, but no explicit when-to-use or alternative routing is given. Adequate but leaves the agent to infer the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_download_category_resultsARead-only
Download the Excel report of check results for all items in a category. Saves to savePath or returns base64 content.
| Name | Required | Description | Default |
|---|---|---|---|
| savePath | No | Local file path to save the .xlsx to (recommended). If omitted, the file is returned inline as base64 when it is 256 KB or smaller. | |
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint already covering the safety profile, the description adds real behavioral detail: the output is an Excel file and it either writes to savePath or is returned inline as base64. This reveals the dual output mode beyond what annotations state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with the primary purpose front-loaded and the output behavior second; no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only download tool with no output schema, the description tells the agent what is produced (Excel report) and how it is delivered (savePath or base64), which is enough to call it correctly. Only the relationship to sibling download/summary tools is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (including the SECURITY/COST enum and the 256 KB inline constraint) are already fully documented in the schema. The description's mention of savePath and base64 merely restates this, adding no syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Download'), the artifact ('Excel report of check results'), and the scope ('all items in a category'). The category scope implicitly distinguishes it from the sibling item-level and all-level download tools, though it does not name them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the scope phrase 'for all items in a category'; there is no explicit when-to-use guidance or reference to the sibling tools (download_item_results, download_all_results, get_category_result_summary) that an agent would need to choose between.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_download_item_resultsARead-only
Download the Excel report of check results for a specific check item. Saves to savePath or returns base64 content.
| Name | Required | Description | Default |
|---|---|---|---|
| itemCode | Yes | Check item code | |
| savePath | No | Local file path to save the .xlsx to (recommended). If omitted, the file is returned inline as base64 when it is 256 KB or smaller. | |
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds the dual output mode (file save vs inline base64), which is useful behavioral context, though it largely restates what the savePath schema description already says. No pagination, size-limit, or auth details beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, with the core purpose front-loaded and the output behavior second. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description explains the two return modes (savePath file or base64 inline). Combined with a 100%-covered schema and readOnly annotation, an agent has enough to call it correctly; only the item/category relationship to sibling tools is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (itemCode, savePath, categoryCode) are already documented in the schema. The description only echoes the savePath behavior and adds nothing about itemCode or the categoryCode enum, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Download) and resource (Excel report of check results) with an explicit scope qualifier ('for a specific check item'). That scope cleanly distinguishes it from the sibling item/category/all download variants without needing to name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a specific check item' implies when to use this over the category/all downloads, but there is no explicit when-to-use guidance, prerequisite (e.g., must item be refreshed first), or named alternative. Usage is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_exclude_instancesB
Set instances to exclude from check result detail view. Marks specified instances to be hidden from detailed results.
| Name | Required | Description | Default |
|---|---|---|---|
| itemCode | Yes | Check item code | |
| categoryCode | Yes | Check category code: SECURITY or COST | |
| instanceKeys | Yes | Array of instance keys to exclude from results |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must disclose behavioral traits. It implies mutation but lacks details on reversibility, overwrite behavior, required permissions, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences clearly convey the purpose without superfluous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation tool with no output schema and all parameters required, the description is minimally adequate. However, it lacks usage guidance and behavioral details that would make it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. The tool description adds marginal value by connecting the parameters to the action (e.g., instanceKeys are the instances to exclude), but does not explain categoryCode or itemCode beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('set instances to exclude', 'marks specified instances to be hidden') and the resource ('from check result detail view'). It distinguishes from sibling 'ncloud_advisor_include_instances' which performs the opposite operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'ncloud_advisor_include_instances'. There is no mention of context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_categoriesARead-only
Get Cloud Advisor check categories (SECURITY, COST). Returns available inspection category list.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals no side effects. The description adds that the tool returns an 'available inspection category list,' which is consistent and provides additional context about the output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences that deliver the essential information without any filler. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with no parameters and a clear purpose, the description is fully adequate. It explains what the tool does and what it returns, even though there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since there are zero parameters, schema coverage is 100%. The description adds value by listing example categories (SECURITY, COST), giving users an idea of what to expect. This exceeds the baseline of 3 for no-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves Cloud Advisor check categories, with specific examples (SECURITY, COST). It uses a specific verb-resource combination and is distinct from sibling tools that handle check items or status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing categories but does not explicitly guide when to use this tool versus alternatives like ncloud_advisor_get_checkitems or ncloud_advisor_get_category_status. No exclusion criteria or context hints are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_category_dashboardARead-only
Get check result grade summary (GREEN/YELLOW/RED counts) for categories. Shows how many items are in each alert level.
| Name | Required | Description | Default |
|---|---|---|---|
| categoryCode | No | Check category code (optional). If omitted, returns dashboard for all categories. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true. The description adds that the tool returns counts but does not elaborate on other behavioral traits (e.g., data freshness, pagination). No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with the main action, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description adequately explains the return type (counts). Could be slightly more explicit about output format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of the parameter. Description explains the optionality and default behavior (returns all categories if omitted), adding value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves a grade summary (GREEN/YELLOW/RED counts) for categories, which distinguishes it from sibling tools like ncloud_advisor_get_category_status. However, it does not explicitly differentiate from all siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like ncloud_advisor_get_checkitems or ncloud_advisor_get_category_result_summary. The description implies usage for summary counts but lacks explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_category_result_summaryBRead-only
Get check result summary for all items in a category. Returns each item's alert level (GREEN/YELLOW/RED), summary text, and last check time.
| Name | Required | Description | Default |
|---|---|---|---|
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, indicating a safe read operation. The description confirms by stating it returns data, which aligns with the annotation. However, the description does not disclose additional behavioral traits such as whether results are paginated, what happens if the category has no items, or any rate limits. Beyond confirming read-only behavior, it adds only the return field details, which are part of the expected output. With annotations already covering the safety profile, the description provides marginal extra value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that front-load the core action ('Get check result summary for all items in a category') and then list the key return fields. Every word adds value, and there is no redundant or extraneous content. The structure is optimal for quick parsing by an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is no output schema, the description partially specifies the return structure by naming three fields (alert level, summary text, last check time). However, it does not indicate whether the result is a list, an object, or how items are identified. For a tool that summarizes multiple items, the lack of structure detail could lead to incorrect parsing of the response. The description is adequate but not fully complete for a tool with no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter (categoryCode) with 100% description coverage via enum and description. The tool description does not add any additional meaning or context beyond what the schema provides. For instance, it doesn't explain the implications of each enum value or how the categoryCode relates to other advisor tools. Since the schema already documents the parameter fully, the description adds nothing to parameter semantics, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets a check result summary for all items in a category, specifying the verb 'Get' and resource 'check result summary'. It distinguishes from sibling tools like ncloud_advisor_get_category_status (which likely returns aggregated category status) and ncloud_advisor_get_item_result_summary (which returns detailed item results) by focusing on per-item alert levels, summary text, and last check time. However, it could be more explicit about how it differs from these siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_advisor_get_item_result_summary or ncloud_advisor_get_category_status. It does not mention prerequisites, typical use cases, or context where this tool is preferred. This leaves the agent to infer usage from the tool name and description alone, which is insufficient for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_category_statusARead-only
Get check request availability status for all items in a category. Shows whether each item can be refreshed and its current processing state.
| Name | Required | Description | Default |
|---|---|---|---|
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, and description confirms read behavior. No additional behavioral details like caching or pagination are provided, but no contradictions exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with purpose. No extraneous information, every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple parameter and readOnly annotation, description adequately explains what the tool returns. Could mention result structure but not essential for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already defines categoryCode with enums. Description does not add meaning beyond what schema provides. Baseline score due to full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves check request availability status for all items in a category, distinguishing it from single-item or refresh tools. Verb 'Get' is specific and resource is well defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like ncloud_advisor_get_item_status or refresh tools. Usage is implied but not clarified with exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_checkitemsARead-only
Get Cloud Advisor check items for a specific category. Returns item codes, names, descriptions, recommendations, and result table header info.
| Name | Required | Description | Default |
|---|---|---|---|
| categoryCode | Yes | Check category code: SECURITY (security) or COST (cost & high availability) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is clear. The description adds what the output contains (item codes, names, etc.), which is useful beyond annotations. However, it omits behavioral details like potential error conditions, data freshness, or pagination (if any). With annotations covering safety, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, directly stating the purpose and output. No extraneous words, and it is front-loaded with the core action. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 required enum parameter, no output schema), the description is mostly complete. It explains what the tool does and what is returned. However, it does not clarify what 'result table header info' means or whether results are paginated. Minor gap, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the parameter 'categoryCode' is fully documented with enum values and descriptions in the schema. The description does not add further meaning; it only references 'a specific category'. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('Cloud Advisor check items'), and the scope ('for a specific category'). It also lists the returned fields (item codes, names, descriptions, recommendations, header info), distinguishing it from sibling tools like ncloud_advisor_get_categories or ncloud_advisor_get_item_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this tool versus alternatives. Among many sibling advisor tools (e.g., get_categories, get_item_status, refresh_item), there is no explicit context for selection. While it implies needing a category code, it lacks usage conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_item_result_detailARead-only
Get detailed per-instance check results for a specific check item. Returns paginated instance-level inspection results with status (GREEN/YELLOW/RED).
| Name | Required | Description | Default |
|---|---|---|---|
| page | Yes | Page number (1-based) | |
| size | Yes | Number of items per page | |
| display | No | Filter instances: all (all instances), included (included only, default), excluded (excluded only) | |
| itemCode | Yes | Check item code (e.g., SUB_ACCOUNT_ACCESSKEY, ACG_PORT, IDLE_RESOURCE_VM) | |
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds value by revealing that results are paginated and include instance status (GREEN/YELLOW/RED). This goes beyond the annotation to clarify the output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, immediately stating the purpose and key behavioral details (pagination, status). No unnecessary words; front-loaded with critical information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, paginated tool with fully described parameters, the description covers the main aspects: purpose, pagination, and status output. Missing details like default page/size or display filter options are already in the schema, so the description is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add additional meaning beyond the schema; it only generally references 'specific check item', which is already covered by the itemCode and categoryCode parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed per-instance check results for a specific check item, using clear verb ('Get') and resource. It differentiates from sibling tools like ncloud_advisor_get_item_result_summary by specifying 'per-instance' detail level.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (requires a check item and category) but does not explicitly guide when to use this tool over alternatives like ncloud_advisor_get_item_result_summary or ncloud_advisor_get_item_status. No when-not or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_item_result_summaryBRead-only
Get check result summary for a specific check item. Returns the item's alert level (GREEN/YELLOW/RED), summary text, and last check time.
| Name | Required | Description | Default |
|---|---|---|---|
| itemCode | Yes | Check item code (e.g., SUB_ACCOUNT_ACCESSKEY, ACG_PORT, IDLE_RESOURCE_VM) | |
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which the description does not contradict. The description adds that it returns alert level, summary text, and last check time, but does not disclose any additional behavioral traits beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no extraneous information. Every word adds value; the description is front-loaded with the main action and supported by expected output fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with well-defined schema and annotations, the description adequately covers the return structure (alert level, summary text, last check time). No output schema exists, so the description compensates by listing fields. Minor improvement: could mention ordering or filtering, but sufficient for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers 100% of parameters (itemCode with examples, categoryCode with enum). Description adds no extra meaning beyond the schema, earning the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('check result summary for a specific check item'), and lists return fields (alert level, summary text, last check time). It distinguishes from sibling tools by focusing on a single item, but does not explicitly contrast with other advisor tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., ncloud_advisor_get_category_status, ncloud_advisor_get_item_status). Missing context about prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_get_item_statusARead-only
Get check request availability status for a specific check item. Shows whether the item can be refreshed and its current processing state.
| Name | Required | Description | Default |
|---|---|---|---|
| itemCode | Yes | Check item code (e.g., SUB_ACCOUNT_ACCESSKEY, ACG_PORT, IDLE_RESOURCE_VM) | |
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description confirms it shows status information (availability and processing state). Adds context beyond annotations by specifying what data is returned, without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that efficiently communicate the tool's function without redundancy. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately describes the function for a read-only tool without output schema. Lacks explicit return value structure but sufficient for an agent to understand the outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters (itemCode with examples, categoryCode with enum). The description does not add further parameter semantics, meeting baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Get' and resource 'check request availability status for a specific check item'. Distinguishes from sibling advisor tools like ncloud_advisor_get_checkitems (list) and ncloud_advisor_get_categories by specifying it's for a single item with availability and processing state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like ncloud_advisor_get_checkitems for listing or ncloud_advisor_refresh_item. The description does not provide context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_include_instancesA
Set instances to include in check result detail view. Marks specified instances to be shown in detailed results (reverses exclusion).
| Name | Required | Description | Default |
|---|---|---|---|
| itemCode | Yes | Check item code | |
| categoryCode | Yes | Check category code: SECURITY or COST | |
| instanceKeys | Yes | Array of instance keys to include in results |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden. It only states the basic action without disclosing side effects, idempotency, permissions, or whether it adds to or replaces existing inclusions. For a modification tool, the behavioral transparency is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences. It front-loads the action and provides the key purpose immediately. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 params, no output schema, no annotations), the description lacks context about the broader advisor workflow, persistence, or what happens after inclusion. The agent would benefit from knowing how this tool interacts with the check result detail view and the exclude operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no extra meaning beyond the schema; it merely refers to 'specified instances'. It does not elaborate on what categoryCode, itemCode, or instanceKeys represent in context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: setting instances to include in the check result detail view. It explicitly mentions that it reverses exclusion, distinguishing it from the sibling tool 'ncloud_advisor_exclude_instances'. The verb 'Set' is specific and the resource is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating it 'reverses exclusion', which tells the agent when to use this tool (e.g., after an exclusion has been applied). However, it does not explicitly guide when not to use it or mention alternative approaches beyond the implied contrast with the exclude tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_refresh_categoryB
Request a check (refresh) for all items in a category. Triggers inspection for all check items under the specified category.
| Name | Required | Description | Default |
|---|---|---|---|
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It fails to disclose key behavioral traits: whether the refresh is synchronous or asynchronous, if it returns immediately, or how to track progress. The statement is too brief for an action tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two short sentences and no unnecessary words. However, it could be restructured to fit more information into the same space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a trigger action with no output schema and no annotations, the description lacks important context: whether the operation is async, what the return value is, and how to monitor completion. This leaves the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema documentation covers 100% of parameters with description and enum values. The description adds no extra meaning beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs 'request a check (refresh)' and 'triggers inspection', clearly indicating it initiates a refresh for all items in a category. It distinguishes from siblings like 'ncloud_advisor_refresh_item' which refreshes a single item.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives (e.g., 'ncloud_advisor_refresh_item'). It does not mention prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_advisor_refresh_itemC
Request a check (refresh) for a specific check item. Triggers inspection for the specified item.
| Name | Required | Description | Default |
|---|---|---|---|
| itemCode | Yes | Check item code (e.g., SUB_ACCOUNT_ACCESSKEY, ACG_PORT, IDLE_RESOURCE_VM) | |
| categoryCode | Yes | Check category code: SECURITY or COST |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears full responsibility for disclosing behavior. It states 'triggers inspection' which implies an async operation, but does not explain side effects, return behavior, or whether it is a mutation. This is insufficient for an understanding tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with only two short sentences. Every word adds value, and there is no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description does not mention return values or expected output, and there is no output schema. For a tool that triggers an asynchronous inspection, the agent needs to know what to expect as a response, which is missing here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds no additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (request a check/refresh) and resource (specific check item). It distinguishes from sibling tools like ncloud_advisor_refresh_category by targeting a single item, but does not explicitly call out that difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as ncloud_advisor_refresh_category or other advisor tools. The description does not provide context for when a single item refresh is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_create_api_keyA
Create a new API key in API Gateway. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating the API key | |
| apiKeyName | Yes | Name for the new API key | |
| apiKeyDescription | No | Description for the new API key |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=false. The description adds the dryRun feature for preview, which adds value beyond annotations. It clarifies the non-destructive creation behavior. However, it does not disclose other potential behaviors like authentication requirements or return format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no fluff. The first sentence states the purpose, and the second adds a specific usage hint. Every sentence is valuable and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with 1 required and 2 optional parameters, the description covers the core functionality and adds the dryRun preview feature. However, it does not mention the return value or what the created API key contains, which could be useful given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description mentions dryRun for preview, which aligns with its schema description. No additional meaning is added beyond what the schema already provides for the other parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Create a new API key' and the resource 'in API Gateway'. It specifies the verb and resource, and among sibling tools like ncloud_apigw_list_api_keys and ncloud_apigw_delete_api_key, this tool is uniquely identified as the creation operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage hint for the dryRun parameter but does not explicitly guide when to use this tool versus alternatives. No mention of when not to use or comparison to list/delete operations. Usage is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_create_stageA
Create a new stage for an API in an API Gateway product. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| apiId | Yes | API ID to create the stage for | |
| dryRun | No | If true, returns a preview without actually creating the stage | |
| response | No | Response body for the maintenance status code (0-1500 chars) | |
| ipAclCode | No | IP ACL mode; required together with ipAclList | |
| ipAclList | No | IP ACL list; required together with ipAclCode | |
| productId | Yes | Product ID the API belongs to | |
| stageName | Yes | Name for the new stage (1-20 chars: letters, digits, '-', '_') | |
| statusCode | No | Status code returned while in maintenance (100-599) | |
| cacheTtlSec | No | API cache TTL in seconds (1-3600) | |
| throttleRps | No | Per-method requests-per-second limit | |
| isMaintenance | No | Enable maintenance mode (default false) | |
| endpointDomain | Yes | Backend endpoint domain for the stage, e.g. https://backend.example.com (required) | |
| deploymentDescription | No | Description for the stage deployment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Only destructiveHint=false is annotated, so the description carries most of the behavioral burden. It usefully discloses the dryRun preview behavior, adding real context beyond the annotation. It does not, however, describe side effects of creation, deployment implications, or required permissions for a 13-parameter mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the core action and followed by the single most useful operational hint. No filler, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with 13 parameters and only a destructiveHint annotation, the description is thin: it does not mention creation side effects, whether a deployment step is implied, or auth requirements. The rich schema and destructiveHint=false cover part of the gap, but the behavioral picture is not fully rounded out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 13 parameters are already documented in the schema. The description only calls out dryRun, which the schema already explains in full, so it adds no semantic detail beyond the structured data. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: creating a stage for an API within an API Gateway product. The 'create' verb cleanly separates it from the sibling read/delete tools (ncloud_apigw_get_stage, ncloud_apigw_list_stages, ncloud_apigw_delete_stage). It does not explicitly name a sibling for comparison, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides one actionable usage tip ('Use dryRun=true to preview without creating'), which is genuinely helpful. However it gives no guidance on when to prefer this over alternatives or on prerequisites (e.g. that a product and API must already exist), leaving usage largely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_delete_api_keyADestructiveIdempotent
⚠️ Destructive: Permanently delete an API key from API Gateway. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| apiKeyId | Yes | API key ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and idempotentHint=true. The description adds value by explicitly stating 'Destructive' and 'Permanently delete', and explains the confirm parameter's role as a safety mechanism. It does not discuss idempotency or error cases, but the key behavioral trait (destructive) is well communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with a warning emoji conveys all essential information. No superfluous text, and the most critical info (destructive nature and confirm flag) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with full schema coverage and annotations, the description is sufficient. It explains the destructive action and the confirmation requirement. Missing details like return value are not critical given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description reinforces the confirm parameter's purpose but does not add significant meaning beyond the schema. The apiKeyId parameter's meaning is clear from its name and schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb ('delete') and resource ('API key from API Gateway'), and the 'Permanently delete' indicates it's a permanent action. It distinguishes from sibling tools focused on other services or operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the requirement to set confirm=true to execute, which acts as a usage guideline. However, it does not discuss when to use this tool versus alternatives like create_api_key or list_api_keys, but for a delete operation the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_delete_stageADestructiveIdempotent
⚠️ Destructive: Permanently delete an API Gateway stage. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| apiId | Yes | API ID the stage belongs to | |
| confirm | No | Must be true to actually execute the destructive operation | |
| stageId | Yes | Stage ID to delete | |
| productId | Yes | Product ID the API belongs to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the 'Destructive' label mostly restates structured data. The description does add that deletion is permanent and gates execution behind confirm=true, but the confirm requirement is also already spelled out in the schema, so genuine new behavioral context is thin (no cascade effects, async behavior, or permission notes).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, warning and consequence front-loaded, with the required action at the end. Nothing is wasted and no explanation must be read past to act.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity single-object delete with fully documented parameters, no output schema requirement, and annotations that already carry the safety profile, the definition covers what an agent needs. It is only slightly short on what happens to dependent resources (routes, keys, usage plans) after the stage is removed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: apiId, stageId, productId and confirm each carry their own descriptions. The description only echoes confirm=true, adding no syntax, format, or hierarchy meaning beyond what the schema already provides. Baseline 3 applies when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (delete an API Gateway stage) plus the consequence (permanent). An agent can distinguish it from ncloud_apigw_get_stage / list_stages / create_stage by name alone. It does not explicitly name any sibling, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is the operational directive 'Set confirm=true to execute', which is really an invocation requirement rather than when-to-use advice. No conditions for choosing this over alternatives (e.g. removing a stage vs. recreating it) or prerequisites such as stage state are given; usage is implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_get_productARead-only
Get detailed information about a specific API Gateway product
| Name | Required | Description | Default |
|---|---|---|---|
| productId | Yes | Product ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare 'readOnlyHint: true', indicating a safe read operation. The description adds no additional behavioral context beyond the surface-level 'get detailed information'. It does not mention any potential side effects, authentication needs, or data freshness, nor does it contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the purpose. Every word earns its place, and there is no wasted text or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a single parameter and no output schema. The description is minimal and does not hint at what kind of 'detailed information' is returned (e.g., pricing, specs, region). While sufficient for a basic get operation, it could be more informative given the complexity of API Gateway products.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the parameter 'productId' described as 'Product ID to query'. The description does not add any additional meaning, format, or constraints beyond the schema. Baseline of 3 applies because the schema already covers the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the resource ('a specific API Gateway product'). The verb 'Get' and noun 'product' are specific, and the sibling tool 'ncloud_apigw_list_products' contrasts with this single-item retrieval, providing clear differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives like 'ncloud_apigw_list_products'. The usage is implied by the name and description (use when you have a productId), but no exclusions or conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_get_stageCRead-only
Get details of a single stage of an API in an API Gateway product.
| Name | Required | Description | Default |
|---|---|---|---|
| apiId | Yes | API ID the stage belongs to | |
| stageId | Yes | Stage ID to retrieve | |
| productId | Yes | Product ID the API belongs to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true already declaring the safe-read profile, the description contributes no additional behavioral context such as whether the stage is returned with any truncation, permission requirements, or freshness. It restates the read nature without adding value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the resource and scope front-loaded. No waste, though it is arguably too terse to be maximally useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with full parameter descriptions and a readOnlyHint annotation, the definition is minimally adequate. No output schema exists, so it need not describe returns, but nothing about identity semantics of the three IDs is added.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and all three required parameters (productId, apiId, stageId) are documented in the schema. The description adds no format or hierarchy detail beyond what the schema already provides; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (details of a single stage of an API in an API Gateway product), which distinguishes it implicitly from list_stages, create_stage, and delete_stage siblings. It is clear but never names the sibling it complements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance. The word 'single' hints that list_stages is the bulk alternative and create/delete are the mutations, but the agent must infer this from the verb alone; no prerequisites or conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_get_usage_planBRead-only
Get usage plan details and API usage statistics from API Gateway
| Name | Required | Description | Default |
|---|---|---|---|
| usagePlanId | Yes | Usage plan ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds no additional behavioral context such as authentication needs, rate limits, or side effects. For a tool with annotations, the description should complement them, but here it merely restates the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of 11 words. Every word contributes meaning, and there is no wasted text. It is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description mentions 'details and API usage statistics' but does not specify what the response contains. With no output schema, the description should provide more completeness about the return value. For a simple read tool, this is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, with a description for the sole parameter 'usagePlanId'. The description adds no further meaning beyond the schema's 'Usage plan ID to query'. Baseline 3 is appropriate since the schema already documents the parameter adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('get') and the resource ('usage plan details and API usage statistics'), making the purpose evident. However, it does not explicitly differentiate from sibling tools like 'ncloud_apigw_get_product', though the resource type is different.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. For example, it does not mention that this retrieves a specific usage plan by ID, while a hypothetical list tool would be needed for browsing. Sibling tools include other API Gateway operations, but no comparative context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_list_api_keysARead-only
List all API keys in API Gateway
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of response data for pagination | |
| offset | No | Starting point of the response data for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so the read-only nature is clear. The description adds that it lists 'all' API keys, but does not disclose pagination behavior or potential limits beyond what the schema provides for limit and offset parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 7 words, making it very concise. It front-loads the key action and resource. However, it sacrifices some helpful detail that could be included without significant verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with no required parameters and a read-only annotation, the description is adequate. It covers the core purpose and, combined with the schema, provides a complete picture. The lack of output schema is typical for list tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters (limit and offset), so the schema already provides necessary parameter meaning. The description adds no additional semantic information beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List all API keys in API Gateway', specifying the verb 'list' and the resource 'API keys in API Gateway'. It distinguishes from sibling tools like ncloud_apigw_list_apis and ncloud_apigw_create_api_key by focusing on keys specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ncloud_apigw_create_api_key or ncloud_apigw_delete_api_key. It does not mention any prerequisites, filters, or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_list_apisARead-only
List all APIs in a specific API Gateway product
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of response data for pagination | |
| offset | No | Starting point of the response data for pagination | |
| apiName | No | Filter by API name | |
| productId | Yes | Product ID to list APIs for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so the read-only nature is clear. The description adds no additional behavioral context such as pagination behavior or rate limits, providing no extra value over the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It is efficient but could benefit from additional optional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, and the description does not describe the return format or fields. For a list operation with 4 parameters and no output schema, this is adequate but incomplete for an agent to fully understand what the tool returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description does not add meaning beyond what the parameter descriptions already provide. The description's mention of 'specific API Gateway product' is redundant with the productId parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list), resource (APIs), and scope (in a specific API Gateway product), distinguishing it from siblings like ncloud_apigw_list_products and ncloud_apigw_list_stages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use is provided. Usage is implied by the description and sibling context, but no guidance on alternatives or prerequisites is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_list_productsBRead-only
List all API Gateway products
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of response data for pagination | |
| offset | No | Starting point of the response data for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the description adds no further behavioral context. It does not disclose pagination behavior, sorting, default limits, or the structure of the response (no output schema). For a simple list tool, some behavioral details are missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no extraneous information. It is front-loaded and serves its purpose efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with no output schema, but the description lacks details on what information the list returns (e.g., product names, IDs, pricing). An agent may need more context to effectively use the output. While sufficient for a basic list, completeness could be improved.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters (limit, offset) described in the schema. The description does not add any additional meaning beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and resource 'all API Gateway products'. It is specific enough to distinguish from other list tools that list different entities (e.g., servers, VPCS). However, it does not specify what constitutes an API Gateway product (e.g., SKU, plan), which could be clarified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, use cases (e.g., fetching available products for creating an API Gateway), or when not to use it. The agent must infer its purpose from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_apigw_list_stagesARead-only
List all stages of an API in an API Gateway product. Find apiId with ncloud_apigw_list_apis.
| Name | Required | Description | Default |
|---|---|---|---|
| apiId | Yes | API ID to list stages for | |
| productId | Yes | Product ID the API belongs to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes safety; the description adds the domain-scoping fact that it lists within an API Gateway product and that apiId must be obtained elsewhere. No output schema, so return shape is left implicit, which is the main gap for a list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, purpose front-loaded, prerequisite second. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-param read-only list tool with a complete schema and annotations covering the safety profile, the description supplies the essential prerequisite (how to get apiId) and the scope. Return/pagination behavior is not described, but with no output schema that is a minor omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both apiId and productId, so the schema carries the parameter semantics. The description only hints that apiId comes from ncloud_apigw_list_apis, which is a routing aid rather than additional parameter detail. Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (all stages of an API in an API Gateway product) and scopes it to a product/api. Clearly distinguishes from sibling ncloud_apigw_get_stage (singular) and ncloud_apigw_create_stage/delete_stage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a concrete pointer for obtaining a required input: 'Find apiId with ncloud_apigw_list_apis.' That is clear context. It does not, however, discuss when to use this vs. the get_stage sibling or any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_assign_secondary_ipsA
Assign secondary IPs to a network interface. Provide either secondaryIpList (specific IPs) or secondaryIpCount (auto-assign count).
| Name | Required | Description | Default |
|---|---|---|---|
| secondaryIpList | No | List of specific secondary IP addresses to assign | |
| secondaryIpCount | No | Number of secondary IPs to auto-assign | |
| networkInterfaceNo | Yes | Network interface number to assign secondary IPs to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states the action and parameter choice, but does not mention any side effects, prerequisites (e.g., network interface must exist), limitations, or whether the assignment is immediate or asynchronous. This is a significant gap for a mutation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and every piece of information is useful. There is no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with complete schema coverage, the description is adequate but lacks contextual details such as expected output, whether the operation is reversible, or any constraints on the number of secondary IPs. The lack of annotations and output schema makes the description the only source for such behavior, but it remains minimal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameter descriptions, but the description adds crucial semantic context by indicating that secondaryIpList and secondaryIpCount are mutually exclusive alternatives. This is not present in the schema, which merely lists the parameters without this relationship.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Assign') and resource ('secondary IPs to a network interface'), clearly stating the tool's function. It also distinguishes from the sibling tool ncloud_unassign_secondary_ips by the action of assigning versus unassigning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by explaining the two modes: provide either secondaryIpList or secondaryIpCount. This helps the agent choose the right parameters. However, it does not explicitly mention alternatives or when not to use this tool, but the name and clear action make the use case evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_associate_public_ipAIdempotent
Associate a public IP with a server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to associate with | |
| publicIpInstanceNo | Yes | Public IP instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds no behavioral details beyond the action itself, but it does not contradict the annotations. No extra context like side effects or preconditions is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, direct 9-word sentence that starts with the action verb and states the object. No wasted words, perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter action with full schema coverage and helpful annotations, the description is mostly adequate. It lacks usage guidance and behavioral context, but the tool's complexity is low, so the overall information is sufficient for basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; both 'publicIpInstanceNo' and 'serverInstanceNo' have clear descriptions in the schema. The tool description adds no additional parameter semantics beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Associate' with clear resources: 'a public IP with a server instance.' It unambiguously distinguishes this tool from siblings like 'ncloud_disassociate_public_ip', 'ncloud_create_public_ip', and 'ncloud_delete_public_ip'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives. It does not mention prerequisites, such as requiring an unassociated public IP or the server being in a valid state, nor does it suggest when to prefer the disassociate or create operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_attach_block_storageAIdempotent
Attach a block storage instance to a server. Automatically waits if the block storage is still being created (polls until status is CREAT).
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to attach to | |
| blockStorageInstanceNo | Yes | Block storage instance number to attach |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the non-obvious polling behavior ('Automatically waits... polls until status is CREAT'), adding value beyond the annotations. It aligns with the idempotentHint and destructiveHint annotations, and no contradictions are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the main action followed by a key behavioral note. No wasted words, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with annotations, the description covers purpose and the main behavioral nuance. It lacks details like timeout behavior or prerequisites, but these are not essential for the basic use case, so it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Since schema description coverage is 100% and both parameters have clear descriptions in the schema, the tool description adds no additional parameter semantics. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Attach a block storage instance to a server.' It also adds the unique behavior of waiting for creation, distinguishing it from related tools like detach, create, or delete block storage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (attaching a block storage to a server) and even specifies the automatic waiting behavior, which guides the user on expected execution. However, it does not explicitly mention alternatives or exclusions, hence not a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_attach_network_interfaceBIdempotent
Attach a network interface to a server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to attach to | |
| networkInterfaceNo | Yes | Network interface number to attach |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, so the agent knows the operation is safe and repeatable. However, the description adds no extra behavioral context such as prerequisites, side effects, or state changes beyond the literal action, and does not mention anything about server/interface states.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence with no redundancy or filler; clearly front-loaded with the action. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple two-parameter operation, the schema provides complete parameter descriptions, and annotations cover safety traits. However, the description omits usage context and behavioral nuances such as whether the network interface must be detached first or if the server must be in a specific state, leaving the overall context slightly incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully covers both parameters with clear descriptions, and the description aligns with them. No additional parameter details are needed beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific action verb 'Attach' with a clear resource 'network interface' and target 'server instance', making it distinct from sibling operations like detach_network_interface, create_network_interface, and add_nic_acg. It fully identifies what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_detach_network_interface or ncloud_create_network_interface. The description simply states the operation without context on prerequisites, state requirements, or alternative actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_attach_policy_to_groupBIdempotent
Assign IAM policies to a group
| Name | Required | Description | Default |
|---|---|---|---|
| groupId | Yes | Group ID to assign policies to | |
| policyIdList | Yes | List of policy IDs to assign |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral information beyond the annotations. Annotations already declare idempotentHint=true and destructiveHint=false, and the description only restates the operation without disclosing whether it replaces existing policies, requires specific permissions, or affects group members. No contradiction exists, but no extra context is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the tool's purpose without redundant words. It front-loads the action and is easily scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two required string parameters, no output schema, and annotations covering idempotency and non-destructiveness), the description is mostly complete. It clearly conveys the core function. However, it does not clarify whether the operation is additive or replaces existing policy attachments, which could be relevant for users. This minor gap prevents a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters (groupId and policyIdList) with clear descriptions, achieving 100% schema coverage. The tool description does not add additional parameter semantics beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Assign IAM policies to a group' clearly specifies the action (assign), the object (IAM policies), and the target (group). It distinguishes this tool from sibling tools like ncloud_attach_policy_to_sub_account and ncloud_detach_policy_from_group by naming both the resource and the recipient.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention scenarios where attaching policies to a group is preferred over attaching to a sub-account, nor does it reference detach operations or any prerequisites. The tool name suggests usage, but the description itself lacks explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_attach_policy_to_sub_accountBIdempotent
Assign IAM policies to a sub account
| Name | Required | Description | Default |
|---|---|---|---|
| policyIdList | Yes | List of policy IDs to assign | |
| subAccountId | Yes | Sub account ID to assign policies to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the agent knows the operation is safe to retry and non-destructive. The description adds no extra behavioral context, such as whether existing policy assignments are replaced or appended, or what response is returned. 'Assign' is vague about the effect on existing policies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the action and target without any wasted words. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with only two well-documented parameters and informative annotations, so the description is mostly adequate. However, it lacks guidance on usage alternatives and does not disclose the effect on existing policy assignments, making it slightly incomplete for an agent deciding between attach/detach operations or handling retries.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both subAccountId and policyIdList. The tool description adds nothing about parameter semantics beyond what the schema already provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('assign'), the resource ('IAM policies'), and the target ('sub account'), which distinguishes it from sibling tools like attach_policy_to_group. It is a specific, unambiguous statement, though it closely paraphrases the tool name without additional nuance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case: you use this tool when you want to assign IAM policies to a sub account. However, it does not explicitly state when not to use it or mention alternatives such as the sibling tool ncloud_attach_policy_to_group for group attachments.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cancel_pipelineAIdempotent
Cancel a running SourcePipeline pipeline execution
| Name | Required | Description | Default |
|---|---|---|---|
| historyId | Yes | Execution history ID to cancel (from ncloud_run_pipeline or ncloud_list_pipeline_history) | |
| projectId | Yes | Pipeline ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds the 'running' qualifier, which is useful context, but does not describe side effects, error conditions, or what happens if the execution already completed. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple cancellation tool with two well-documented parameters and supportive annotations, the description is nearly sufficient. It lacks details about response format or behavior on non-running executions, but the 'running' qualifier and idempotency hint cover the main edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters include descriptions (projectId as 'Pipeline ID' and historyId with source hints). The tool description adds no additional parameter meaning beyond what the schema already provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Cancel') and the exact resource ('running SourcePipeline pipeline execution'). It is distinct from sibling tools like ncloud_sourcebuild_cancel_build or ncloud_sourcedeploy_cancel_deploy because it names SourcePipeline explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (when canceling a running SourcePipeline execution) but does not explicitly mention alternatives or exclusion cases. No reference to sibling tools such as ncloud_sourcebuild_cancel_build, leaving some ambiguity for an agent choosing among cancel operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_add_nodesA
Add broker nodes to a CDSS cluster. ⚠️ newBrokerNodeCount is HOW MANY TO ADD, not the resulting total — a cluster with 3 brokers given newBrokerNodeCount=4 ends up with 7. The SES counterpart (ncloud_ses_add_node) behaves the same way. ⚠️ Broker count cannot be reduced afterwards: CDSS has no scale-down operation, so the only way back from adding too many is deleting the cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| newBrokerNodeCount | Yes | How many broker nodes to ADD (1-10). This is a delta, not the resulting total | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, the description discloses critical behavioral traits: newBrokerNodeCount is a delta, the operation is effectively irreversible, and over-adding can only be undone by deleting the cluster. This is valuable context an agent would not otherwise know.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with the core action first and warnings organized clearly. Every sentence earns its place: the delta semantics, the sibling comparison, and the irreversibility warning are all essential operational facts.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter mutation tool with no output schema, the description covers everything an agent needs to avoid a costly mistake: what the operation does, how the count parameter behaves, and the lack of scale-down. No critical operational details are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by giving a concrete worked example ('3 brokers + 4 = 7') and linking the parameter to an irreversible outcome, which strengthens agent understanding of the parameter's real effect.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Add broker nodes to a CDSS cluster.' This clearly differentiates it from siblings like ncloud_cdss_change_node_spec and ncloud_cdss_delete_cluster, and the focus on CDSS distinguishes it from the SES counterpart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear contextual guidance by explaining the delta semantics and warning that broker count cannot be reduced afterward, with deletion as the only reversal path. It does not explicitly state when-not-to-use or name alternatives, but the context strongly implies cautious use for scaling up, which is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_apply_config_groupAIdempotent
Apply a Config Group to a CDSS cluster. The cluster must run the same Kafka version as the group.
| Name | Required | Description | Default |
|---|---|---|---|
| configGroupNo | Yes | Config group number to apply (from ncloud_cdss_list_config_groups) | |
| kafkaVersionCode | Yes | Kafka version code of the group (from ncloud_cdss_get_kafka_versions) | |
| serviceGroupInstanceNo | Yes | Target cluster instance number (from ncloud_cdss_list_clusters) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the version-compatibility constraint but does not disclose other behavioral effects, such as whether the apply triggers a restart or is an asynchronous operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no wasted words. The main action comes first, and the essential prerequisite is stated immediately after.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter operation with annotations covering idempotency and non-destructiveness, the description is largely complete. A minor gap is the lack of any mention of what the API returns or whether the operation is asynchronous, but no output schema exists to require that explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% parameter description coverage, with each parameter explaining its meaning and source. The description adds no additional parameter semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: "Apply a Config Group to a CDSS cluster." This clearly identifies the operation and distinguishes it from sibling tools like create/delete/change config group or cluster creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states a key precondition: the cluster must run the same Kafka version as the group. However, it does not explicitly describe when to use this tool versus alternatives, nor does it state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_change_kafka_configAIdempotent
⚠️ Replaces the Config Group's ENTIRE custom configuration. Any setting you omit loses its custom value and reverts to the default — the API reports SUCCESS either way, so the revert is silent. Read the current values with ncloud_cdss_get_kafka_config and send EVERY value you want to keep, not just the ones you are changing. Named settings are typed parameters; anything without one goes in additionalSettings. range in the read response gives each setting's valid bounds (the server enforces them), and modifyYn: false marks settings the server silently discards rather than rejecting (authorizer.class.name is one). The group must be re-applied to a cluster with ncloud_cdss_apply_config_group for a change to take effect.
| Name | Required | Description | Default |
|---|---|---|---|
| numIoThreads | No | num.io.threads | |
| configGroupNo | Yes | Config group number (from ncloud_cdss_list_config_groups) | |
| numPartitions | No | num.partitions | |
| logSegmentBytes | No | log.segment.bytes (e.g. 1073741824) | |
| kafkaVersionCode | Yes | Kafka version code of the group (from ncloud_cdss_get_kafka_versions) | |
| logCleanerEnable | No | log.cleaner.enable | |
| logCleanupPolicy | No | log.cleanup.policy (e.g. 'delete', 'compact') | |
| deleteTopicEnable | No | delete.topic.enable | |
| logCleanerThreads | No | log.cleaner.threads | |
| logRetentionBytes | No | log.retention.bytes (-1 for unlimited) | |
| logRetentionHours | No | log.retention.hours (e.g. 168) | |
| numNetworkThreads | No | num.network.threads | |
| additionalSettings | No | Settings without a named parameter above — sent as additionalKafkaConfigGroupDetailList. ⚠️ Value application is unverified: an earlier attempt registered the entry with an empty value | |
| authorizerClassName | No | authorizer.class.name. ⚠️ Read-only in practice: the server accepts this, answers SUCCESS, and discards it (modifyYn=false) | |
| autoCreateTopicsEnable | No | auto.create.topics.enable | |
| logFlushIntervalMessages | No | log.flush.interval.messages | |
| allowEveryoneIfNoAclFound | No | allow.everyone.if.no.acl.found | |
| offsetsTopicReplicationFactor | No | offsets.topic.replication.factor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the idempotentHint=true and destructiveHint=false annotations, the description reveals critical behavioral traps: omitted settings silently revert to defaults, the API reports SUCCESS even when reverting, the server enforces bounds from `range`, and `modifyYn: false` settings are silently discarded rather than rejected. This is precisely the kind of non-obvious behavior that could cause data loss if undisclosed. No contradiction with the annotations is present (mutating config isn't the same as destroying the resource).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but contains zero filler — every sentence carries distinct, load-bearing information: replacement semantics, silent success, read-first instruction, parameter routing, bounds enforcement, silent-discard behavior, and the required apply step. The most critical warning (entire-config replacement) is front-loaded, and the two ⚠️ markers flag the highest-risk behaviors.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex 18-parameter mutation tool with no output schema, the description covers every decision an agent needs to make correctly: which values to send (all of them), how to obtain them (from get_kafka_config), how to classify each setting (named vs additionalSettings), which settings won't take effect (modifyYn: false), and what post-step is required (apply_config_group). No critical usage information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are individually documented, but the description adds genuinely useful structure: 'Named settings are typed parameters; anything without one goes in additionalSettings' explains how the 18 parameters route to the API. It also flags authorizerClassName as effectively read-only despite appearing settable, and explains how the read response's `range`/`modifyYn` fields relate to parameter validity. This exceeds the baseline for fully-covered schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-and-resource statement: 'Replaces the Config Group's ENTIRE custom configuration.' This precisely defines both what the tool does and the scope of its effect. It also names sibling tools (ncloud_cdss_get_kafka_config, ncloud_cdss_apply_config_group), so an agent can distinguish this mutation from related read/apply operations without opening their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit read-before-write workflow: 'Read the current values with ncloud_cdss_get_kafka_config and send EVERY value you want to keep.' It also states the required follow-up action ('must be re-applied to a cluster with ncloud_cdss_apply_config_group for a change to take effect'), telling the agent exactly when this tool fits in a multi-step sequence and which siblings to use around it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_change_node_specAIdempotent
Change server spec for nodes in a CDSS cluster. ⚠️ Downgrades are refused by the service — check isChangeSpec in ncloud_cdss_get_node_spec_for_change_g3 (G3) or ncloud_cdss_get_node_product_for_change (G2) first; a spec smaller than the current one comes back with isChangeSpec=false.
| Name | Required | Description | Default |
|---|---|---|---|
| brokerNodeProductCode | No | New broker node product code | |
| managerNodeProductCode | No | New manager node product code | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent and non-destructive. The description adds a behavioral constraint: downgrades are refused by the service, and it explains how to detect this (isChangeSpec=false). This goes beyond the annotations by disclosing a specific failure condition and its detection mechanism.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with a clear main action and a well-placed warning. It is front-loaded with the purpose and adds the warning without extra fluff. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a change operation with three parameters (one required), the description covers the main purpose and the critical precondition (downgrade check). It references the exact getter tools for verification. The absence of an output schema is acceptable since the operation returns a typical result. It is sufficiently complete for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions already cover all three parameters (100% coverage). The description does not add any additional meaning to the parameters, only mentions the tool's purpose. Since schema coverage is high, the baseline is 3, and the description provides no extra semantic value for parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Change server spec for nodes in a CDSS cluster.' It identifies the specific resource (CDSS cluster nodes) and distinguishes from sibling tools like get_node_spec_for_change (read-only) and other services' change_node_spec tools. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent to check isChangeSpec via two named getter tools before proceeding, warning that downgrades are refused. This provides a concrete precondition and points to the correct alternative tools for verification. It does not explicitly state 'use this tool for changing node specs' but that is obvious from the name, and it doesn't mention when to avoid using it beyond the downgrade case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_create_clusterA
Create a new CDSS (Kafka) cluster (G2). Set returnClusterId=true to get the new cluster's serviceGroupInstanceNo back — the default operation returns only success/failure, so you would otherwise have to find the cluster with ncloud_cdss_list_clusters. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| dryRun | No | Preview without creating | |
| clusterName | Yes | Cluster name (3-15 chars, lowercase+numbers+'-') | |
| configGroupNo | Yes | Config group number | |
| brokerNodeCount | Yes | Number of broker nodes (3-10) | |
| returnClusterId | No | If true, calls the variant that returns the new cluster's serviceGroupInstanceNo | |
| kafkaVersionCode | Yes | Kafka version code (from get_kafka_versions) | |
| brokerNodeSubnetNo | Yes | Broker node subnet number | |
| managerNodeSubnetNo | Yes | Manager node subnet number | |
| softwareProductCode | Yes | OS type code (from get_os_products) | |
| kafkaManagerUserName | Yes | CMAK access account ID (still required by the API; CMAK itself is being phased out by Ncloud) | |
| brokerNodeProductCode | Yes | Broker node server type code | |
| brokerNodeStorageSize | Yes | Broker storage in GB (100-2000, 10GB increment) | |
| managerNodeProductCode | Yes | Manager node server type code | |
| kafkaManagerUserPassword | Yes | CMAK access account password (still required by the API; CMAK itself is being phased out by Ncloud) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, so the description carries the burden of explaining the operation's behavior. It discloses that the default returns only success/failure, while setting returnClusterId=true yields the new cluster's serviceGroupInstanceNo — key behavioral detail that affects how the agent should interpret results. It does not cover other potential side effects (e.g., costs, idempotency), but for a create operation with this scope, it adds sufficient clarity beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the core action front-loaded and the optional behaviors (returnClusterId, dryRun) concisely explained. There is no redundant phrasing or unnecessary detail; every sentence earns its place by guiding the agent's invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (15 parameters, 13 required, no output schema), the description effectively covers the key decision points: how to obtain the cluster ID and how to preview without creating. It also hints at the need to fetch certain codes (e.g., kafkaVersionCode from get_kafka_versions, softwareProductCode from get_os_products) via the schema, but does not elaborate on all possible inputs. Overall, it is sufficiently complete for an agent to call it correctly, though a note on required prerequisite lookups could strengthen it further.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters already have descriptions in the input schema, including the behavior of returnClusterId and dryRun. The description adds marginal value by emphasizing the alternative of using ncloud_cdss_list_clusters when returnClusterId is false, but it does not enrich the meaning of most parameters beyond what the schema provides. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new CDSS (Kafka) cluster (G2)' — a specific verb, resource, and generation. It distinguishes from the sibling ncloud_cdss_create_cluster_g3 by explicitly labeling this as G2, and clarifies the default behavior versus returnClusterId=true, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use returnClusterId=true and dryRun=true, and notes that otherwise you must find the cluster with ncloud_cdss_list_clusters. It does not explicitly contraindicate using this for G3, but the (G2) label and naming sufficiently differentiate it from the G3 variant for an agent to pick the correct sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_create_cluster_g3A
Create a new CDSS (Kafka) cluster on 3rd-generation KVM servers (G3). ⚠️ Broker node parameters are named dataNode* here, not brokerNode* as in the G2 tool. VPC and subnets must be given by BOTH name and number. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_cdss_get_vpc_list) | |
| dryRun | No | Preview without creating | |
| vpcName | Yes | VPC name — required in addition to vpcNo | |
| clusterName | Yes | Cluster name (3-15 chars: lowercase letters, numbers, '-') | |
| configGroupNo | Yes | Config group number (from ncloud_cdss_list_config_groups) | |
| dataNodeCount | Yes | Broker node count (3-10, default: 3) | |
| generationCode | Yes | Server generation code. G3 for 3rd generation | |
| hypervisorCode | Yes | Hypervisor code. KVM for 3rd generation | |
| serverSpecCode | Yes | Server spec code (from ncloud_cdss_get_server_spec_list, e.g. cdss.s2-g3) | |
| dataNodeSubnetNo | Yes | Broker node subnet number | |
| kafkaVersionCode | Yes | Kafka version code (from ncloud_cdss_get_kafka_versions) | |
| dataNodeSubnetName | Yes | Broker node subnet name — required in addition to the number | |
| dataNodeProductCode | Yes | Broker node server type code | |
| dataNodeStorageSize | Yes | Broker node storage in GB (100-2000, 10GB increments) | |
| managerNodeSubnetNo | Yes | Manager node subnet number (from ncloud_cdss_get_subnet_list_g3) | |
| softwareProductCode | Yes | G3 OS image code (e.g. SW.VCDSS.OS.LNX64.ROCKY.08.G003) | |
| kafkaManagerUserName | Yes | CMAK access account ID (still required by the API; CMAK itself is being phased out by Ncloud) | |
| managerNodeSubnetName | Yes | Manager node subnet name — required in addition to the number | |
| managerNodeProductCode | Yes | Manager node server type code | |
| dataNodeStorageType2Code | No | Broker storage type. The spec table says NET; the spec page's own sample sends SSD — unresolved, so it is passed through as given | |
| kafkaManagerUserPassword | Yes | CMAK access account password (still required by the API; CMAK itself is being phased out by Ncloud) | |
| dataNodeStorageInfraResourceDetailTypeCode | No | Broker storage detail type. Documented valid value: CB1 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate destructiveHint=false, so the description carries most of the behavioral burden. It discloses a safe preview path (dryRun=true) and the G3/KVM context, but it does not explain whether real cluster creation is asynchronous, what it returns, or what operational side effects to expect. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences, each carrying distinct load: what the tool does, the naming pitfall, the dual-identifier requirement, and the dryRun recommendation. The warning marker focuses attention without padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 22-parameter create tool with no output schema, the description surfaces the three most decision-critical caveats and leaves detailed parameter sourcing to the schema, which is fully described. It could be more complete by noting async behavior or return shape, but nothing an agent needs to avoid a mistaken invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds genuine cross-tool semantics by warning that broker parameters are named dataNode* here and that VPC/subnet identity requires both name and number, which is not inferable from the G2 tool or from individual schema fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Create a new CDSS (Kafka) cluster', and scopes it to '3rd-generation KVM servers (G3)'. It also distinguishes itself from the G2 sibling by noting the dataNode* naming difference, so an agent can tell it apart from ncloud_cdss_create_cluster without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete invocation guidance: use dryRun=true to preview, supply both VPC and subnet names and numbers, and expect dataNode* rather than brokerNode* as in the G2 tool. It references the G2 alternative but does not explicitly spell out a selection rule between G2 and G3, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_create_config_groupB
Create a new Config Group for CDSS cluster configuration
| Name | Required | Description | Default |
|---|---|---|---|
| description | No | Config group description (0-255 chars) | |
| configGroupName | Yes | Config group name (3-30 chars: lowercase letters, numbers, hyphen; must start and end with a lowercase letter or number) | |
| kafkaVersionCode | Yes | Kafka version code (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint: false, and the description ('Create') is consistent with it—no contradiction. However, the description adds no behavioral detail beyond the verb itself: nothing about synchronous vs. asynchronous completion, duplicate-name behavior, or whether the created group needs to be applied to clusters afterward. For a write operation with minimal annotation coverage, this is a partial but not severe gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler words—'Create a new Config Group for CDSS cluster configuration.' It is efficient for a simple creation operation whose parameters are fully documented in the schema. It is slightly under-sized on context, but not for lack of economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low-complexity (3 flat params, no output schema), and the schema alone is sufficient for a correct basic invocation. What is missing is lifecycle context: that a config group is a template meant to be applied via ncloud_cdss_apply_config_group or referenced at cluster creation, and how this differs from editing via ncloud_cdss_set_config_group_description. Adequate to call, but an agent gets no sense of where this step fits in the CDSS workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters including name format rules and length constraints. The description itself adds no parameter information, which is acceptable at the baseline given the schema does the heavy lifting. The kafkaVersionCode schema hint pointing to ncloud_cdss_get_kafka_versions is a useful provenance cue.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Create), a specific resource (Config Group), and a scope (CDSS cluster configuration) in one clear sentence. It does not explicitly distinguish itself from the similarly-named sibling ncloud_create_cache_config_group, but the 'CDSS' scoping plus the tool-name prefix carry that differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus related CDSS siblings such as ncloud_cdss_apply_config_group (applying a group to a cluster), ncloud_cdss_set_config_group_description (modifying later), or ncloud_cdss_list_config_groups (checking existence). The only contextual hint—that kafkaVersionCode comes from ncloud_cdss_get_kafka_versions—lives in the schema, not the description. No when-to-use, exclusions, or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_delete_clusterADestructiveIdempotent
⚠️ Destructive: Permanently delete a CDSS (Kafka) cluster. All data will be lost. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion | |
| serviceGroupInstanceNo | Yes | Cluster instance number to delete (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint. The description adds value by specifying the concrete consequence ('All data will be lost') and the mandatory confirm flag, which is not evident from the annotations alone. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: three short sentences with high information density. The warning emoji and front-loaded 'Destructive' immediately catch attention, and every clause (permanent deletion, data loss, confirm requirement) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter delete operation with full schema coverage and appropriate annotations, the description covers the essential operational aspects: the destructive action, data-loss consequence, and the confirmation gate. A minor gap is not stating what happens when confirm=false, but the default 'false' and schema description imply a no-op.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers both parameters with descriptions (confirm defaulting to false, serviceGroupInstanceNo as required). The description reinforces the confirm requirement but does not add semantic detail beyond the schema, and with 100% schema coverage, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('delete') and the specific resource ('CDSS (Kafka) cluster'), and adds the critical qualifier 'permanently' with 'All data will be lost.' This distinguishes it from other delete tools such as ncloud_cdss_delete_config_group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The destructive warning and the explicit 'Set confirm=true to execute' provide clear usage context, signaling that this is a high-risk operation requiring confirmation. However, it does not explicitly compare with alternative tools or state when not to use it, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_delete_config_groupADestructiveIdempotent
⚠️ Destructive: Delete a Config Group. Check which clusters still use it with ncloud_cdss_get_config_group_clusters first. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion | |
| configGroupNo | Yes | Config group number to delete (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds crucial context: a confirm=true guard is required to execute, and the destructive effect is flagged with a warning emoji. This exceeds the baseline by explaining the safety mechanism beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one compact sentence with a warning, a prerequisite, and the execution condition. Every word earns its place; the destructive warning is front-loaded, and the instruction to check clusters comes before the execution requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete tool with 2 parameters and no output schema, the description covers the essential prerequisites and guard. The only minor gap is not describing the return value or post-delete state, but the annotations and schema cover most of what an agent needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are documented. The description reinforces that confirm must be true to execute, which is the most important semantic. It doesn't add extra detail about configGroupNo, but the schema already covers it. Slight deduction because no additional contextual meaning beyond schema is provided, but the critical confirmation flag is highlighted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Delete') and resource ('Config Group') with clear scope. It also distinguishes itself from sibling tools like ncloud_cdss_create_config_group and ncloud_cdss_apply_config_group by the destructive action and explicit pre-check instruction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs the agent to check which clusters still use the config group via ncloud_cdss_get_config_group_clusters before deleting. This is a clear when-to-use and prerequisite step that differentiates safe usage from dangerous usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_disable_public_domainAIdempotent
Disable public domain for CMAK management tool access. CMAK is being phased out by Ncloud (the CMAK restart API ended 2026-09-17); this operation is still documented but may be discontinued.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is known. The description adds valuable context about CMAK being phased out and the operation potentially being discontinued, which is beyond the annotations and helps the agent understand risk. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The primary action is front-loaded, and the deprecation note is concise and relevant. It is appropriately sized for a simple operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter disable operation with no output schema and annotations covering safety, the description provides sufficient information. It states what it does, the deprecation risk, and implies the resource. It lacks details like prerequisites or exact effects, but these are minor for such a straightforward tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the single parameter (serviceGroupInstanceNo) is already documented as 'Cluster instance number'. The description adds no additional detail about the parameter, so the baseline of 3 applies; the schema handles the semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: disabling the public domain for CMAK management tool access. It uses a specific verb and resource, and the mention of CMAK distinguishes it from the sibling disable_public_endpoint and the inverse enable_public_domain. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when you need to disable public domain for CMAK), but it does not explicitly contrast it with alternatives like ncloud_cdss_disable_public_endpoint or mention when not to use it. The deprecation warning adds context but does not provide explicit usage guidance relative to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_disable_public_endpointAIdempotent
Disable the public endpoint for broker nodes
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the scope 'broker nodes' but does not disclose potential side effects, such as whether active connections are dropped or whether the endpoint can be re-enabled. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence with no redundant words. The action and target are front-loaded, making it easy to scan and understand.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter operation, the description covers the core action. However, it lacks context about when to use it, what 'broker nodes' refers to, or any prerequisites. With no output schema and minimal annotations, an agent might still be uncertain about the exact effect or scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the only parameter, serviceGroupInstanceNo, as 'Cluster instance number' (100% coverage). The description does not add any additional meaning or context for this parameter, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Disable the public endpoint for broker nodes' clearly states the action (disable) and the resource (public endpoint for broker nodes). It differentiates from siblings like 'ncloud_cdss_enable_public_endpoint' and 'ncloud_cdss_disable_public_domain' by explicitly targeting the broker nodes' public endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'enable_public_endpoint' or 'disable_public_domain'. The description does not mention prerequisites, conditions, or contexts where this operation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_enable_public_domainAIdempotent
Enable public domain for CMAK management tool access. CMAK is being phased out by Ncloud (the CMAK restart API ended 2026-09-17); this operation is still documented but may be discontinued.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds value by warning about the deprecation timeline and discontinuation risk, which is beyond the annotations. It does not elaborate on side effects, but given the annotations, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. The first states the primary action, the second provides valuable deprecation context. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter action with annotations covering safety, the description is nearly complete. It might benefit from mentioning that it applies to a specific cluster instance, but that is clear from the parameter. The deprecation warning is a strong addition. Minor lack of return/effect details, but no output schema exists to mandate that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the sole parameter 'serviceGroupInstanceNo' is described as 'Cluster instance number'. The description does not add additional semantic detail, but it does not need to; the schema already fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Enable public domain') on a specific resource ('CMAK management tool access'). The context about CMAK being phased out further distinguishes this operation and clarifies its scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (enabling public domain) but does not explicitly contrast with the sibling disable_public_domain or any alternatives. The deprecation warning offers contextual guidance but no explicit when/when-not.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_enable_public_endpointAIdempotent
Enable a public endpoint for broker nodes. Requires a load balancer — list the available ones with ncloud_cdss_get_load_balancers.
| Name | Required | Description | Default |
|---|---|---|---|
| loadBalancerInstanceNo | Yes | Load balancer instance number (from ncloud_cdss_get_load_balancers) | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds a behavioral constraint—the need for a load balancer—which is not in the annotations or schema. It doesn't contradict annotations and provides useful context beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with zero waste. The core purpose is front-loaded, and the prerequisite and cross-reference are placed right after. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 2 parameters and no output schema, the description covers the action, the target (broker nodes), and the key prerequisite (load balancer). Annotations handle idempotency and non-destructiveness. Nothing critical is missing for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters have descriptions. The description adds value by telling the agent how to source loadBalancerInstanceNo (via ncloud_cdss_get_load_balancers), which is extra guidance beyond the schema's static description. serviceGroupInstanceNo is adequately described as 'Cluster instance number' in the schema, so no further clarification is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Enable a public endpoint for broker nodes.' It uses a specific verb and resource, and the phrase 'broker nodes' distinguishes it from sibling tools like ncloud_cdss_enable_public_domain and ncloud_cdss_disable_public_endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear prerequisite: 'Requires a load balancer' and points to the exact sibling tool to list load balancers. This tells the agent when it can use the tool and how to obtain a required parameter. It doesn't explicitly contrast with disable_public_endpoint, but the verb and name make the opposite case obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_broker_infoARead-only
Get broker node communication info (endpoints, ports) for a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description's 'Get' verb is consistent. The description adds specifics about the returned data (endpoints, ports) but does not disclose additional behaviors such as list format, error conditions, or permissions. It adds modest value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence with no redundancy or filler. It is perfectly concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one parameter, no output schema, and a clear purpose, the description sufficiently conveys what the tool returns. It mentions endpoints and ports, which covers the core output. Minor gaps: it does not specify whether the return is a list or object, or any prerequisites. Still, it is complete enough for this simple read-only tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter serviceGroupInstanceNo, which already has a description ('Cluster instance number'). The tool description adds no further meaning or context for this parameter, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('broker node communication info (endpoints, ports) for a CDSS cluster'), clearly distinguishing it from other CDSS tools like get_cluster_detail or get_monitoring. It precisely states what is retrieved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description only states the action without contextual cues, exclusions, or references to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_certificateARead-only
Get TLS certificate used for cluster communication encryption
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description's 'Get' aligns with that. However, the description adds no extra behavioral context such as return format, whether the certificate is sensitive, or any side effects, so its value beyond the annotation is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, compact sentence provides the essential purpose with no unnecessary words. It is well-structured and immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema, read-only), the description is essentially complete. A minor gap is that it does not describe the certificate data format or response structure, but this is not critical for a getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with serviceGroupInstanceNo described as 'Cluster instance number'. The description does not elaborate on the parameter beyond what the schema already states, so it adds no extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and a clear resource 'TLS certificate', further specifying 'used for cluster communication encryption'. This clearly distinguishes it from other sibling get tools by naming the exact certificate and its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool—when you need the TLS certificate for cluster communication—but does not explicitly state when-not-to-use or mention alternatives. There are no exclusions or prerequisites provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_cluster_acgCRead-only
Get ACG (Access Control Group) rules for a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description simply restates the tool name with no additional behavioral context. The readOnlyHint annotation is present, but the description adds no extra information about pagination, return format, or permission requirements beyond what the annotation already implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded and contains no unnecessary words. It efficiently communicates the core function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with no output schema, the description is minimal and does not explain what the response contains, what ACG rules are, or any relevant details. The presence of a readOnlyHint annotation helps somewhat, but the description does not fully cover the context needed for an agent to understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter serviceGroupInstanceNo with a description 'Cluster instance number', giving 100% schema coverage. The tool description adds no additional meaning or context about the parameter, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'ACG rules for a CDSS cluster', which is specific and unambiguous. It distinguishes from similar tools like ncloud_ses_get_cluster_acg by explicitly scoping to CDSS clusters, though it does not explicitly mention alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no prerequisites, and no context about cluster access or configuration. The description only states what it does, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_cluster_detailARead-only
Get detailed information about a specific CDSS (Kafka) cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number from cluster list |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'Get detailed information' aligns with a read-only operation. The description adds no additional behavioral context beyond the annotation, such as response format or data scope, but no contradiction exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence fully states the tool's purpose with no wasted words. It is appropriately front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple structure (one parameter, read-only annotation, no output schema), the description is sufficiently complete. It does not enumerate what 'detailed information' includes, but this is acceptable given the lack of output schema and the straightforward nature of a get-detail operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The parameter schema has 100% coverage with a clear description ('Cluster instance number from cluster list'). The main description reinforces the parameter's meaning by calling out 'specific cluster'. This adds value beyond the schema by indicating the source of the identifier.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('CDSS (Kafka) cluster'), clearly indicating this tool fetches details for one specific cluster. It distinguishes itself from siblings like ncloud_cdss_list_clusters (list) and ncloud_cdss_get_cluster_status (status) by focusing on detailed information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific CDSS (Kafka) cluster' implies use when you need details of a particular cluster rather than a list or status. However, it does not explicitly name alternative tools like get_cluster_status or list_clusters, so exclusions are not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_cluster_server_imagesARead-only
Get available OS images for CDSS (G3/KVM). The returned image code is the softwareProductCode for ncloud_cdss_get_server_spec_list, ncloud_cdss_get_subnet_list_g3 and ncloud_cdss_create_cluster_g3. For G2 use ncloud_cdss_get_os_products.
| Name | Required | Description | Default |
|---|---|---|---|
| generationCode | No | Server generation code. Only G3 (3rd generation) is valid |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds meaningful behavioral context beyond that: the scope is G3/KVM CDSS, and the returned image code doubles as the softwareProductCode for downstream tools. This goes beyond simple listing and helps the agent understand what the result represents.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no fluff. The purpose is front-loaded, the downstream relationship is included in the second sentence, and the alternative tool is given in the third. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one optional enumerated parameter, the description is nearly complete: it states purpose, scope, downstream usage, and the G2 alternative. It does not describe the full return shape, but since no output schema exists, the note that the image code is the softwareProductCode partially fills that gap. The missing response details are a minor gap rather than a blocker.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents the only parameter generationCode with an enum of ['G3'] and a clear description, so schema coverage is 100%. The description adds context about G3 vs G2 but does not provide additional parameter-level semantics. The baseline 3 is appropriate because the schema carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Get available OS images') with a clear resource and scope ('CDSS (G3/KVM)'). It distinguishes itself from the related G2 path by explicitly routing that case to ncloud_cdss_get_os_products. This is enough for an agent to know exactly what this tool does and how it differs from alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit usage boundary: use this for G3/KVM CDSS, and for G2 use ncloud_cdss_get_os_products. It also explains how the returned image code feeds into other CDSS tools, which clarifies the intended workflow context. No inference is required to decide when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_cluster_statusARead-only
Get health status of a CDSS cluster (broker and zookeeper status per node). result.cmakStatus is deprecated by Ncloud (2026-09-17, CMAK is being phased out) and may be absent or stale — do not rely on it.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals read-only behavior. The description adds valuable context about the deprecated cmakStatus field, warning that it may be absent or stale, which is critical for correct interpretation of results. It also clarifies the exact scope of the status (broker and zookeeper per node). This goes beyond the annotation and helps the agent handle potential data quirks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The first sentence is front-loaded with the core purpose, and the second delivers a critical caveat about deprecated data. Every word earns its place, making it efficient and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only status tool with one parameter and no output schema, the description is nearly complete. It explains what the status covers and warns about a fragile field. It does not explicitly say that the serviceGroupInstanceNo is required or how to find it, but that is already in the schema. It also lacks mention of possible error cases, but that is beyond typical scope. Overall, it provides sufficient context for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter (serviceGroupInstanceNo) with a description ('Cluster instance number'). The description does not mention the parameter or provide additional semantics, but schema coverage is 100%, so the baseline of 3 applies. The description adds no extra meaning about how to obtain or format the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get health status') and the specific resource ('CDSS cluster') with detail on what it returns ('broker and zookeeper status per node'). This distinguishes it from sibling tools like ncloud_cdss_get_cluster_detail (more general details) and ncloud_cdss_get_broker_info (broker-specific). The deprecated field warning adds specificity without confusing the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that it is the primary tool for health checks, nor does it contrast with related CDSS tools (e.g., ncloud_cdss_get_cluster_detail, ncloud_cdss_get_broker_info). The deprecated field warning is about data behavior, not usage context. An agent gets no explicit help selecting this tool from the larger set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_config_group_clustersARead-only
List the CDSS clusters a Config Group is currently applied to. Call this before deleting a group.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size (default: 10) | |
| configGroupNo | Yes | Config group number (from ncloud_cdss_list_config_groups) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates safety. The description adds limited behavioral context by noting the clusters are 'currently applied to' and positioning the call before deletion, but it does not disclose response shape or pagination behavior. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences with no filler. The primary purpose is front-loaded, and the usage directive is a compact second sentence that earns its place by advising when to call the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one required parameter and two pagination fields already documented in the schema, the description is sufficient. It lacks explicit return-format details and there is no output schema, but the purpose and workflow context are clear enough for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters, including that configGroupNo comes from ncloud_cdss_list_config_groups. The description adds no supplementary parameter meaning beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List') and resource ('CDSS clusters a Config Group is currently applied to'), making the tool's scope unmistakable. It differentiates from the related ncloud_cdss_list_clusters and ncloud_cdss_delete_config_group by clarifying this is a cluster-to-config-group association query.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The sentence 'Call this before deleting a group' gives explicit workflow context and signals this tool is a pre-deletion check. It does not enumerate alternatives or state when not to use it, so it stops short of full exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_config_group_detailBRead-only
Get Config Group details (name, Kafka version, description) for a CDSS config group
| Name | Required | Description | Default |
|---|---|---|---|
| configGroupNo | Yes | Config group number (from ncloud_cdss_list_config_groups) | |
| kafkaVersionCode | Yes | Kafka version code of the group (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description says 'Get' and the readOnlyHint=true annotation already establishes that this is a safe read operation, so there is no contradiction. It adds a little context by naming the returned detail fields, but it does not describe additional behavior such as error cases, response shape, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One focused sentence with no filler or redundancy. The returned fields are front-loaded, and 'for a CDSS config group' adds the necessary domain context without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only two required parameters fully documented in the schema and readOnlyHint set, the agent has enough to call this tool correctly. There is no output schema, but the description compensates by naming the returned fields; it could be more complete by noting response format or error behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and each parameter already has a description, including where its value comes from. The prose description does not add meaning beyond the schema's parameter documentation, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('Config Group details'), and it enumerates the returned fields (name, Kafka version, description). It is clearly a detail-getter versus ncloud_cdss_list_config_groups, but it does not explicitly name or contrast any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use, when-not-to-use, or alternative tool guidance. The input schema hints that parameter values come from ncloud_cdss_list_config_groups and ncloud_cdss_get_kafka_versions, but the description itself does not state sequencing or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_kafka_configARead-only
Get the Kafka settings held by a Config Group (default and custom values per setting)
| Name | Required | Description | Default |
|---|---|---|---|
| configGroupNo | Yes | Config group number (from ncloud_cdss_list_config_groups) | |
| kafkaVersionCode | Yes | Kafka version code of the group (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool returns both default and custom values per setting, which is behavioral context beyond the readOnlyHint annotation. It adds value by explaining what the response contains, even though it does not detail the exact response structure. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the purpose and includes a useful detail about default and custom values. No redundant or unnecessary words, and it is front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with two well-documented parameters and readOnlyHint annotation, the description is mostly complete. It mentions the key aspect of returning default and custom values, which gives the agent an idea of the output, even without an output schema. Slight gap: it doesn't specify what 'settings' are, but this is minor for a config retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage for both parameters with descriptions that reference other tools for sourcing values. The description adds no additional parameter-specific semantics, so it does not exceed the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves Kafka settings from a Config Group, using a specific verb and resource. It mentions the return includes default and custom values, but does not explicitly differentiate from sibling tools like ncloud_cdss_get_config_group_detail, so it lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by mentioning 'held by a Config Group', which suggests it is for retrieving settings of a specific group. However, it does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusions or conditions. Guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_kafka_versionsARead-only
Get available Kafka version list (kafkaVersionCode) for CDSS cluster creation
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds that the call returns available Kafka versions identified by kafkaVersionCode, and frames it as a pre-creation lookup. There are no destructive or edge behaviors to disclose for a parameterless read operation. It could be richer about the exact response structure, but no output schema exists and the field name is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, no filler, with the action, resource, field, and purpose all front-loaded. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, read-only version lookup, the description covers what the tool does, why it would be used, and what content is returned (kafkaVersionCode). Nothing critical is missing for an agent to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters and 100% schema description coverage, so the baseline is 4. The description's field name 'kafkaVersionCode' also hints at the meaningful value the caller should consume, compensating for the lack of an output schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a concrete resource ('available Kafka version list'), and the named return field (kafkaVersionCode), plus the context (CDSS cluster creation). This is enough to distinguish it from sibling CDSS lookup tools like ncloud_cdss_get_node_products or ncloud_cdss_get_server_generations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'For CDSS cluster creation' gives a clear usage context: fetch versions when preparing to create a CDSS cluster. It doesn't name alternatives or exclusions, but for a zero-parameter lookup the context is sufficient to select it over unrelated CDSS getters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_load_balancersARead-only
Get available load balancers for CDSS broker node public endpoint
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint: true, and the description is consistent. The description adds context that the returned load balancers are scoped to the CDSS broker node public endpoint, but it does not disclose additional behaviors like return format or filtering criteria. Given the annotation coverage, this is an adequate but unexceptional level of transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no extraneous words. It states the action and resource immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one parameter and a readOnlyHint annotation, the description is sufficient. It clearly explains the purpose and scope. Though the output schema is absent, the tool is simple enough that the description covers the essential context without needing to detail return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents the sole parameter, serviceGroupInstanceNo, with the description 'Cluster instance number.' The tool description adds no additional parameter-specific insight, so the baseline score of 3 applies due to the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with a clear resource ('load balancers') and context ('for CDSS broker node public endpoint'), cleanly distinguishing this tool from the generic ncloud_list_load_balancers sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for CDSS broker node public endpoint' provides clear contextual usage guidance, showing when this tool is relevant. However, it does not explicitly mention alternatives or exclusions, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_monitoringARead-only
Get Kafka monitoring metrics for a CDSS cluster node
| Name | Required | Description | Default |
|---|---|---|---|
| metric | Yes | Metric set to retrieve | |
| timeEnd | Yes | End time as epoch milliseconds | |
| interval | No | Aggregation interval (e.g. Min1, Min30, Hour2, Day1) | |
| timeStart | Yes | Start time as epoch milliseconds (e.g. 1745280000000) — NOT an ISO 8601 string | |
| computeInstanceNo | Yes | Node instance number (from ncloud_cdss_list_nodes) | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a read operation, so the description does not need to repeat that. However, the description adds no additional behavioral details such as response format, pagination, or any limitations. It simply states the purpose, which is acceptable but not enriching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, direct sentence with no unnecessary words. The core action and object are front-loaded, making it immediately clear what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 100% schema coverage and the readOnlyHint annotation, the description covers the essential purpose. It does not describe the return value, but no output schema is present and that may not be critical. The main gap is lack of usage guidance, which is already scored separately. Overall, the description is sufficient for a read-only metric retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all six parameters have explicit descriptions in the schema. The description adds no parameter-specific information beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get Kafka monitoring metrics for a CDSS cluster node' clearly states a specific verb, resource type (Kafka monitoring metrics), and scope (CDSS cluster node), distinguishing it from related tools like ncloud_cdss_get_os_monitoring and ncloud_cdss_get_broker_info without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention ncloud_cdss_get_os_monitoring or other monitoring tools, nor any conditions or exclusions. An agent would have to infer from the name and context, which is weak.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_node_product_for_changeARead-only
Get the server types a running CDSS cluster's nodes can be changed to (G2 clusters only). ⚠️ On a G3/KVM cluster this returns empty lists rather than an error — use ncloud_cdss_get_node_spec_for_change_g3 there. Note that ncloud_cdss_get_node_spec returns a node's CURRENT spec, which is a different operation from the specs it may be changed to.
| Name | Required | Description | Default |
|---|---|---|---|
| softwareProductCode | Yes | OS type code (from ncloud_cdss_get_os_products) | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds valuable behavioral context beyond that: it is G2-only, returns empty lists rather than an error on G3/KVM, and contrasts with the current-spec operation. This is meaningful edge-case disclosure, though it omits possible rate-limit or auth details that are not indicated elsewhere.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences: purpose first, then a crucial warning, then a disambiguation note. Each sentence earns its place, and the structure front-loads the core functionality while adding guardrails.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the 100% schema coverage, and the absence of an output schema, the description is fairly complete. It covers scope, edge-case behavior, and sibling distinction. It does not describe the exact response structure, but the phrase 'server types' and the mention of 'returns empty lists' give sufficient context for an agent to infer a list return.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; both parameters are already documented (softwareProductCode as OS type code from ncloud_cdss_get_os_products, serviceGroupInstanceNo as cluster instance number). The description adds no additional parameter-level semantics, so it stays at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb, resource, and scope: 'Get the server types a running CDSS cluster's nodes can be changed to (G2 clusters only).' It clearly differentiates from the G3 alternative and from ncloud_cdss_get_node_spec, which returns the current spec, not changeable specs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly names the sibling to use instead on G3/KVM clusters (ncloud_cdss_get_node_spec_for_change_g3), warns about the empty-list behavior on the wrong cluster type, and clarifies that ncloud_cdss_get_node_spec is a different operation. This gives an agent clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_node_productsARead-only
Get available node server types (product codes) for CDSS cluster creation (G2)
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | Yes | Subnet number (from ncloud_cdss_get_subnet_list) | |
| softwareProductCode | Yes | OS type code (from ncloud_cdss_get_os_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds that the tool returns product codes and is tied to G2 creation, but it does not describe response shape or additional prerequisites. This is adequate but not rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every phrase contributes meaning: what is fetched, what the result represents, and the usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup with two well-documented parameters, the description plus schema cover the essential decisions: purpose, resource type, G2 scope, and parameter provenance. No output schema exists, but the description names the return concept ('product codes'), so the remaining ambiguity is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the parameter descriptions already explain that softwareProductCode comes from ncloud_cdss_get_os_products and subnetNo from ncloud_cdss_get_subnet_list. The description itself adds no parameter-level meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get'), names the concrete resource ('node server types / product codes'), and scopes it to CDSS cluster creation (G2). This clearly differentiates it from sibling tools like ncloud_cdss_get_node_spec and ncloud_cdss_get_node_product_for_change.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the intended context: CDSS cluster creation (G2). The parameter descriptions add workflow guidance by pointing to ncloud_cdss_get_os_products and ncloud_cdss_get_subnet_list as prerequisite calls. It does not explicitly name excluded alternatives, but the context is strong enough for an agent to select it correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_node_specBRead-only
Get current server spec details for nodes in a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates that this is a safe read operation. The description adds the qualifier 'current', which implies it returns live state rather than options, but it does not disclose details like return format, pagination, or whether all nodes are included. This modest addition is consistent with the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It states the verb and object clearly, making it easy to parse at a glance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter and a clear purpose, the description is sufficiently complete. It explains what is returned (server spec details for nodes) and the required input (cluster instance). No output schema exists, but the description gives enough context for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the single parameter serviceGroupInstanceNo described as 'Cluster instance number'. The tool description does not add further parameter-specific meaning, but it confirms the parameter identifies the cluster for which node specs are retrieved. This matches the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get') and resource ('server spec details for nodes in a CDSS cluster'), making the tool's purpose unambiguous. It does not explicitly distinguish from sibling tools like ncloud_cdss_get_server_spec_list, but the focus on 'current ... details for nodes' provides enough differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_cdss_get_server_spec_list or ncloud_cdss_get_cluster_detail. The description does not mention any conditions or exclusions, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_node_spec_for_change_g3ARead-only
Get the server specs a running CDSS cluster's nodes can be changed to (G3/KVM only). The G2 equivalent is ncloud_cdss_get_node_spec.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number (from ncloud_cdss_list_clusters) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only safety profile is covered. The description adds useful scoping context ('G3/KVM only', 'running CDSS cluster') but does not describe return format, error conditions, or behavior beyond the basic read operation. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff, with the core action and scope front-loaded followed by the G2 sibling reference. Every sentence contributes selection-relevant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only tool with annotations and full schema coverage, this is nearly complete. It clearly scopes to G3/KVM and names the G2 equivalent. The only gap is that it doesn't disambiguate from the similarly named ncloud_cdss_get_node_product_for_change or note that the returned specs may be used directly with ncloud_cdss_change_node_spec.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the parameter is well-documented ('Cluster instance number (from ncloud_cdss_list_clusters)'). The description adds no new parameter-level meaning beyond implying the cluster must be running; per the baseline rule, 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('server specs a running CDSS cluster's nodes can be changed to'), plus a clear scope qualifier ('G3/KVM only'). It also names the sibling ncloud_cdss_get_node_spec as the G2 equivalent, making the distinction immediate and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly names the G2 alternative and implies the condition for choosing this tool (G3/KVM clusters looking up changeable node specs). However, it does not mention other closely related siblings like ncloud_cdss_get_node_product_for_change or ncloud_cdss_get_node_products, so exclusion guidance is incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_node_storageARead-only
Get the block storage attached to a CDSS cluster node (computeInstanceNo from ncloud_cdss_list_nodes). Public and Financial zones only.
| Name | Required | Description | Default |
|---|---|---|---|
| computeInstanceNo | Yes | Node server instance number (from ncloud_cdss_list_nodes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds a genuine behavioral constraint not present in structured data: availability is limited to Public and Financial zones. It does not describe the returned block-storage payload, but the annotation covers the safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler; the action is front-loaded and the source-tool pointer and zone constraint are packed into the remainder. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one fully documented parameter, a read-only annotation, and no output schema, the definition is nearly sufficient for correct invocation. The only omission is any indication of the shape or pagination of the returned block-storage records.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is fully documented in the schema, including the same 'from ncloud_cdss_list_nodes' pointer. The description therefore adds no meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ('Get the block storage attached to a CDSS cluster node'), which is unambiguous and clearly distinct from the similarly named ncloud_ses_get_node_storage. It does not, however, explicitly contrast itself with that sibling, so it falls just short of the top tier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It tells the agent where the required identifier comes from ('computeInstanceNo from ncloud_cdss_list_nodes') and scopes applicability with 'Public and Financial zones only'. There is no explicit when-not-to-use or alternative routing, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_os_monitoringARead-only
Get OS-level monitoring metrics (CPU, memory, disk) for a CDSS cluster node
| Name | Required | Description | Default |
|---|---|---|---|
| metric | Yes | Metric set to retrieve. OS_ALL_METRICS is the only valid value | |
| timeEnd | Yes | End time as epoch milliseconds | |
| interval | No | Aggregation interval (e.g. Min1, Min30, Hour2, Day1). Default: Min1 | |
| timeStart | Yes | Start time as epoch milliseconds (e.g. 1745280000000) — NOT an ISO 8601 string | |
| computeInstanceNo | Yes | Node instance number (from ncloud_cdss_list_nodes) | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations declare readOnlyHint=true, and the description's 'Get' wording aligns with that read-only behavior. The description adds no further behavioral context such as side effects, rate limits, or auth requirements, but with the read-only annotation present the safety profile is adequately covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or repetition. It conveys the essential purpose and metric scope as efficiently as possible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema provides thorough parameter documentation, and the read-only annotation covers side-effect safety. The description contributes the high-level return scope (CPU/memory/disk). With no output schema, a fully explicit response structure would be helpful, but an agent has enough information to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers all parameters with detailed descriptions (100% coverage), including epoch milliseconds, interval examples, and the single valid metric enum. The description adds meaning by specifying that the returned OS metrics are CPU, memory, and disk, which clarifies what OS_ALL_METRICS actually provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the operation ('Get'), the resource ('OS-level monitoring metrics'), and the specific metric categories ('CPU, memory, disk') for a 'CDSS cluster node'. It is more specific than the bare tool name and helps separate it from the generic ncloud_cdss_get_monitoring sibling, though it does not explicitly name that alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when OS-level CPU/memory/disk metrics are needed, but it gives no explicit guidance on when to choose this tool over related siblings like ncloud_cdss_get_monitoring. There are no exclusions, prerequisites, or alternative-selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_os_productsARead-only
Get available operating system types for CDSS cluster creation
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation. The description adds no behavioral context beyond repeating 'Get', such as return format, pagination, or regional variations. While not contradictory, it enriches the annotation only minimally, warranting a baseline score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with clear verb and resource, containing no filler or redundant text. It efficiently conveys the tool's function in minimal words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only enumeration tool, the description fully captures the tool's role in the CDSS cluster creation flow. It does not need to explain return values in detail since 'available operating system types' implies a list, and the absence of an output schema does not create notable gaps at this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description has no parameter details to provide. Per the rubric, 0 params yields a baseline of 4; the description correctly focuses on the tool's purpose rather than irrelevant parameter guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get', identifies the resource as 'operating system types', and scopes it to 'CDSS cluster creation'. This clearly distinguishes it from sibling tools like ncloud_cdss_get_cluster_server_images or ncloud_cdss_get_node_products, which target different aspects of cluster creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states the context of use ('for CDSS cluster creation'), helping the agent know when to call it. It does not explicitly mention alternatives or exclusions, but given the simple read-only nature, the context signal is sufficient for selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_server_generationsARead-only
Get available server generations (hypervisor types) for CDSS
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already conveys the safe read-only nature. The description adds only the semantic clarification 'hypervisor types' but does not disclose additional behaviors such as response format or pagination. This does not contradict the annotation, but adds minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence of nine words, front-loaded with the action and resource. There is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool, the description is adequate. It explains what the tool returns (server generations/hypervisor types) but does not mention the exact return type or any potential edge cases. Given the tool's simplicity, this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description carries no burden to explain parameter usage. The parenthetical '(hypervisor types)' adds useful meaning to the term 'generations', which is helpful given no schema provides parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'available server generations (hypervisor types)' with scope 'for CDSS'. This distinguishes it from sibling tools like ncloud_cdss_get_server_spec_list and ncloud_ses_get_server_generations, though it does not explicitly reference alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus other similar list tools (e.g., ncloud_cdss_get_server_spec_list, ncloud_cdss_get_node_products). It is a bare statement without any context or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_server_spec_listARead-only
Get available server specs for CDSS (G3/KVM). softwareProductCode must be a G3 image code — a G2 code from ncloud_cdss_get_os_products is rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| softwareProductCode | Yes | G3 OS image code (from ncloud_cdss_get_cluster_server_images) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is covered. The description adds meaningful behavioral detail by warning that G2 codes are rejected, which helps the agent avoid a known failure mode. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: the first front-loads the operation and scope, the second delivers the critical parameter constraint. There is no filler or redundant restatement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, read-only lookup tool with no output schema, the description covers the essential operational constraint. It does not describe the response shape, but the low complexity and readOnlyHint make the definition sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents softwareProductCode as a G3 OS image code. The description adds value by explicitly stating that G2 codes from ncloud_cdss_get_os_products are rejected, clarifying a boundary not fully spelled out in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Get available server specs for CDSS (G3/KVM)'. It is specific enough to identify the operation, though it does not explicitly differentiate from sibling tools like ncloud_cdss_get_node_spec or ncloud_ses_get_server_specs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear usage context: softwareProductCode must be a G3 image code, and a G2 code from ncloud_cdss_get_os_products is explicitly rejected. This is actionable guidance, though it does not discuss when to prefer this tool over sibling alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_subnet_listARead-only
Get available subnet list for CDSS cluster creation (G2)
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_cdss_get_vpc_list) | |
| softwareProductCode | Yes | OS type code (from ncloud_cdss_get_os_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'Get' is consistent. The description adds the G2 and cluster-creation scoping, but does not disclose response format, pagination, or any requirements beyond what the schema/annotations offer. This meets the minimum bar but adds little extra behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence communicates purpose, scope, and generation with zero wasted words. It is appropriately sized for a simple read-only list tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with fully documented parameters and readOnly annotation, the description is largely sufficient – 'Get available subnet list' conveys the return. It does not explicitly mention the G3 sibling or when to prefer the other generation, so a small gap remains, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the parameter descriptions already state that vpcNo comes from ncloud_cdss_get_vpc_list and softwareProductCode from ncloud_cdss_get_os_products. The tool description does not add parameter-level meaning, so it holds at baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool returns the available subnet list for CDSS cluster creation and scopes it to G2, distinguishing it from the sibling ncloud_cdss_get_subnet_list_g3. This is a specific verb + resource with an explicit generation qualifier, so an agent can select it without inspecting the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for CDSS cluster creation (G2)' implies when to use it, but the description does not explicitly name ncloud_cdss_get_subnet_list_g3 as the alternative for G3 clusters or provide any when-not guidance. Context is clear but exclusions/alternatives are left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_subnet_list_g3ARead-only
Get available subnet list for CDSS cluster creation (G3/KVM only)
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_cdss_get_vpc_list) | |
| isPrivate | No | true: private subnets only, false: public subnets only | |
| softwareProductCode | Yes | G3 OS image code (see ncloud_cdss_get_cluster_server_images; e.g. SW.VCDSS.OS.LNX64.ROCKY.08.G003) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds the scoping constraint (G3/KVM only) and the purpose (CDSS cluster creation), which is useful context. It doesn't describe return format or pagination, but for a list tool with readOnlyHint, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is concise and front-loaded with the action and resource, followed by the scoping qualifier. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with full schema coverage and readOnlyHint annotation, the description is mostly complete. It could be improved by explicitly naming the sibling tool (ncloud_cdss_get_subnet_list) to disambiguate, but the G3/KVM qualifier partially covers this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds no parameter-level detail beyond what the schema provides. Baseline 3 is appropriate when the schema carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a resource ('available subnet list'), and a clear context ('for CDSS cluster creation (G3/KVM only)'). It distinguishes from the generic ncloud_cdss_get_subnet_list by the G3/KVM qualifier, though it doesn't explicitly name the sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it: during CDSS cluster creation, specifically for G3/KVM. It does not explicitly state when not to use it or mention alternatives like ncloud_cdss_get_subnet_list, but the G3/KVM qualifier provides some routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_get_vpc_listARead-only
Get available VPC list for CDSS cluster creation
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers safety. The description adds the qualifier 'available', implying a filtered list, but doesn't define what 'available' means (e.g., region, subnet availability). It provides some context but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that is concise and free of filler. Every word contributes meaning, with 'available' and 'for CDSS cluster creation' adding value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only lookup, the description is complete enough. It explains what it returns (a list) and why (CDSS cluster creation). Without an output schema, it could specify return fields, but the simplicity of the tool makes this acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, there is nothing to explain. The baseline for 0 params is 4, and the description correctly focuses on purpose rather than parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and resource ('VPC list') with a clear context ('for CDSS cluster creation'). It distinguishes itself from generic VPC tools by targeting CDSS, though it doesn't explicitly differentiate from siblings like ncloud_list_vpcs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for CDSS cluster creation' provides clear usage context: use this tool when preparing to create a CDSS cluster. However, it does not mention alternatives or when not to use it, though the CDSS-specific name helps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_list_clustersARead-only
List Cloud Data Streaming Service (Kafka) clusters with optional filtering. The cmakPort and cmakVersion fields in the response are deprecated by Ncloud (2026-09-17, CMAK is being phased out) and may be absent or stale.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| vpcName | No | VPC name filter (exact match) | |
| pageSize | No | Page size (default: 10) | |
| inputText | No | Search keyword (partial match on cluster name) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description does not contradict this. It adds a valuable deprecation warning about cmakPort and cmakVersion fields, which goes beyond the annotation and helps the agent anticipate response inconsistencies. This is strong additional behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: two sentences, with the purpose front-loaded and the deprecation warning as a secondary note. Every word adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with read-only annotation and full schema coverage, the description covers the core purpose and a notable deprecation detail. It does not describe response structure, but since no output schema is provided and the tool is straightforward, this is acceptable. The deprecation warning adds critical context that an agent would otherwise miss.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters have schema descriptions (100% coverage), so the baseline is 3. The description mentions 'optional filtering' but does not elaborate on individual parameters, adding no extra semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the service (Cloud Data Streaming Service), the resource (Kafka clusters), and the action (list) with optional filtering. It distinguishes from other list_clusters tools (e.g., ncloud_ses_list_clusters, ncloud_serverless_list_clusters) by naming the specific service, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the exact resource type, which implicitly tells the agent when to use this tool over other list_clusters tools. However, it does not explicitly mention alternatives or when not to use it, so it falls short of a 5 but provides clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_list_config_groupsARead-only
List Config Groups for CDSS (Kafka configuration templates) for a given Kafka version
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size (default: 10) | |
| kafkaVersionCode | Yes | Kafka version code (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already declares this is a safe read operation, and 'List' is consistent with that annotation. The description adds useful context that these are Kafka configuration templates scoped by Kafka version, but it doesn't disclose additional behavioral details like default pagination or response shape. With annotations covering the safety profile, this is adequate but not exceptional.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with no filler. The parenthetical 'Kafka configuration templates' immediately disambiguates the resource type without bloating the description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple read-only list tool with one required parameter and two standard pagination parameters, all already documented in the schema. The description plus annotations provide enough for an agent to select and invoke it correctly; an output schema would be a nice addition but isn't necessary for a basic list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with all three parameters documented, including the helpful note that kafkaVersionCode comes from ncloud_cdss_get_kafka_versions. The description itself adds no parameter-level detail, so the baseline of 3 applies since the schema already does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: it lists CDSS config groups, clarifies them as Kafka configuration templates, and scopes them to a Kafka version. This meaningfully differentiates it from nearby tools like ncloud_cdss_get_config_group_detail and ncloud_list_cache_config_groups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states the core usage condition: config groups are listed for a given Kafka version, so the agent knows a version context is required. It does not explicitly name alternatives or say when not to use this tool, but the CDSS/version framing gives enough context for a straightforward list operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_list_nodesARead-only
List all nodes (broker, manager) in a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the read-only nature. The description adds node type context but does not disclose additional behavioral traits like return format or pagination, which are not covered by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately conveys the operation. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one parameter and clear annotations, the description is sufficient. It does not describe the response structure, but that is acceptable given the absence of an output schema and the simple nature of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides a description for serviceGroupInstanceNo ('Cluster instance number'), and the tool description does not add further parameter-specific meaning. With 100% schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (nodes), and the scope (CDSS cluster), and specifies node types (broker, manager). This distinguishes it from sibling tools like list_clusters and get_cluster_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it lists nodes in a CDSS cluster, and the required parameter (serviceGroupInstanceNo) indicates the cluster. It does not explicitly compare against alternatives or state exclusions, but the usage context is direct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_reset_cmak_passwordA
Reset the CMAK access account password for a CDSS cluster. CMAK is being phased out by Ncloud (the CMAK restart API ended 2026-09-17); this operation is still documented but may be discontinued.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number | |
| kafkaManagerUserPassword | Yes | New CMAK password (8-20 chars, letters+numbers+special; excludes ' " ` ₩ / & and spaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. It discloses that this is a password-reset (mutatory) operation that is under a deprecation. It does not document potential side effects, idempotency, permission requirements, or what becomes of the previous password. The description does add the important deprecation context, but it is minimal for a security assessment. It does not contradict anything, but it leaves are too broad to warrant a high score 4.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, with no runtime state. The first sentence and the core action is a strong first sentence. The second sentence provides deprecation context without making it a long. The sentence keeps the description to ~40 words and is clearly front-loaded. Every phrase is informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameter tool with no nested objects and no output schema, the description plus schema contains enough to call it correctly: both parameters are known parameters are required, and the first sentence says
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not materially extend the schema: 'CMAK access account password' already maps to the encrypted `kafkaManagerUserPassword` parameter, and `serviceGroupInstanceNo` remains the cluster instance number—both fully documented in the schema. No additional parameter meaning or purpose is provided above the structured schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Reset the CMAK access account password for a CDSS cluster', which is a clear verb-resource combination. It clearly identifies what is being acted on (a password for a CDSS cluster) and differentiates itself from sibling tools in the same service family such as restart_skafka or change_kafka_config. It does not explicitly name an alternative to compare against, so it lacks the explicit sibling distinction required for a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: the operation is for password resets, but it does not state when to prefer this over any alternative or mention conditions under which it should be avoided. The deprecation note provides cautionary context ('may be discontinued') but stops short of providing clear when/when-not guidance. This falls into 3 = implied usage via the standard.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_restart_all_servicesAIdempotent
Restart all services (Kafka + ZooKeeper + CMAK) in a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds valuable context by listing the affected components (Kafka, ZooKeeper, CMAK), which is not conveyed by the annotations alone. However, it does not disclose operational impact such as potential downtime or whether the restart is all-at-once versus rolling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that conveys the essential information without any filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description provides the core functionality. However, given the presence of sibling tools like ncloud_cdss_rolling_restart and ncloud_cdss_restart_kafka_per_node, some guidance on when to use this full restart versus those alternatives would complete the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% because the single parameter 'serviceGroupInstanceNo' has a description ('Cluster instance number'). The description does not add any additional parameter semantics, but the schema already sufficiently documents this parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Restart'), the scope ('all services'), and the specific components ('Kafka + ZooKeeper + CMAK') in a CDSS cluster. This differentiates it from sibling tools like ncloud_cdss_restart_kafka and ncloud_cdss_restart_cmak, which target individual services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. It does not mention why one would choose this over the rolling restart or per-node restart tools, nor does it state any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_restart_kafkaAIdempotent
Restart Kafka and ZooKeeper services in a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds minimal context by naming Kafka and ZooKeeper, but does not disclose operational details like network impact, downtime, or whether the restart is rolling vs. full. This is acceptable given the annotations, but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundancy. It front-loads the action and resource, communicating the essential behavior efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple restart operation with one parameter and no output schema, the description provides the core purpose clearly. It could have added that this restarts all nodes in the cluster (distinguishing from per_node), but the description is adequate for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter serviceGroupInstanceNo has a clear description ('Cluster instance number'). The tool description does not add any additional meaning to the parameter, matching the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Restart') and the resource ('Kafka and ZooKeeper services in a CDSS cluster'). It distinguishes from sibling tools like restart_kafka_per_node and restart_all_services by specifying the exact services involved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_cdss_restart_kafka_per_node or ncloud_cdss_rolling_restart. The description lacks any 'when to use' or 'instead of' context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_restart_kafka_per_nodeAIdempotent
Restart Kafka on one or more specific nodes in a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| computeInstanceNoList | Yes | Node server instance numbers to restart (from ncloud_cdss_list_nodes) | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds no behavioral context about asynchronous operation, potential downtime, or how to monitor completion—it only restates scope rather than behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with zero filler; action and scope are front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple restart operation with full schema coverage and safety annotations, but lacks guidance on asynchronous operation status checking, effect on cluster availability, and does not explicitly distinguish from ncloud_cdss_restart_all_services.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: computeInstanceNoList is described as node instance numbers from ncloud_cdss_list_nodes, and serviceGroupInstanceNo as cluster instance number. The description adds no additional parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Restart', resource 'Kafka', and scope 'one or more specific nodes in a CDSS cluster'. It clearly differentiates from sibling tools like ncloud_cdss_restart_kafka and ncloud_cdss_rolling_restart by emphasizing per-node targeting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'one or more specific nodes' implies targeted node-level restart, but it does not explicitly name alternatives or state when not to use it. An agent must infer from sibling names that cluster-wide restart operations are separate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_rolling_restartAIdempotent
Perform a rolling restart of all nodes in a CDSS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, providing a safety baseline. The description adds the behavioral scope of 'rolling restart of all nodes' but does not disclose potential service disruption, async execution, or whether the operation requires a maintenance window. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that immediately conveys the operation and scope. It is front-loaded and contains no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple one-parameter operation, but it omits important context such as whether the API call is asynchronous, whether a precheck is recommended, or how to monitor the restart via related status tools. This leaves gaps for an AI agent planning a restart workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter serviceGroupInstanceNo with the description 'Cluster instance number', so schema coverage is 100%. The tool description adds no further parameter-level explanation, leaving the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Perform' and clearly identifies the resource: 'a rolling restart of all nodes in a CDSS cluster'. It distinguishes from sibling tools like ncloud_cdss_restart_all_services and ncloud_cdss_restart_kafka by specifying 'rolling' and 'all nodes'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for rolling restarts but does not explicitly state when to choose this tool over alternatives, nor does it mention exclusions or prerequisites. Sibling tools such as ncloud_cdss_rolling_restart_precheck and ncloud_cdss_rolling_restart_status are not referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_rolling_restart_precheckBIdempotent
Pre-check before performing a rolling restart
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false, so the description carries a lower burden. The phrase 'Pre-check' aligns with these hints but adds no extra behavioral context, such as what the check entails, what it returns, or whether it is a required gate before restart.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of a single, lean sentence that directly states the tool's purpose. There is no fluff, repetition, or unnecessary detail, making it highly efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain what the pre-check result looks like or how to interpret it, but it doesn't. It also lacks mention of preconditions or relationship to the rolling restart flow. For a simple one-parameter tool, it is minimally viable but has clear informational gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for the only parameter, serviceGroupInstanceNo, with a description 'Cluster instance number'. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Pre-check before performing a rolling restart' clearly identifies the tool as a pre-check for a specific operation. It uses a specific verb-resource pairing and distinguishes it from siblings like ncloud_cdss_rolling_restart and ncloud_cdss_rolling_restart_status, though it doesn't detail what exactly is checked.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool vs alternatives. It implies it should be used before a rolling restart but gives no explicit guidance, exclusions, or comparison to related tools like ncloud_cdss_rolling_restart_status or ncloud_cdss_upgrade_precheck.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_rolling_restart_statusAIdempotent
Get the progress status of a rolling restart operation. result.cmakStatus in the response is deprecated by Ncloud (2026-09-17) and may be absent or stale.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this is idempotent and non-destructive. The description adds valuable behavioral context beyond that by warning that result.cmakStatus is deprecated as of 2026-09-17 and may be absent or stale, which helps an agent avoid misreading response data. It does not cover other possible behaviors like polling intervals or empty-result semantics, but the added caveat is meaningful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler: the core purpose is front-loaded, and the deprecation warning is the only additional detail, earning its place by preventing misinterpretation of the response.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only status query with one documented parameter, idempotent annotations, and no output schema, the description is largely sufficient. The deprecation caveat adds important field-level context, though it does not explicitly connect this status tool to its lifecycle siblings (rolling_restart and rolling_restart_precheck) or explain how to interpret an absent cmakStatus.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter, serviceGroupInstanceNo, and the schema already documents it as 'Cluster instance number' with 100% coverage. The description does not add additional meaning, format requirements, or usage context for the parameter, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Get the progress status of a rolling restart operation.' This clearly distinguishes it from related siblings like ncloud_cdss_rolling_restart (initiates) and ncloud_cdss_rolling_restart_precheck (pre-checks), so an agent can identify the tool's role without inferring from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The wording implies this tool is used to poll or inspect the progress of a rolling restart initiated elsewhere, but it never explicitly says 'call after ncloud_cdss_rolling_restart' or 'use instead of ncloud_cdss_get_cluster_status.' Usage context is present by implication, not by direct guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_set_config_group_descriptionAIdempotent
Change a Config Group's description. An empty string clears it.
| Name | Required | Description | Default |
|---|---|---|---|
| description | No | New description (0-255 chars). Omit or pass an empty string to clear it | |
| configGroupNo | Yes | Config group number (from ncloud_cdss_list_config_groups) | |
| kafkaVersionCode | Yes | Kafka version code of the group (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating 'An empty string clears it', which clarifies a key behavioral nuance not present in annotations. Annotations indicate idempotentHint=true and destructiveHint=false, and the description does not contradict these. It could also mention that the operation only affects the description field and not other config settings, but it conveys sufficient behavioral clarity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no redundancy. It front-loads the core action ('Change a Config Group's description') and then covers the special case of clearing. Every word earns its place, making it efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, 2 required, no output schema), the description is quite complete. It covers the main action and the edge case (clearing). However, it does not mention whether the operation is idempotent (though idempotentHint annotation covers this) or what the expected return/response might be, which could be useful but is partially covered by annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by explicitly noting that an empty string clears the description, which reinforces the schema's note about the 'description' parameter. However, it does not provide additional details about 'configGroupNo' or 'kafkaVersionCode' beyond what their schema descriptions already state, such as source or format specifics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Change a Config Group's description. An empty string clears it' clearly states the verb (Change), the resource (Config Group's description), and the specific behavior of clearing. It effectively distinguishes itself from sibling tools like ncloud_cdss_create_config_group and ncloud_cdss_delete_config_group by focusing on the description update operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when updating a config group's description, but it does not explicitly state when to use this tool versus alternatives like ncloud_cdss_get_config_group_detail or ncloud_cdss_create_config_group. There is no mention of prerequisites or conditions when this tool should be preferred over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_upgrade_precheckB
Pre-check whether a CDSS Kafka version upgrade can proceed
| Name | Required | Description | Default |
|---|---|---|---|
| upgradeConfigGroupNo | Yes | Config group number for the target version | |
| serviceGroupInstanceNo | Yes | Cluster instance number | |
| upgradeKafkaVersionCode | Yes | Target Kafka version code (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It says 'pre-check' which suggests a read-only operation, but it doesn't state whether the tool has side effects, what it returns (e.g., a boolean or a list of blockers), or any authentication or prerequisite requirements. For a pre-check tool, the agent needs to know what the result looks like to decide whether to proceed, which is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that clearly states the purpose. It's front-loaded and contains no fluff or redundant information. It earns its place perfectly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should indicate what the pre-check returns or how to interpret the result. It doesn't. It also lacks any mention of when to call this in relation to other CDSS operations, potential error conditions, or how the result should influence subsequent actions. For a pre-check tool, this is a significant gap that leaves the agent guessing about the outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – each parameter has a meaningful description. The tool description adds no additional parameter semantics beyond what's in the schema. Since the schema fully documents the parameters, a baseline of 3 is appropriate; the description doesn't need to repeat them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to pre-check whether a CDSS Kafka version upgrade can proceed. It uses a specific verb ('pre-check') and a specific resource ('CDSS Kafka version upgrade'), which distinguishes it from the related upgrade tool (ncloud_cdss_upgrade_version) and status tool (ncloud_cdss_upgrade_status). However, it doesn't explicitly contrast it with those siblings, so it doesn't fully leverage the sibling context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is a pre-check that should be run before an upgrade, but it doesn't explicitly state when to use it versus the actual upgrade tool or status tool. There's no mention of alternatives or conditions under which this tool should be preferred. The guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_upgrade_statusA
Get the progress status of a version upgrade operation. result.cmakStatus in the response is deprecated by Ncloud (2026-09-17) and may be absent or stale.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. The description discloses a key behavioral trait: 'result.cmakStatus in the response is deprecated by Ncloud (2026-09-17) and may be absent or stale.' This is valuable context that warns the agent not to rely on that field. It also implies the tool is a read-only status check, which is clear from 'Get the progress status.' However, it doesn't disclose other behavioral aspects like whether the operation is asynchronous, whether it requires specific permissions, or what the response structure looks like beyond the deprecated field.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences. The first sentence states the purpose, and the second provides a critical deprecation warning. It's front-loaded with the main purpose. The deprecation note is important and earns its place. However, it could be slightly more structured by explicitly naming the sibling tool for initiating upgrades, but overall it's efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, no output schema, no annotations), the description is mostly complete. It tells the agent what the tool does and warns about a deprecated field. However, it lacks context on how the status is returned (e.g., polling semantics, whether it's a one-shot check or should be polled), and it doesn't mention any relationship to ncloud_cdss_upgrade_version or ncloud_cdss_upgrade_precheck. The deprecation note is helpful but the overall context is minimal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the single parameter 'serviceGroupInstanceNo' as 'Cluster instance number'. The description doesn't add any additional meaning beyond what the schema provides. It doesn't clarify what a 'serviceGroupInstanceNo' is in the context of a version upgrade, nor does it explain how to obtain it. Baseline 3 is appropriate since the schema covers the parameter fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get the progress status of a version upgrade operation.' This is a specific verb ('Get') and resource ('progress status of a version upgrade operation'). It distinguishes from siblings like ncloud_cdss_upgrade_version (which initiates the upgrade) and ncloud_cdss_upgrade_precheck (which checks preconditions). However, it doesn't explicitly name these siblings, so it doesn't fully differentiate itself from other status-related tools like ncloud_cdss_rolling_restart_status or ncloud_ses_get_upgrade_progress.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: it's for checking the status of a version upgrade operation, which would be used after initiating an upgrade via ncloud_cdss_upgrade_version. However, it doesn't explicitly state when to use this tool versus alternatives, nor does it mention any prerequisites (e.g., must have an upgrade in progress). The deprecation note about result.cmakStatus provides some guidance on what to expect, but not on when to choose this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cdss_upgrade_versionA
Upgrade the Kafka version of a CDSS cluster. Run ncloud_cdss_upgrade_precheck first.
| Name | Required | Description | Default |
|---|---|---|---|
| upgradeConfigGroupNo | Yes | Config group number for the target version (from ncloud_cdss_list_config_groups) | |
| serviceGroupInstanceNo | Yes | Cluster instance number | |
| upgradeKafkaVersionCode | Yes | Target Kafka version code (from ncloud_cdss_get_kafka_versions) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations and no output schema, the description carries the full burden of behavioral disclosure. It only says 'upgrade' without mentioning potential downtime, service impact, irreversibility, or how to monitor progress (e.g., ncloud_cdss_upgrade_status). The precheck hint is the only behavioral context, which is insufficient for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with no filler. The main action and the critical prerequisite are both front-loaded. Every word contributes to the agent's understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description gives the essential action and prerequisite, and the schema documents all three required parameters. However, it omits expected outcomes, side effects, and how to follow up on the upgrade (e.g., via ncloud_cdss_upgrade_status). For a state-changing operation with no output schema and empty annotations, this is a noticeable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter's description already names its source (e.g., 'from ncloud_cdss_list_config_groups'). The tool description adds no extra parameter-level meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Upgrade the Kafka version') and the specific resource ('a CDSS cluster'). It is distinct from sibling tools like ncloud_cdss_upgrade_precheck and ncloud_cdss_upgrade_status, and names the precheck tool explicitly, making the tool's role unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit prerequisite: 'Run ncloud_cdss_upgrade_precheck first.' This tells an agent the required preceding step. It does not discuss when not to use the tool or alternatives, but the context that a precheck must run first is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_block_storageAIdempotent
Change block storage instance (resize volume and/or update name/description). Supports both Gen2 (XEN) and Gen3 (KVM). For attached storage, server must be stopped to resize.
| Name | Required | Description | Default |
|---|---|---|---|
| blockStorageName | No | New block storage name | |
| blockStorageSize | Yes | New block storage size in GB (XEN: 10~2000, KVM: 10~16380, 10GB increments, must be >= current size) | |
| blockStorageInstanceNo | Yes | Block storage instance number to change | |
| blockStorageDescription | No | New block storage description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (idempotentHint=true, destructiveHint=false) are supplemented with useful behavioral context: generation support and the prerequisite that attached storage must have the server stopped to resize. No contradiction with annotations, but no mention of reversibility or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose first, then platform support, then a critical prerequisite. No redundant wording; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With full schema coverage and annotations, the description adds platform support and a key prerequisite. It lacks explicit guidance on when to choose this over ncloud_change_block_storage_size, and does not describe return values (though no output schema exists), but overall it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with detailed parameter descriptions (e.g., blockStorageSize range, increment, and minimum). The description's 'resize volume and/or update name/description' maps to parameters but adds no additional parameter-level semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific verb and resource: 'Change block storage instance' with parenthetical details 'resize volume and/or update name/description'. This distinguishes it from siblings like ncloud_change_block_storage_size and ncloud_set_block_storage_protection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear operational context: supports Gen2 (XEN) and Gen3 (KVM), and requires server to be stopped for attached storage resize. However, it does not explicitly mention alternatives or exclusions, such as using ncloud_change_block_storage_size for size-only changes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_block_storage_sizeAIdempotent
Resize a Gen2 (XEN) block storage volume through the dedicated changeBlockStorageVolumeSize endpoint (increase only: 10-2000 GB in 10 GB steps, must be larger than the current size). NOT supported for KVM (Gen3) volumes — use ncloud_change_block_storage for those. An attached volume can only be resized while its server is stopped.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (defaults to the client region) | |
| blockStorageSize | Yes | New block storage size in GB (XEN: 10-2000, 10 GB increments, greater than the current size) | |
| blockStorageInstanceNo | Yes | Block storage instance number to resize |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, and the description adds real operational context beyond that: increase-only semantics, the reason a resize may be blocked (attached volume + running server). It stops short of describing async/return behavior, but the added constraints and precondition are substantive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences that are front-loaded with the core action, then the exclusion, then the precondition. Every clause carries distinct, decision-relevant information with no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with complete parameter coverage and no output schema, the definition covers scope, constraints, and preconditions well. It does not mention whether the operation is asynchronous or what it returns, which is a minor gap but not needed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already documents the size range, 10 GB increments, and 'greater than current size', so the description largely restates structured data. No additional parameter meaning (e.g., regionCode behavior) is added, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Resize) and resource (Gen2/XEN block storage volume) and names the dedicated endpoint. It explicitly distinguishes itself from the sibling ncloud_change_block_storage by limiting scope to XEN volumes, so an agent can route correctly without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit when-to-use/when-not guidance: names the alternative tool (ncloud_change_block_storage) for KVM/Gen3 volumes and states the operational precondition that an attached volume must have its server stopped. Both the exclusion and the alternative are spelled out, leaving nothing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_fabric_cluster_serversBIdempotent
Change server instances assigned to a fabric cluster
| Name | Required | Description | Default |
|---|---|---|---|
| fabricClusterNo | Yes | Fabric cluster number | |
| serverInstanceNoList | Yes | List of server instance numbers to assign to the fabric cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, which cover the core safety profile. The description adds no further behavioral context, such as whether the operation replaces the entire server list, performs an incremental update, or has side effects. It essentially restates the tool's purpose without elaborating on consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is appropriately front-loaded and easy to scan. However, it could have used a second sentence to add usage or behavior context without losing its tight structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and only minimal annotations, the description is incomplete. It does not explain whether the server list is replaced wholesale or merged, nor does it describe the return value or any constraints. This leaves the agent uncertain about critical operational semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, so the schema carries the semantic load. The description adds no additional parameter information. Baseline of 3 is appropriate given the strong schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Change') and the resource ('server instances assigned to a fabric cluster'). It is specific enough to distinguish from sibling tools like change_fabric_cluster_name and change_fabric_cluster_description, which target different aspects of a fabric cluster.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. While the tool name and sibling context imply it is the appropriate tool for changing server assignments, the description itself lacks any usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_lb_configAIdempotent
Change load balancer instance configuration (idle timeout, throughput type)
| Name | Required | Description | Default |
|---|---|---|---|
| idleTimeout | No | Idle timeout in seconds (1-3600, default: 60). Cannot be set for NETWORK type | |
| throughputTypeCode | No | Throughput type code (SMALL, MEDIUM, LARGE, XLARGE for ALB/NProxy; DYNAMIC for NLB) | |
| loadBalancerInstanceNo | Yes | Load balancer instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description is not required to repeat safety. It adds the configurable fields but does not disclose behavioral nuances like the limitation that idleTimeout cannot be set for NETWORK type. That constraint exists in the schema, but the description itself adds no extra behavioral context beyond what annotations and schema provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the action and key parameters with no fluff. It is appropriately concise for a straightforward configuration tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool shape, full schema coverage, and helpful annotations (idempotent, non-destructive), the description is largely complete. The only minor gap is that it doesn't mention the idleTimeout type restriction, but that is covered in the schema. Overall sufficient for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters already have meaningful descriptions. The tool description only names the parameters ('idle timeout, throughput type') without adding further semantic detail. This matches the baseline for full schema coverage; no additional value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') and names the exact resource ('load balancer instance configuration') plus the configurable fields ('idle timeout, throughput type'). This clearly distinguishes it from sibling tools like ncloud_change_lb_listener_config, which targets listeners rather than the instance-level config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (changing LB instance-level settings) but does not explicitly state when NOT to use it or mention alternatives. For example, it doesn't say 'for listener settings, use change_lb_listener_config.' The context is understandable but lacks explicit differentiation and exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_lb_listener_configAIdempotent
Change load balancer listener configuration (protocol, port, SSL, TLS settings)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | Listener port number (1-65534) | |
| useHttp2 | No | Whether to use HTTP/2 protocol (only for HTTPS listener) | |
| cipherSuiteList | No | List of cipher suites. Only for HTTPS/TLS | |
| protocolTypeCode | Yes | Listener protocol type (HTTP, HTTPS, TCP, UDP, TLS) | |
| sslCertificateNo | No | SSL certificate number (required for HTTPS/TLS) | |
| tlsMinVersionTypeCode | No | TLS minimum version (TLSV10, TLSV11, TLSV12). Only for HTTPS/TLS | |
| loadBalancerListenerNo | Yes | Load balancer listener number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description merely restates the tool's scope (protocol, port, SSL, TLS) without disclosing behavioral traits beyond annotations. Annotations already declare idempotentHint=true and destructiveHint=false; the description adds no further context about impacts, prerequisites, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence that front-loads the action and resource. No filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given strong schema descriptions and annotations (idempotent, non-destructive), the description is adequate for a simple configuration change. No output schema exists, so return-value documentation isn't needed; conditional requirements are already captured in parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions, so baseline is 3. The description's mention of protocol/port/SSL/TLS merely echoes schema fields and adds no semantic value beyond what's already documented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool changes load balancer listener configuration, listing specific fields (protocol, port, SSL, TLS settings). This distinguishes it from sibling tools like ncloud_change_lb_config and ncloud_change_target_group_config, which target different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternative guidance is provided. The name and description imply it's for modifying an existing listener, but it doesn't mention cases where create_lb_listener or change_lb_config would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mongodb_config_countAIdempotent
Change the number of Config servers in a MongoDB Sharded Cluster instance
| Name | Required | Description | Default |
|---|---|---|---|
| configServerCount | Yes | Number of config servers | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds minimal behavioral context beyond the action itself, such as no mention of side effects, long-running operations, or constraints. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence of 10 words, front-loaded with the verb 'Change'. It is concise and effective with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with two fully described parameters and safety annotations, but the description omits any constraints on configServerCount (e.g., allowed values, minimums) or operational effects (e.g., whether the change causes downtime). While annotations help, the description alone is not fully complete for an agent to anticipate all implications.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters (configServerCount and cloudMongoDbInstanceNo). The description adds no parameter details beyond baseline, so scoring is at the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (change), the resource (number of Config servers), and the scope (MongoDB Sharded Cluster instance). It is specific and distinguishable from sibling tools like ncloud_change_mongodb_secondary_count and ncloud_change_mongodb_mongos_count by focusing on Config servers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites. It simply states the function without any contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mongodb_mongos_countAIdempotent
Change the number of Mongos servers in a MongoDB Sharded Cluster instance
| Name | Required | Description | Default |
|---|---|---|---|
| mongosServerCount | Yes | Number of mongos servers (2-5) | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (idempotentHint=true, destructiveHint=false) already establish the safety profile. The description adds the specific resource being changed but no additional behavioral context such as downtime, rolling nature, or constraints beyond the schema. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence that fully communicates the tool's purpose. There is no redundant or filler content; every word is informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter operation with complete schema descriptions and robust annotations, the description is sufficient. It could mention the range (2-5) for mongosServerCount, but that is already captured in the schema, so no critical information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters clearly documented in the input schema. The description adds no extra parameter-level meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') and resource ('number of Mongos servers in a MongoDB Sharded Cluster instance'). It clearly distinguishes from sibling tools that change other counts (secondary, config, shard) by naming the exact component being modified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives like change_mongodb_secondary_count or change_mongodb_shard_count. The intended use is only implied by the tool name and description, with no when-not or alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mongodb_secondary_countBIdempotent
Change the number of Secondary (Member/Arbiter) servers in a MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| memberServerCount | Yes | Number of member servers (2-7) | |
| arbiterProductCode | No | Arbiter server product code | |
| arbiterServerCount | Yes | Number of arbiter servers (0-1) | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering safety profile. The description adds no extra behavioral context such as whether the change causes downtime, how existing data is affected, or whether the operation is asynchronous. It simply restates the action without disclosing additional traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly conveys the tool's purpose. It contains no filler or redundant information, earning full marks for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation tool with complete schema descriptions and good annotations, the description is adequate but not complete. It lacks information about return values or operational impact (e.g., whether the instance goes through a rolling change), though such details are not strictly necessary given the straightforward action and schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all four parameters documented (e.g., memberServerCount 'Number of member servers (2-7)', arbiterServerCount 'Number of arbiter servers (0-1)'). The description adds no additional meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') and resource ('number of Secondary (Member/Arbiter) servers in a MongoDB instance'), clearly conveying what the tool does. It distinguishes itself from sibling tools like 'change_mongodb_mongos_count' and 'change_mongodb_shard_count' by focusing on secondary servers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any preconditions or use cases (e.g., scaling MongoDB secondaries). It is not misleading, but lacks any explicit context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mongodb_shard_countAIdempotent
Change the number of shards in a MongoDB Sharded Cluster instance
| Name | Required | Description | Default |
|---|---|---|---|
| shardCount | Yes | Number of shards | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is known. The description adds minimal behavioral context beyond specifying the target resource (Sharded Cluster), but discloses no operational details such as whether the change is asynchronous, requires downtime, or has side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately states the action and target, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity operation with fully documented parameters and safety annotations, the description is largely sufficient. It clearly states the resource type, but omits any mention of result behavior or preconditions, which would push it to a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (both parameters have descriptions), so the schema already explains the parameters. The tool description does not add any additional meaning or format details for the parameters, keeping it at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Change' and clearly identifies the resource ('number of shards in a MongoDB Sharded Cluster instance'), which distinguishes it from sibling tools that change other MongoDB counts (e.g., ncloud_change_mongodb_secondary_count, ncloud_change_mongodb_mongos_count).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or conditions. It only states what the tool does, leaving usage context unstated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mongodb_usersAIdempotent
Change user information (password) in a Cloud DB for MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbUserList | Yes | List of users to change | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as idempotent and non-destructive. The description adds that it changes password within a MongoDB DB instance, but does not disclose behavioral details such as whether users must already exist, password format constraints, or impact on active connections. It provides minimal additional context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb and target, with no unnecessary words or repetition of schema fields. It gets straight to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and parameters are fully described, but the description lacks important context for a mutation: no mention that it applies to existing users, no password constraints, and no indication of return value or async behavior (no output schema). It is adequate for basic invocation but leaves some practical questions unanswered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: both parameters have clear descriptions (instance number, list of users with name and new password). The description restates 'password' but adds no extra semantic detail beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation (change), target resource (user information/password), and scope (Cloud DB for MongoDB instance). The verb 'change' distinguishes it from sibling tools like ncloud_add_mongodb_users and ncloud_delete_mongodb_users, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It does not mention that it updates existing users, distinguish it from add/delete operations, or note any prerequisites. The agent must infer usage from tool naming alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mysql_specBIdempotent
Change the server spec (CPU/Memory) of a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| isRolling | No | Rolling upgrade (default: false). true: sequential upgrade with minimal downtime (G3 only). false: all servers stop simultaneously. | |
| regionCode | No | Region code (default: first region) | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number (getCloudMysqlInstanceList) | |
| cloudMysqlProductCode | Yes | New MySQL server product (spec) code (getCloudMysqlProductList) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is limited to the change operation and does not disclose behavioral details such as downtime, rolling upgrade behavior, permission requirements, or effects. Annotations already declare idempotentHint=true and destructiveHint=false, but the description adds no additional behavioral context beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence that front-loads the verb and resource, with no unnecessary words. It effectively communicates the core purpose without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the bare description, the tool definition benefits from complete parameter descriptions, annotations declaring idempotent and non-destructive behavior, and a clear purpose. It lacks an output schema and does not describe response format, but that is not required given the rich schema and annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all four parameters (100% coverage), including details about defaults and rolling upgrade behavior. The tool description itself adds no parameter-level information, so it does not go beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool changes the CPU/Memory specification of a Cloud DB for MySQL instance, using a specific verb ('Change') and resource ('server spec of Cloud DB for MySQL'). It distinguishes itself from sibling tools like ncloud_change_server_spec (general servers) and ncloud_ses_change_node_spec by specifying MySQL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as ncloud_upgrade_mysql_version or ncloud_change_mysql_users. It does not mention prerequisites, such as requiring an existing instance, or exclusions, like when a different MySQL modification tool should be used. Parameter hints exist but do not constitute usage guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_mysql_usersAIdempotent
Change DB user information (authority, password, hostIp) for a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (default: first region) | |
| cloudMysqlUserList | Yes | List of users to modify | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, matching the non-destructive modify behavior described. The description adds no extra behavioral context beyond the annotations, such as side effects or permission requirements, but does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the purpose. There is no redundant or filler information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the description is brief, it is sufficient given the rich schema and annotations. The schema covers all parameter details, and annotations clarify idempotency and non-destructive behavior. No output schema exists, so return values need not be explained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with detailed descriptions for all parameters including password rules, authority enum meanings, and hostIp formats. The tool description itself adds little beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Change') and the resource ('DB user information ... for a Cloud DB for MySQL instance'). It names the specific fields (authority, password, hostIp) and distinguishes itself from sibling tools like add/delete/list MySQL users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_add_mysql_users or ncloud_delete_mysql_users. It does not mention prerequisites or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_nas_snapshot_configAIdempotent
Change the snapshot configuration for a NAS volume (enable/disable auto snapshot, set schedule)
| Name | Required | Description | Default |
|---|---|---|---|
| snapshotTime | No | Snapshot time in HH format (00~23, KST). Required when enabling snapshots. | |
| nasVolumeInstanceNo | Yes | NAS volume instance number | |
| isSnapshotConfiguration | Yes | Whether to enable (true) or disable (false) automatic snapshots | |
| snapshotFrequencyTypeCode | No | Snapshot frequency type code (e.g. DAILY, WEEKLY). Required when enabling snapshots. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the specific config operations (enable/disable, schedule) but does not disclose additional behavioral details such as whether existing snapshots are affected or if there are prerequisites. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly-written sentence that front-loads the action and resource. It includes parenthetical examples of what 'change config' entails, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, 2 required, no output schema, and rich annotations, the description covers the essential purpose and operation adequately. It could optionally mention that snapshotTime and snapshotFrequencyTypeCode are required when enabling, but the schema already states this, so the description is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are already well-documented in the schema. The description briefly maps to the key params (enable/disable to isSnapshotConfiguration, schedule to snapshotTime and snapshotFrequencyTypeCode) but does not add syntax or format details beyond the schema. Baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') with a clear resource ('snapshot configuration for a NAS volume') and lists concrete actions (enable/disable auto snapshot, set schedule). This clearly distinguishes it from sibling tools like ncloud_create_nas_snapshot or ncloud_get_nas_snapshot_config_history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when modifying snapshot configuration) but does not explicitly mention alternatives or conditions like 'use this instead of creating a snapshot' or 'do not use when snapshots are disabled'. Usage context is clear but not explicitly differentiated from siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_nas_volume_sizeAIdempotent
Change the size of a NAS volume instance
| Name | Required | Description | Default |
|---|---|---|---|
| volumeSize | Yes | New volume size in GB (500~10000, in 100GB increments) | |
| nasVolumeInstanceNo | Yes | NAS volume instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false, which cover the safety profile. The description adds no further behavioral context (e.g., whether the operation is online, requires stopping the volume, or has billing implications), but it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence delivers the core purpose without wasted words. It is appropriately concise for a simple two-parameter operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only two parameters, full schema coverage, and non-destructive/idempotent annotations, the description covers the basics. However, it lacks usage context and any note about operational behavior or expected response, making it adequate but not complete for an agent unfamiliar with NAS resizing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both parameters are described with useful details (volumeSize ranges 500-10000 GB in 100GB increments, nasVolumeInstanceNo identifies the volume). The description adds no meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') and resource ('size of a NAS volume instance'), clearly distinguishing this tool from NAS siblings that create, delete, restore, or configure access control. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states only the action and target, with no guidance about when to use this tool versus alternatives (e.g., creating a new volume, setting access control, or restoring from snapshot). No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_postgresql_usersBIdempotent
Change user information (password) for a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlUserList | Yes | List of users to modify | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description simply restates the operation without adding behavioral context beyond the annotations. Annotations already declare idempotentHint and destructiveHint, but the description adds no practical details such as whether changing a password affects active connections, requires admin rights, or fails for nonexistent users.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It efficiently communicates the core purpose without padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with annotations and a complete schema, the description is minimally viable but leaves gaps. It doesn't mention that this tool only modifies existing users or that the instance number can be obtained via listing tools, so an agent may not have full operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both cloudPostgresqlInstanceNo and cloudPostgresqlUserList clearly described. The description's phrase 'user information (password)' aligns with the password field but adds negligible extra meaning, matching the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Change') and the resource ('user information (password) for a Cloud DB for PostgreSQL instance'), distinguishing it from sibling tools like ncloud_add_postgresql_users or ncloud_delete_postgresql_users. However, it doesn't explicitly state that it modifies existing users only, leaving slight ambiguity about scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. For example, it doesn't mention that adding new users should use ncloud_add_postgresql_users or that listing existing users is available via ncloud_list_postgresql_users, so the agent gets no decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_server_specAIdempotent
Change the server spec (product code) of a stopped server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to change spec | |
| serverProductCode | Yes | New server product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds the precondition that the server must be stopped, which is useful context, but it doesn't detail side effects like restart requirements or response behavior, so a moderate score is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that includes the action, object, and key condition without any fluff. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation tool with annotations, the description is mostly complete: it states the operation, the precondition, and is supported by schema and annotations. It stops short of explaining what happens after the change (e.g., whether the server needs to be restarted), but given the simplicity and annotations, it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters (serverInstanceNo and serverProductCode), covering 100% of the schema. The description clarifies that 'product code' refers to the server spec, slightly adding meaning, but the schema descriptions are sufficient, so baseline 3 is warranted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Change'), the target ('server spec'), and an important precondition ('stopped server instance'), making it distinct from sibling tools that list specs or manage servers. The parenthetical '(product code)' adds technical precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies that the server must be stopped, providing a clear usage context. However, it doesn't explicitly mention alternatives or when not to use it (e.g., for running servers), so there's room for more explicit exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_target_group_configAIdempotent
Change target group configuration (algorithm, sticky session, proxy protocol)
| Name | Required | Description | Default |
|---|---|---|---|
| targetGroupNo | Yes | Target group number | |
| useProxyProtocol | No | Whether to use proxy protocol (true/false). Available for PROXY_TCP protocol only | |
| useStickySession | No | Whether to enable per-session access (true/false). Available for TCP, UDP, HTTP, HTTPS protocols | |
| algorithmTypeCode | No | Load balancing algorithm type code (RR, SIPHS, LC, MH). HTTP/HTTPS/PROXY_TCP: RR|SIPHS|LC, TCP/UDP: RR|MH |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the operation as idempotent and non-destructive, and the description does not contradict this. However, the description adds no extra behavioral context beyond listing the configurable parameters, which are already in the schema. It does not disclose immediate effects, protocol constraints, or potential impact on traffic.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly states the action and resource, with a parenthetical list of settings. Every word earns its place; there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple configuration change tool given the rich schema and safety annotations, but it is minimal. It does not mention return values, whether changes apply immediately, or any usage caveats. For a mutating operation without an output schema, slightly more context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all four parameters well described. The description lists three configurable aspects, adding a high-level summary but no new detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: changing target group configuration, specifically algorithm, sticky session, and proxy protocol. This is specific and distinguishes it from sibling tools like health check or description updates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites, related tools, or specify that it is for modifying these particular settings while other tools handle health checks or descriptions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_change_target_group_healthAIdempotent
Change target group health check configuration
| Name | Required | Description | Default |
|---|---|---|---|
| targetGroupNo | Yes | Target group number | |
| healthCheckPort | No | Health check port number (1-65534, default: 80) | |
| healthCheckCycle | No | Health check cycle in seconds (5-300) | |
| healthCheckUrlPath | No | Health check URL path (for HTTP/HTTPS, starts with /) | |
| healthCheckUpThreshold | No | Healthy threshold count (2-10) | |
| healthCheckDownThreshold | No | Unhealthy threshold count (2-10) | |
| healthCheckHttpMethodTypeCode | No | HTTP method type for health check (HEAD, GET). Available if health check protocol is HTTP or HTTPS |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotentHint true and destructiveHint false, covering the safety profile. The description adds no additional behavioral context beyond rephrasing the tool name, but it does not contradict the annotations. It could have mentioned immediate application or side effects, but annotations carry most of the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that is clear and free of unnecessary words. It fully and accurately conveys the tool's purpose without padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema and annotations, the description is minimally adequate but lacks context on prerequisites, whether at least one health check parameter must be provided, or the impact of the change. Without this, an agent might invoke it incorrectly (e.g., with no parameters other than targetGroupNo).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptive documentation for all parameters (100% coverage). The tool description itself adds no parameter-level meaning beyond what the schema already contains, so the schema carries the semantic weight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description precisely states that it changes target group health check configuration, using a specific verb and resource. It clearly distinguishes this from sibling tools like ncloud_change_target_group_config, which likely modifies broader target group settings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not explain when to use this tool versus alternatives like ncloud_change_target_group_config or ncloud_set_target_group_description, nor any prerequisites or conditions for invoking it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_create_eab_credentialA
Create an ACME EAB credential so an ACME client can obtain certificates from Certificate Manager (Certificate Manager 2.0). NPO_01 (OV) requires organizationNo. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| alias | Yes | ACME account alias | |
| validityDays | Yes | Certificate validity in days | |
| organizationNo | No | Organization number — required for NPO_01 | |
| validationMode | Yes | Validation mode: PRE (pre-validated domain) or DNS01 | |
| certificateTypeCode | Yes | Certificate type: NPD_01 (DV) or NPO_01 (OV) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description must carry the behavioral load and does: it discloses the auth requirement (main-account API key) and the concrete failure mode (Sub Account keys → HTTP 403), which is exactly the kind of context an agent cannot get from the schema. It stops at 4 because it never describes what the created credential returns or whether creation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, purpose front-loaded, then constraints in descending importance. Well structured, though the trailing provenance ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is slightly verbose for the value it adds.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and only a destructiveHint annotation, the description covers the operation, its zone/auth constraints, and the primary failure mode. The remaining gap is the return payload (key identifier/secret), which an agent creating an EAB credential would reasonably want described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds a cross-field dependency not present in the schema: NPO_01 (OV) requires organizationNo. That is genuine semantic value linking certificateTypeCode to a conditionally required parameter, lifting it above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Create') plus precise resource ('an ACME EAB credential') and an explicit purpose clause ('so an ACME client can obtain certificates'), scoped to Certificate Manager 2.0. The verb cleanly separates it from the sibling ncloud_cm2_list_eab_credentials and ncloud_cm2_deactivate_eab_credential without needing to open any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives real preconditions: 'Public zone only' acts as an implicit exclusion, and 'Requires a main-account API key' tells the agent which credential to use. It does not explicitly name the sibling tools or state when to prefer list/deactivate over create, so it stops short of full when/when-not/alternatives guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_deactivate_eab_credentialADestructive
⚠️ Destructive: Deactivate an ACME EAB credential; ACME clients using it stop working (Certificate Manager 2.0). Set confirm=true to execute. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| accountId | Yes | ACME account ID (from ncloud_cm2_list_eab_credentials) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry destructiveHint=true, but the description discloses far more: the downstream impact on ACME clients, the confirm gate, the public-zone restriction, and an auth failure mode (Sub Account keys rejected with HTTP 403). This is exactly the kind of behavioral context an agent needs before invoking a destructive tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but front-loaded: the destructive warning and effect lead, followed by execution, scope, and auth constraints. The trailing provenance parenthetical ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is somewhat verbose for an agent but adds trust value rather than fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive two-parameter tool with no output schema, the description covers everything needed to call it correctly: effect, confirmation requirement, zone scope, and credential requirements. Nothing critical is left for the agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (confirm, accountId) are already documented in the schema. The description's 'Set confirm=true to execute' only restates the schema's confirm semantics and adds no new meaning, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Deactivate') and resource ('ACME EAB credential') plus the concrete consequence (ACME clients stop working). This distinguishes it cleanly from siblings like ncloud_cm2_create_eab_credential and ncloud_cm2_list_eab_credentials without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear conditions: set confirm=true to execute, public-zone only, and requires a main-account API key. It does not explicitly name an alternative or say when not to use it, but the scope and permission constraints strongly imply the valid context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_delete_domainADestructiveIdempotent
⚠️ Destructive: Delete a registered domain from Certificate Manager (Certificate Manager 2.0). Set confirm=true to execute. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| dmnId | Yes | Domain ID (from ncloud_cm2_list_domains) | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint/idempotentHint annotations, the description discloses the confirmation gate, the public-zone-only limitation, and a non-obvious auth requirement (main-account API key, HTTP 403 for Sub Account keys, verification note). These are exactly the operational facts annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the destructive warning, then confirmation, scope, and auth constraints in order of importance. The trailing verification anecdote ('verified 2026-10-02 with NCP_ADMINISTRATOR') is useful for trust but is the one element that could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameter-light destructive tool with no output schema, the description covers everything an agent needs: what is destroyed, the confirmation gate, the scope limit, and the credential requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both dmnId and confirm are already documented in the schema. The description restates the confirm=true requirement but adds no format or sourcing detail beyond it, matching the baseline 3 for schema-covered parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ('Delete a registered domain') scoped to a named product (Certificate Manager 2.0), which cleanly separates it from siblings like ncloud_cm2_list_domains and ncloud_cm2_register_domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a concrete execution precondition ('Set confirm=true to execute') and a scoping constraint ('Public zone only'), which tells the agent when the call is valid. It does not, however, name an alternative operation for other cases (e.g. deactivation), so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_download_certificateARead-only
Download a certificate as a file (zip of PEM files) (Certificate Manager 2.0). Pass savePath to write the file to disk; otherwise it is returned inline as base64 when it is 256 KB or smaller. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Export format (PEM only) | PEM |
| savePath | No | Local file path to save the downloaded file to (recommended) | |
| certificateNo | Yes | Certificate number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true; the description adds substantial context beyond that — the returned artifact is a zip of PEM files, inline base64 applies only at or below 256 KB, only public-zone certificates qualify, and Sub Account keys are rejected with HTTP 403. That auth and failure-mode disclosure is exactly what an agent needs, and it is consistent with the read-only annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Sizing is appropriate and the output-shape decision is front-loaded after a one-clause purpose statement. The trailing verification provenance ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is heavier than most agents need, though it does support trustworthiness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden itself and does so: artifact format, dual delivery modes, size threshold, zone restriction, and credential requirements are all covered. Nothing an agent needs to invoke this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds meaning the schema lacks: savePath is not just a path but a switch that changes the response shape (file on disk vs inline base64 payload). The certificateNo and type parameters are still left entirely to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (download) and resource (certificate) and immediately pins the output format — a zip of PEM files from Certificate Manager 2.0. An agent can distinguish this from sibling certificate tools like ncloud_cm2_get_certificate_chain or ncloud_cm2_list_certificates without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear conditional guidance: pass savePath to write to disk, otherwise the content comes back inline as base64 (with the 256 KB size cap stated). It also scopes applicability (public zone only, main-account key required). It does not name a sibling alternative when download is the wrong choice, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_extend_subscriptionA
Extend the subscription period of an Advanced certificate order by 1, 2 or 3 years (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| orderId | Yes | Order ID to extend | |
| subscriptionPeriod | Yes | Extension period |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the HTTP 403 failure mode with Sub Account keys and the public-zone restriction. It does not state whether the extension is reversible, billable, or what happens on failure, so it is strong but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Core purpose is front-loaded in the first sentence, followed by scope and auth caveats. The provenance tail ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is somewhat verbose, but the overall structure is efficient and readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter, no-annotation, no-output-schema mutation tool, the description supplies the critical missing context: credential requirements and zone restriction. Only the mutation's effects (reversibility, billing, post-extension state) are unaddressed, which is a minor residual gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the enum values and orderId are already fully documented. The description's '1, 2 or 3 years' merely restates the subscriptionPeriod enum without adding format or constraint detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb and resource — extend the subscription period of an Advanced certificate order — and scopes it to Certificate Manager 2.0. This clearly separates it from CM2 siblings like ncloud_cm2_reissue_certificate or ncloud_cm2_set_renewal_status, which do different things to a certificate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete applicability conditions: 'Public zone only' and the main-account key requirement, which function as when-to-use/when-not signals. It does not, however, name or contrast against a sibling (e.g. renewal-status vs. extension), so routing among CM2 certificate tools is still partly left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_get_certificate_chainARead-only
Get a certificate in PEM form together with its chain (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| certificateNo | Yes | Certificate number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint already covers the safety profile, yet the description still adds substantial behavior: the output format (PEM plus chain), the zone restriction, and a concrete auth failure mode with an HTTP status. This is exactly the kind of context annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with what is returned before the constraints. The verification parenthetical ('confirmed by Ncloud support; verified 2026-10-02') is slightly verbose but justifies a non-obvious auth claim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only getter with no output schema, the description covers what comes back (PEM + chain) and the conditions required to call it successfully. Nothing material is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'certificateNo' is fully documented in the schema (100% coverage) and the description adds nothing about its format or sourcing. Baseline 3 applies when the schema carries the parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('get a certificate ... together with its chain') and adds a concrete scoping qualifier ('PEM form', 'Public zone only'), which helps separate it from generic certificate lookups. It never names an alternative sibling such as ncloud_cm2_download_certificate or ncloud_pca_get_ca_chain, so an agent must still infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives real preconditions: public zone only, and a main-account API key is required because Sub Account keys get HTTP 403. That is clear 'when this will work' guidance, though it offers no explicit alternative tool to use when the precondition fails.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_get_dcv_statusARead-only
Get the domain-control-validation (DCV) status and the DNS record to set for a requested SSL certificate (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| certificateNo | Yes | Certificate number | |
| domainAddress | Yes | Domain (FQDN) to validate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as a safe read (readOnlyHint=true), and the description adds genuinely useful behavioral context beyond them: it requires a main-account API key because Certificate Manager 2.0 rejects Sub Account keys with HTTP 403. That auth caveat is exactly the kind of non-obvious trait worth disclosing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core action and scoping constraint, but the trailing parenthetical provenance ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is more verbose than the agent strictly needs, slightly diluting an otherwise tight definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with full parameter coverage and a safety annotation, the description is essentially complete: it covers the operation, the zone constraint, the auth requirement, and what is returned (the DNS record). Without an output schema it could still say more about DCV status values, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (certificateNo, domainAddress) are fully documented in structured data. The description hints at the certificate-domain relationship ('for a requested SSL certificate') but adds no syntax, format, or validation detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (domain-control-validation status), plus the adjacent deliverable (the DNS record to set) for a requested SSL certificate. It scopes to Certificate Manager 2.0 and to public zones only, which distinguishes it from other cm2_* siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear usage constraint ('Public zone only') and the context that it applies to a requested SSL certificate, which implicitly routes the agent to DCV-related tasks. It does not, however, name an explicit alternative tool or a when-not condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_advanced_certificatesARead-only
List Advanced (paid DV/OV) certificates and their orders (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (1-based) | |
| pageSize | No | Items per page | |
| certificateName | No | Restrict results to this certificate name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only supply readOnlyHint=true, so the description carries most of the behavioral burden and does so well: it discloses that Sub Account keys are rejected with HTTP 403 and that a main-account key is required, with corroborating evidence. It stops short of describing pagination defaults or the result shape, so it is not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with what is listed and the scope, then the hard constraint. Three tight sentences with no filler, though the provenance tail ("confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR") is slightly heavier than needed for a simple 403 warning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A read-only, fully documented 3-param list tool with no output schema, so the description need not explain returns. It covers scope and the critical auth pitfall; the only gap is not routing the agent among the several sibling cm2 certificate-listing tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (page, pageSize, certificateName all documented with descriptions), so the schema already does the heavy lifting. The description adds only an oblique reference to "their orders" in the result and gives no extra meaning for the three filter/paging parameters; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (list Advanced paid DV/OV certificates and their orders) and scopes it to Certificate Manager 2.0. The parenthetical "Advanced (paid DV/OV)" distinguishes it from the sibling ncloud_cm2_list_cloud_certificates/ncloud_cm2_list_certificates by certificate class, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Public zone only" and the main-account key precondition give usage context, so an agent knows the eligible environment. However, there is no explicit when-to-use/when-not statement or named alternative, leaving selection between this and the other cm2 list-certificate tools to inference from the certificate-type qualifier.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_certificatesARead-only
List all certificates with paging (Certificate Manager 2.0). For a plain inventory prefer ncloud_list_certificates (1.0, works with any key); this one adds page/pageSize and the 2.0 response fields (certificate type, status, order). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (1-based) | |
| pageSize | No | Items per page | |
| certificateName | No | Restrict results to this certificate name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true; the description adds substantial behavioral context beyond that: main-account API key requirement, the specific HTTP 403 failure mode for Sub Account keys, and the public-zone-only limitation. This is exactly the kind of auth/constraint disclosure that prevents failed calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then the comparison, then the key/zone caveats. The trailing verification provenance ('confirmed by Ncloud support; verified 2026-10-02...') is slightly extraneous but the sentence is dense with actionable content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with a fully documented schema and no output schema, the description covers everything an agent needs: scope, alternative, required key type, zone restriction, and response-field value-add. Nothing material is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so page, pageSize, and certificateName are already documented with their own descriptions and constraints. The description mentions page/pageSize but adds no syntax or meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('List all certificates with paging') and pins the version ('Certificate Manager 2.0'). It explicitly distinguishes itself from the closely-named sibling ncloud_list_certificates (1.0) and names its distinguishing fields (certificate type, status, order).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit routing guidance: 'For a plain inventory prefer ncloud_list_certificates (1.0, works with any key)' versus when this one is warranted. Adds usage-scoping constraints (public zone only, main-account key required) that tell the agent when NOT to call it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_certificate_typesARead-only
List the certificate types Certificate Manager can issue or register (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, but the description goes further: it discloses the public-zone scope, the main-account API key requirement, the exact failure mode (HTTP 403 for Sub Account keys), and provenance (Ncloud support confirmation, dated verification). That is genuinely useful operational context beyond the annotation. It does not describe the return shape, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, purpose first, constraints after, with no filler or repetition. The verification timestamp and support attribution are slightly more meta-detail than strictly necessary for invocation, but they back the auth claim and are cheap to read.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool with no output schema, the description covers what the agent needs: what is listed, the environment scope, and the credential precondition. The only gap is the absence of any hint about the returned type catalog, which is minor given how simple the call is.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so per the rubric the baseline is 4. There is nothing for the description to clarify, and it does not introduce spurious parameter detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('certificate types Certificate Manager can issue or register'), which implicitly separates it from the many sibling list tools that enumerate actual certificates (ncloud_cm2_list_certificates, ncloud_cm2_list_cloud_certificates). It also anchors the product/version ('Certificate Manager 2.0'). It stops short of naming a sibling to disambiguate explicitly, but the resource noun does the work.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Public zone only' is a real scoping constraint, and the main-account API key requirement tells the agent the operation will fail under certain credentials. However, it never says when an agent should reach for this tool versus the certificate-listing siblings, nor are alternatives named. Usage is implied rather than directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_cloud_certificatesARead-only
List Cloud Basic SSL and Global Edge certificates issued through Certificate Manager (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (1-based) | |
| pageSize | No | Items per page | |
| certificateName | No | Restrict results to this certificate name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already signals a safe read, but the description adds genuinely useful behavioral context the annotations don't cover: the auth requirement and the exact failure mode (HTTP 403 for Sub Account keys), with provenance. It does not describe pagination defaults, which the schema controls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads what the tool lists, then scope, then the auth caveat. Three compact sentences with no filler. The provenance parenthesis ('confirmed by Ncloud support; verified 2026-10-02') is slightly verbose but provides evidentiary weight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with no output schema, the description covers scope, auth constraints, and the 403 pitfall an agent would otherwise hit blindly. Pagination semantics live in the schema, so nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so page, pageSize, and certificateName are already fully documented in the schema. The description adds no extra meaning about filtering or paging behavior, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb (List) and a precisely scoped resource: 'Cloud Basic SSL and Global Edge certificates issued through Certificate Manager (Certificate Manager 2.0)', plus 'Public zone only'. This scope differentiates it from siblings like ncloud_cm2_list_certificates and ncloud_cm2_list_advanced_certificates without naming them explicitly. Clear and specific, though it stops short of explicitly routing to the sibling it complements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete preconditions: certificate must be in the public zone, and a main-account API key is required because Sub Account keys return HTTP 403. This effectively communicates when the tool will and won't work. It does not, however, name sibling list tools or state when to prefer them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_domainsARead-only
List registered domains and their DCV validation state (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1) | |
| orgNo | No | Filter by organization number | |
| dcvType | No | Filter by DCV type | |
| pageSize | No | Page size (default 10) | |
| validState | No | Filter by validation state | |
| domainAddress | No | Filter by domain address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true; the description adds genuinely non-obvious behavior: the tool fails with HTTP 403 for Sub Account keys, confirmed by vendor support and a dated verification. This is exactly the kind of auth/precondition context annotations do not carry. Minor deduction for the provenance aside adding noise rather than behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded in the first sentence, followed by scope and auth constraints in a compact form. The 'confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR' clause is slightly over-detailed but supports the auth claim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A read-only list tool with a fully described schema and no output schema: the description covers purpose, scope, and the critical auth precondition, which is enough for correct invocation. Pagination behavior is implied by the schema rather than the description, a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% across all six parameters (page, pageSize, orgNo, dcvType, validState, domainAddress), so filters are already documented. The description adds no syntax, default, or filtering semantics beyond the schema; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('List registered domains and their DCV validation state') and scopes it to Certificate Manager 2.0, distinguishing it from siblings like ncloud_cm2_get_dcv_status and ncloud_cm2_register_domain. The public-zone qualifier further narrows the resource set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear applicability conditions — public zone only, main-account API key required — which tell the agent whether it can even call the tool. It does not explicitly name an alternative sibling (e.g., for private zones), so it falls short of the 'alternatives' bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_eab_credentialsARead-only
List ACME External Account Binding (EAB) credentials (Certificate Manager 2.0). The API ignores paging and returns every credential. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnlyHint annotation: it discloses that paging is ignored and every credential is returned (relevant to response size), that only public zones are supported, and that Sub Account keys are rejected with HTTP 403. The auth requirement is exactly the kind of failure mode an agent needs before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose first, then behavior, then the auth caveat. Each sentence carries information, though the sourcing tail ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is slightly verbose for what is otherwise a tight definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and no output schema, the description carries the whole burden and covers the key operational facts: no pagination, zone scope, and credential requirements. It does not describe the shape of the returned credential records, but that is a minor gap for a list endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema has nothing to document and the description has no parameter semantics to add. Baseline 4 applies for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb (List) and resource (ACME External Account Binding credentials) and explicitly scopes it to Certificate Manager 2.0. The verb 'list' cleanly separates it from its siblings ncloud_cm2_create_eab_credential and ncloud_cm2_deactivate_eab_credential without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear applicability context: 'Public zone only' and 'Requires a main-account API key', which tells the agent when the call will and won't work. It does not explicitly name alternative siblings or say when to prefer this over create/deactivate, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_list_recent_changesARead-only
List certificates whose status changed recently (Certificate Manager 2.0). Give exactly one of minutes, seconds, or startDateTime+endDateTime — omitting all is rejected (2101) and giving minutes and seconds together returns 0 rows. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| minutes | No | Changes in the last N minutes (1-10080) | |
| seconds | No | Changes in the last N seconds (1-604800) | |
| endDateTime | No | End of the window (use with startDateTime) | |
| startDateTime | No | Start of the window (use with endDateTime) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond readOnlyHint by disclosing the auth constraint (main-account key only, 403 for Sub Account keys) and specific failure codes (2101 for no window). This is exactly the operational context an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose, then constraints in a compact sequence with no filler sentences. The provenance aside ('verified 2026-10-02 with NCP_ADMINISTRATOR') is the only slightly expendable detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still covers inputs, auth, zone scope, and error behavior well. It stops short of indicating what the returned certificate entries contain, a minor gap for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3, but the description adds the mutual-exclusion rule the schema cannot express: exactly one of minutes, seconds, or startDateTime+endDateTime, with concrete consequences (2101, 0 rows) for violating it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource ('List certificates whose status changed recently') and scopes it to Certificate Manager 2.0, distinguishing it from ncloud_cm2_list_certificates, which enumerates certificates rather than recent status changes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear conditions: 'Public zone only' and 'Requires a main-account API key', so the agent knows when this call will work. It does not name a sibling alternative for the cases it excludes (e.g. when a Sub Account key is in play), leaving routing slightly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_register_domainA
Register a domain for certificate issuance and start its DCV (Certificate Manager 2.0). dcvType PTXT = set the DNS TXT record once and reuse it; TXT = a new record per issuance. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| orgNo | No | Organization number | |
| dcvType | Yes | DCV type: PTXT (persistent TXT) or TXT (per-issuance TXT) | |
| dmnAddr | Yes | Domain address | |
| issueType | Yes | How certificates for this domain are issued: CONSOLE or ACME |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries the behavioral burden – and it does: it discloses the authorization requirement (main-account API key), the concrete failure mode (Sub Account keys rejected with HTTP 403), and the DNS-zone constraint, with a verification note. That is exactly the kind of beyond-annotation context an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four dense sentences, all front-loaded with the core action first, then dcvType semantics, scope, and auth. Every sentence earns its place; the parenthetical 'confirmed by Ncloud support; verified 2026-10-02' is slightly extra but supports the reliability of the auth warning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description covers the essential call-time context: prerequisites, scope, credential type, and parameter semantics. It omits the post-registration workflow (DCV verification via a sibling tool) and what the registration returns, which an agent sequencing this operation would want.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both enums are already documented in the schema, so baseline is 3. The description adds operational meaning the schema lacks – that PTXT means write the TXT record once and reuse it while TXT creates a new record per issuance – clarifying the practical consequence of the enum choice.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Register a domain for certificate issuance') plus the immediate follow-on action ('start its DCV'), and scopes it ('Public zone only'). An agent can distinguish this from siblings like ncloud_cm2_list_domains, ncloud_cm2_delete_domain, and ncloud_cm2_get_dcv_status without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit selection guidance for the dcvType choice (PTXT = set TXT once and reuse vs TXT = new record per issuance) and states a precondition (public zone only, main-account API key). It never names an alternative tool or says what to do after registration (e.g., poll ncloud_cm2_get_dcv_status), so it stops short of full when/when-not routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_register_external_certificateA
Re-register (renew) an existing external certificate in place by certificateNo, or register a new one (Certificate Manager 2.0). For a first-time registration prefer ncloud_register_external_certificate (1.0, works with any key); use this tool when you need the 2.0 certificateNo renewal path. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| privateKey | Yes | PEM-encoded private key (decrypted) | |
| certificateNo | No | Existing certificate number to renew/re-register (omit to register a new certificate) | |
| certificateBody | Yes | PEM-encoded certificate body | |
| certificateName | Yes | Certificate name | |
| certificateChain | Yes | PEM-encoded certificate chain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only supply destructiveHint=false, so the description adds real behavioral context: the operation replaces an existing certificate in place via certificateNo, is public-zone-only, and fails with HTTP 403 for Sub Account keys (with a dated verification note). It does not describe the response or whether renewal preserves validity dates, which keeps it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action and the distinguishing alternative; every sentence carries routing or precondition value. The trailing verification parenthetical ('confirmed by Ncloud support; verified 2026-10-02...') is slightly more provenance than an agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter mutation tool with no output schema and minimal annotations, the description covers purpose, alternative routing, account/auth constraints, and scope limits. Nothing material is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter is already documented in the schema, including certificateNo's renew-vs-create semantics. The description repeats that certificateNo drives renewal but adds no new syntax or format guidance, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource ('Re-register (renew) an existing external certificate in place... or register a new one') scoped to Certificate Manager 2.0, and explicitly names the sibling ncloud_register_external_certificate as the alternative path. An agent can distinguish the two without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit routing rule: prefer ncloud_register_external_certificate (1.0, any key) for first-time registration, and use this tool only when the 2.0 certificateNo renewal path is needed. It also states the preconditions (public zone only, main-account API key) that gate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_register_private_keyA
Register the private key for a certificate that was issued from an external CSR (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| privateKey | Yes | PEM-encoded private key | |
| certificateNo | Yes | Certificate number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false; the description adds substantial behavioral context the annotations do not cover: the main-account-key requirement, the resulting HTTP 403 for Sub Account keys, and the public-zone-only scope. This is exactly the kind of auth/failure disclosure that helps an agent avoid a guaranteed-failing call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose, then adds scope and auth constraints in two compact supporting sentences. The provenance clause ("confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR") is slightly chatty but lends credibility to the 403 claim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter mutation tool with no output schema and only a destructiveHint annotation, the description covers purpose, zone scope, and the key auth failure mode. Nothing critical to calling it correctly appears to be missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters (certificateNo, privateKey) are fully documented in the schema, so the description has no obligation to add meaning. It provides nothing beyond the schema, which is the baseline-3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Register") and resource ("the private key for a certificate that was issued from an external CSR"), which an agent can act on. It is distinguishable from the similarly named ncloud_cm2_register_external_certificate, though the differentiation is implied rather than stated explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete applicability conditions ("Public zone only", requires a main-account API key, Sub Account keys get HTTP 403) that directly determine whether a call will succeed. It does not name alternative tools or explicit when-not scenarios, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_reissue_certificateA
Reissue an existing certificate from a new CSR (Certificate Manager 2.0). DCV is by DNS CNAME record (validationMethod D). Use dryRun=true to preview. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| csr | Yes | PEM-encoded Certificate Signing Request | |
| dryRun | No | If true, returns a preview without reissuing | |
| dnsName | No | Domains for the certificate SAN (Subject Alternative Name) | |
| commonName | Yes | Domain for the certificate CN | |
| certificateNo | Yes | Certificate number to reissue | |
| certificateName | Yes | Certificate name | |
| validationMethod | No | DCV method: D = DNS CNAME record | D |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the full behavioral burden, and it does substantial work: it discloses the DCV mechanism, a safe preview path via dryRun, a public-zone-only constraint, and a critical auth requirement (main-account API key; Sub Account keys get HTTP 403). The remaining gap is what reissuance does to the existing certificate (whether it becomes invalid or the swap is non-disruptive), which matters for a mutation of this kind.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then constraints, in four tight sentences with no filler. The dated support-citation tail is unusual but justifies the otherwise surprising 403 claim, so it earns its place; only minor trimming is possible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter mutation tool with no annotations and no output schema, the description covers purpose, validation method, preview mode, zone scope, and the account-key prerequisite. It is nearly complete, lacking only the post-reissue state of the prior certificate and any rate-limit retry guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter including dryRun, validationMethod, and csr is already documented in the schema. The description's param-related claims (validationMethod D = DNS CNAME, dryRun preview) restate schema content rather than adding new meaning, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (reissue), resource (certificate), and mechanism (from a new CSR), and pins the service to Certificate Manager 2.0. An agent can distinguish it from siblings like ncloud_cm2_request_advanced_certificate or ncloud_cm2_register_external_certificate without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage context: DCV is DNS CNAME (validationMethod D), dryRun=true previews, public zone only. These implicitly exclude private-zone and non-DCV flows. However, it never names a specific alternative sibling (e.g., initial issuance vs reissue), so routing guidance stops just short of explicit when-not.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_request_advanced_certificateA
Request a paid Advanced DV/OV certificate from a CSR (Certificate Manager 2.0). OV (NCP_PAID_OV_01) requires organizationNo. validationMethod D = one-time DNS TXT record, PD = persistent DNS TXT record (set once, reused for later validations). Use dryRun=true to preview. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| csr | Yes | PEM-encoded Certificate Signing Request | |
| dryRun | No | If true, returns a preview without requesting | |
| dnsName | No | Domains for the certificate SAN (Subject Alternative Name) | |
| commonName | Yes | Domain for the certificate CN | |
| keyAlgorithm | No | Key algorithm | |
| requestToken | No | Request token | |
| organizationNo | No | Organization number — required for NCP_PAID_OV_01 | |
| certificateName | Yes | Certificate name | |
| certificateType | Yes | NCP_PAID_DV_01 (Advanced DV) or NCP_PAID_OV_01 (Advanced OV) | |
| validationMethod | Yes | DCV method: D (one-time DNS TXT) or PD (persistent DNS TXT) | |
| subscriptionPeriod | No | Subscription period |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry destructiveHint=false, so the description does the heavy lifting, and it delivers: main-account API key requirement with the specific failure mode (Sub Account keys rejected with HTTP 403), public-zone-only restriction, dryRun behavior, and the reuse semantics of persistent DNS validation. These are exactly the non-obvious operational traits an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose, then layered constraints in short clauses; every sentence is actionable. The trailing provenance note ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is slightly verbose for the payload, but it justifies a claim an agent might otherwise distrust.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter mutation with no output schema and thin annotations, the description covers the critical failure modes, auth prerequisite, and validation-method choice. It does not indicate what a successful request returns (request token/handling state) or how keyAlgorithm/subscriptionPeriod affect the outcome, leaving a small gap an agent may need to discover at call time.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents every parameter, so the baseline is 3. The description still adds genuine meaning: the PD variant is clarified as 'set once, reused for later validations', and the OV/organizationNo dependency is restated as a hard requirement rather than a hint. That is a modest but real increment over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (request), a specific resource (paid Advanced DV/OV certificate) and the required input (a CSR), scoped to Certificate Manager 2.0. An agent can distinguish this from sibling request tools such as ncloud_cm2_request_cloud_basic_certificate or ncloud_cm2_request_global_edge_certificate without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete conditions: organizationNo is required only for OV (NCP_PAID_OV_01), validationMethod D is one-time while PD is persistent, dryRun previews without requesting, and the target must be a public zone. It does not explicitly name the sibling tools to use instead (e.g. basic vs global-edge certificate), so routing is by inferred condition rather than explicit alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_request_cloud_basic_certificateA
Request a free Cloud Basic SSL certificate (Certificate Manager 2.0). DCV is by DNS CNAME record (validationMethod D) — check ncloud_cm2_get_dcv_status afterwards for the record to create. Use dryRun=true to preview. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without requesting | |
| dnsName | No | Domains for the certificate SAN (Subject Alternative Name) | |
| commonName | Yes | Domain for the certificate CN (e.g. *.example.com) | |
| certificateName | Yes | Certificate name | |
| validationMethod | No | DCV method: D = DNS CNAME record (the only documented value) | D |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false in annotations, the description carries the behavioral load and does so richly: the DCV mechanism (DNS CNAME), the required post-call follow-up, dryRun preview behavior, public-zone-only scope, and a critical auth caveat (main-account API key required; Sub Account keys get HTTP 403). That auth disclosure is exactly the kind of non-obvious context an agent cannot infer from structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then workflow, then constraints; every clause is actionable. The provenance tail ('confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR') is slightly verbose but justifies a high-stakes auth claim, so it mostly earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists and this is a mutating request tool, so the description must cover behavior — and it does: DCV flow, follow-up tool, preview option, scope limit, and the auth blocker. An agent has everything needed to call it correctly or fail predictably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all five parameters including validationMethod and dryRun. The description restates validationMethod D and dryRun=true without adding format, defaults, or constraints beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Request) plus a specific resource (free Cloud Basic SSL certificate), and the 'Cloud Basic' / 'Certificate Manager 2.0' qualifier cleanly separates it from the advanced and global-edge certificate request siblings. An agent can identify the operation without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear when-to-use context, an explicit exclusion ('Public zone only'), and routes the agent to the follow-up tool ncloud_cm2_get_dcv_status for the CNAME record. It stops short of naming the alternative request tool (advanced/global-edge) as the 'use X instead' path, so it's strong but not fully closed-loop.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_request_global_edge_certificateA
Request a Global Edge (CDN) SSL certificate (Certificate Manager 2.0). Use dryRun=true to preview. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without requesting | |
| dnsName | No | Domains for the certificate SAN (Subject Alternative Name) | |
| commonName | Yes | Domain for the certificate CN | |
| certificateName | Yes | Certificate name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations carry only destructiveHint=false, so the description carries the rest and does so well: it discloses the dryRun preview behavior, the public-zone-only limit, and a critical non-obvious auth constraint (main-account API key required; Sub Account keys rejected with HTTP 403, with support/verification provenance). This is exactly the kind of operational context an agent cannot get from the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads purpose, then appends dryRun guidance, scope, and auth caveats in a compact four-sentence block. Every sentence carries actionable information, though the dated verification footnote ('verified 2026-10-02 with NCP_ADMINISTRATOR') is slightly heavier than needed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a certificate-request mutation with no output schema and minimal annotations, the description covers the essentials an agent needs: what it does, how to preview safely, who can call it, and where it applies. Only the post-request outcome/error surface is left implicit, which is acceptable given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters, including dryRun's preview semantics which the description merely restates. The description adds no new meaning for commonName, dnsName, or certificateName, so it sits at the schema-covered baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'Request a Global Edge (CDN) SSL certificate (Certificate Manager 2.0)'. This clearly distinguishes it from sibling request tools like ncloud_cm2_request_cloud_basic_certificate and ncloud_cm2_request_advanced_certificate by naming the certificate class and the CDN context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage context: dryRun=true for preview, and a scope constraint ('Public zone only'). It does not, however, explicitly name the alternative request tools or the conditions that would select them over this one, so the routing guidance is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_revoke_certificateADestructiveIdempotent
⚠️ Destructive: Revoke an Advanced certificate (or the whole order with certificateNo=0) (Certificate Manager 2.0). Set confirm=true to execute. Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| orderId | Yes | Order ID containing the certificate | |
| revokeType | Yes | Revocation reason | |
| certificateNo | Yes | Certificate number; 0 revokes every certificate in the order |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint, but the description goes further: it explains the confirm=true gate, the wildcard behavior of certificateNo=0, the public-zone restriction, and a concrete auth failure mode (sub-account 403 verified with support). This is exactly the extra behavioral context annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the destructive warning and key mechanics in tight sentences. The trailing parenthetical about support verification and date is slightly verbose and doesn't help invocation, but overall it is well structured and earns most of its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive mutation with no output schema, the description covers the confirmation gate, scope of revocation, zone restriction, and auth constraints — everything an agent needs to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four params are already documented in the schema (including confirm, orderId, revokeType enum, and certificateNo=0). The description reinforces the certificateNo=0 case but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Revoke) and resource (Advanced certificate in Certificate Manager 2.0), and adds the important scope nuance that certificateNo=0 revokes the whole order. An agent can distinguish this from siblings like ncloud_cm2_reissue_certificate or ncloud_cm2_download_certificate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete prerequisites: public zone only, main-account API key required, confirm=true needed to execute, and notes sub-account keys get HTTP 403. It stops short of naming alternative tools (e.g., reissue vs revoke) or when-not-to-revoke, but the operational context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_cm2_set_renewal_statusAIdempotent
Enable or disable automatic renewal for a certificate (Certificate Manager 2.0). Public zone only. Requires a main-account API key — Certificate Manager 2.0 rejects Sub Account keys with HTTP 403 (confirmed by Ncloud support; verified 2026-10-02 with NCP_ADMINISTRATOR).
| Name | Required | Description | Default |
|---|---|---|---|
| renewalYn | Yes | Y to enable auto renewal, N to disable | |
| certificateNo | Yes | Certificate number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so safety profile is partly covered. The description adds genuinely useful non-schema behavior: an authorization constraint (main-account API key required) with a specific failure mode (HTTP 403 for Sub Account keys) and a provenance note. It doesn't describe effects on renewal cycles or response, keeping it below 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core operation and scope are front-loaded in the first two sentences, which is efficient. The third sentence is partly verification metadata ('verified 2026-10-02 with NCP_ADMINISTRATOR') that is useful for trust but slightly bloats an otherwise tight definition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter toggle with no output schema and safety annotations already present, the description covers purpose, scope restriction, and the critical auth prerequisite. It omits what a successful change implies for the certificate's subscription lifecycle, which would be the only remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — certificateNo and renewalYn (with its Y/N enum) are fully documented in the schema. The description adds no parameter-level detail (no format hints, no confirmation that renewalYn maps to enable/disable), so this is the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb pair (enable/disable) and an exact resource (automatic renewal for a certificate), and pins the subsystem via '(Certificate Manager 2.0)' plus the 'Public zone only' boundary. An agent can distinguish this from sibling certificate tools such as ncloud_cm2_reissue_certificate or ncloud_cm2_extend_subscription without inspecting schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete applicability conditions — public zone certificates only, and main-account API key required (Sub Account keys get HTTP 403). What it does not do is name an alternative tool or state when not to call it (e.g., private/global-edge certificates), so it stops short of full when/when-not routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_complete_multipart_uploadA
Complete a multipart upload by assembling previously uploaded parts
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) for the multipart upload | |
| parts | Yes | List of parts with their part numbers and ETags | |
| uploadId | Yes | Upload ID returned from initiate multipart upload | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries full burden. It states the completion action but fails to disclose that this is a final, irreversible mutation, that it requires all parts to be successfully uploaded, or any error/return behavior. This is a significant gap for a state-changing operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with 11 words, immediately clear and front-loaded. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 required parameters and no output schema, yet the description provides no information about the return value, prerequisites, or workflow relationship to sibling multipart tools. It lacks the behavioral context needed for an agent to understand the full completion step.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description need not add parameter details. The mention of 'assembling previously uploaded parts' loosely relates to the 'parts' parameter but adds no extra semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Complete' and the resource 'multipart upload', clearly distinguishing it from related part operations like upload_part or abort_multipart_upload.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'previously uploaded parts' contextually indicates this is the final step after parts are uploaded, providing clear usage context. However, it does not explicitly mention alternatives or when not to use it, so it doesn't earn a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_copy_objectB
Copy an object within the same bucket or between different buckets in Object Storage
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Destination bucket name | |
| copySource | Yes | Source object in the format /{sourceBucket}/{sourceKey} | |
| objectName | Yes | Destination object key (path) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must disclose side effects. It states the copy action but omits overwrite semantics, server-side vs client-side behavior, metadata preservation, and permissions required. The description carries the full behavioral disclosure burden and fails to cover these critical traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no fluff. All words are informative, and it efficiently states the operation and its scope without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema or annotations, the description alone must support safe invocation. It omits important context such as overwrite behavior, success response, and source/destination requirements. Though parameters are fully documented, the tool's behavioral context is underspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters (bucketName, objectName, copySource), so the description adds no additional meaning. The description does not clarify parameter interdependencies beyond what the schema already provides. Baseline 3 applies due to full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb ('Copy') and resource ('an object in Object Storage'), and explicitly distinguishes two valid scenarios (same bucket or cross-bucket). It clearly differentiates this operation from sibling object tools like get, put, or delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to choose copy_object over alternative operations (e.g., get_object + put_object). No prerequisites, exclusions, or alternative tools are mentioned; the description only restates the operation without context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_copy_rule_groupB
Copy an existing Cloud Insight event rule group to create a new one.
| Name | Required | Description | Default |
|---|---|---|---|
| ruleGroupId | Yes | Source rule group ID to copy from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It confirms a write/creation operation, but says nothing about whether the new group requires a distinct name, whether the source is untouched, permission requirements, or what happens on name collision.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; every word contributes to identifying the operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a trivial one-parameter copy tool with no output schema, the description is minimally adequate but leaves the naming/identity of the resulting new group and any needed permissions unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single ruleGroupId parameter, and its description ('Source rule group ID to copy from') fully documents it. The tool description adds no parameter meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (copy) and resource (Cloud Insight event rule group) plus the effect of producing a new group. It's distinguishable from create_rule_group in that it duplicates an existing source, though it never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'copy an existing...to create a new one,' but there is no explicit statement of when to prefer this over ncloud_create_rule_group or ncloud_create_rule_directly, no prerequisites, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_acgA
Create a new Access Control Group in a VPC
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to create ACG in (required) | |
| accessControlGroupName | No | Name for the new ACG (3-30 chars, lowercase letters + numbers + '-', starts with letter, ends with letter or number). Auto-generated if omitted. | |
| accessControlGroupDescription | No | Description for the ACG (0-1000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is minimal but consistent with annotations (destructiveHint=false). It adds the context that the ACG is created within a VPC but does not disclose post-creation state (e.g., initially empty rules) or return format, which the agent must infer.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words, earning a top score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create tool, the description is clear and the schema covers all parameters, but the absence of any note about the response structure or initial ACG state leaves moderate gaps. It is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for all three parameters, including naming constraints for accessControlGroupName. The description adds no additional parameter semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' with the explicit resource 'Access Control Group' and scoping 'in a VPC', clearly distinguishing it from sibling ACG tools like list_acgs or add_acg_inbound_rule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as creating a Network ACL or adding rules to an existing ACG. The description lacks prerequisites (e.g., requiring an existing VPC) though vpcNo is marked required in the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_asgA
Create a new Auto Scaling Group. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating | |
| maxSize | Yes | Maximum number of instances | |
| minSize | Yes | Minimum number of instances | |
| subnetNoList | Yes | List of subnet numbers for the ASG | |
| defaultCooldown | No | Default cooldown period in seconds | |
| desiredCapacity | No | Desired number of instances | |
| serverNamePrefix | No | Prefix for server instance names | |
| targetGroupNoList | No | List of target group numbers to attach | |
| healthCheckTypeCode | No | Health check type (SVR or LOADB) | |
| autoScalingGroupName | No | Auto Scaling Group name | |
| launchConfigurationNo | Yes | Launch configuration number to use | |
| healthCheckGracePeriod | No | Health check grace period in seconds | |
| accessControlGroupNoList | No | List of ACG numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint=false, and the description does not contradict this. The description adds useful dryRun behavior (preview without creating), which is beyond the annotation. However, it does not disclose other behavioral aspects such as possible cost implications, prerequisites like an existing launch configuration, or that creation may be asynchronous. The dryRun insight is helpful but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: two short sentences that front-load the core purpose and immediately mention the dryRun option. Every word earns its place, with no redundant content or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with 13 parameters and no output schema, the description is somewhat sparse. It omits what the response will contain (e.g., created ASG details) and does not mention prerequisites like needing a launch configuration or subnet list (though these are in required schema). The dryRun preview is a nice touch, but the description could be more complete regarding return behavior and setup expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with every parameter already described in the input schema. The tool description adds no extra parameter semantics beyond highlighting dryRun (which is already in the schema). Baseline 3 is appropriate since the schema handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new Auto Scaling Group', which is a specific verb+resource combination. It distinguishes from sibling tools like ncloud_delete_asg, ncloud_list_asgs, and ncloud_update_asg by focusing on the creation action. The dryRun hint adds further functional clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes it evident this tool is for creating a new ASG, and the dryRun=true guidance provides a preview alternative before actual creation. However, it does not explicitly mention when not to use it or compare with alternatives like update_asg or set_desired_capacity, though the creation context is clearly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_block_storageA
Create a new block storage instance. Requires zoneCode + blockStorageVolumeTypeCode + blockStorageSize. For XEN: also provide serverInstanceNo to attach at creation. For KVM: cannot attach at creation — use ncloud_attach_block_storage after. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating | |
| zoneCode | No | Zone code (e.g. KR-1, KR-2). Required when serverInstanceNo is not provided. | |
| blockStorageName | No | Block storage name | |
| blockStorageSize | Yes | Block storage size in GB (XEN: 10~2000, KVM: 10~16380, in 10GB increments) | |
| serverInstanceNo | No | Server instance number (XEN only — creates and attaches to this server. NOT available for KVM) | |
| isReturnProtection | No | Whether to enable return protection | |
| blockStorageDescription | No | Block storage description | |
| blockStorageVolumeTypeCode | Yes | Volume type code. Valid values: SSD, HDD, CB1, CB2, FB1, FB2. Use ncloud_get_block_storage_volume_types to check available types. | |
| blockStorageSnapshotInstanceNo | No | Snapshot instance number to create block storage from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint: false, so the description carries the burden of behavioral disclosure. It adds valuable context about the XEN/KVM difference in attachment behavior and the dryRun option, which previews without creating. This goes beyond the annotations and helps the agent understand the tool's side effects and constraints. However, it does not mention other potential behaviors like pricing or asynchronous operations, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, consisting of three sentences that are front-loaded with the main action. It packs essential information about required parameters, platform-specific behaviors, and a preview option without unnecessary verbosity. Each sentence earns its place, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and the absence of an output schema, the description covers the most important contextual details: what the tool does, prerequisites, platform variations, and an alternative for attachment. It does not describe the response format, but for a creation tool this is less critical. The description is sufficiently complete for an agent to select and invoke the tool correctly, though mentioning the returned resource or operation status would improve it further.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with descriptions for all parameters, so the description does not need to repeat them. It does add useful guidance on how parameters relate to platform differences (e.g., serverInstanceNo for XEN, not available for KVM). However, the claim 'Requires zoneCode + blockStorageVolumeTypeCode + blockStorageSize' slightly conflicts with the schema, which states zoneCode is only required when serverInstanceNo is not provided. This minor inaccuracy prevents a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Create a new block storage instance', which is a specific verb and resource. It clearly distinguishes itself from sibling tools by noting that for KVM, attachment must be done separately with ncloud_attach_block_storage, while for XEN, serverInstanceNo can be provided to attach at creation. This makes the tool's purpose unambiguous and differentiates it from related operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the required parameters and platform-specific instructions. It tells the user that for XEN, serverInstanceNo should be provided to attach at creation, and for KVM, attachment cannot be done at creation and should use ncloud_attach_block_storage instead. It also recommends dryRun=true to preview, providing clear guidance on when and how to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_bucketA
Create a new Object Storage bucket. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating | |
| bucketName | Yes | Name of the bucket to create |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the dryRun preview behavior, which is beyond the annotations that only declare destructiveHint=false. However, it doesn't disclose other behavioral details such as idempotency, naming constraints, or what happens if the bucket already exists. Given annotations are minimal, the description carries some burden but partially fulfills it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of two short sentences. It front-loads the primary purpose in the first sentence and adds a valuable usage tip in the second. Every word serves a purpose, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a relatively simple create operation with only two parameters and no output schema, the description covers the essential purpose and the key dryRun behavior. It doesn't elaborate on return values or error handling, but the tool's low complexity and comprehensive schema make this an adequate level of completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes both parameters (bucketName and dryRun) with clear descriptions. The description's mention of dryRun=true adds a concrete usage example but not new semantic meaning beyond the schema's definition. With 100% schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Create' and the resource 'Object Storage bucket', which is specific and distinguishes it from sibling tools like 'delete_bucket' or 'list_buckets'. It uses a direct verb+resource structure with no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage hint with 'Use dryRun=true to preview', which tells the agent when to use this parameter for validation without actually creating. It doesn't explicitly exclude alternatives, but for a simple create operation, the context is sufficient and there are no competing create-bucket tools among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_cache_config_groupA
Create a new Cloud Cache config group. cloudCacheVersion combines engine version and mode (e.g. '8.1.6-simple' = Standalone, '7.2.11-cluster' = Cluster) — list valid values with ncloud_list_cache_config_group_versions. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating the config group | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| configGroupName | Yes | Config group name (3-15 chars: lowercase letters, numbers, hyphen; must start with a letter and end with a letter or number) | |
| cloudCacheVersion | Yes | Engine version + mode, e.g. '8.1.6-simple' | '7.2.11-cluster' (use ncloud_list_cache_config_group_versions) | |
| cloudCacheDbmsCode | No | DBMS type: Redis (default) | Valkey | |
| configGroupDescription | No | Config group description (max 255 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry destructiveHint: false, so the description carries most of the behavioral disclosure burden. It adds genuinely useful context beyond annotations: the dryRun preview capability ('Use dryRun=true to preview without creating') and the semantic mapping of version formats to modes (Standalone/Cluster). It does not disclose return value or async behavior, but the non-destructive annotation is consistent with a create operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the purpose, then the tricky composite parameter, then the safety valve. Each sentence earns its place. Minor redundancy: the version-format examples partially duplicate the schema description for cloudCacheVersion, but the added mode-to-name mapping justifies the overlap.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter create tool with no output schema, the description covers the essentials: purpose, the most error-prone parameter with format guidance, and the dryRun preview option. It does not describe the return value or mention prerequisites/async operation status, but the sibling list includes ncloud_get_operation_status, and the selection/invocation knowledge an agent needs is largely present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, setting the baseline at 3. The description adds value beyond the schema by explaining what the version-mode combinations actually mean ('8.1.6-simple' = Standalone, '7.2.11-cluster' = Cluster) and clarifying dryRun's preview semantics. This supplements the schema's terse examples rather than merely repeating them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create a new Cloud Cache config group') that clearly distinguishes it from sibling creation tools like ncloud_create_cache_instance and from the list/delete config-group siblings. The purpose is unambiguous and immediately understandable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear operational context by naming the exact sibling to consult for valid parameter values ('list valid values with ncloud_list_cache_config_group_versions'). However, it does not explicitly state when NOT to use this tool or contrast it with ncloud_create_cache_instance, so exclusion guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_cache_instanceA
Create a new Cloud DB for Cache (Redis/Valkey) instance. Requires a config group — create one with ncloud_create_cache_config_group or pick an existing configGroupNo from ncloud_list_cache_config_groups. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| isHa | No | High availability (default: false) | |
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, returns a preview without actually creating the instance | |
| isBackup | No | Enable backup (default: false) | |
| subnetNo | Yes | Private subnet number to create the instance in | |
| backupTime | No | Backup time in HH:mm format (e.g. '01:15'). Required when isBackup=true and isAutomaticBackup=false | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| shardCount | No | Master node count, CLUSTER mode only (3-10, default: 3) | |
| configGroupNo | Yes | Config group number (from ncloud_list_cache_config_groups or ncloud_create_cache_config_group) | |
| cloudCachePort | No | Cache TCP port. Default: 6379; a custom port must be in 10000-20000 | |
| generationCode | No | Server generation: G2 | G3 | |
| shardCopyCount | No | Replica count per shard, CLUSTER mode only (0-4, default: 0) | |
| engineVersionCode | No | Cache engine version code. Default: latest | |
| isAutomaticBackup | No | Let the server pick the backup time (default: true). If false, backupTime is required | |
| cloudCacheDbmsCode | No | DBMS type: Redis (default) | Valkey | |
| cloudCacheModeCode | Yes | Cache mode: SIMPLE (standalone) | CLUSTER. Must match the config group version suffix (-simple / -cluster) | |
| cloudCacheProductCode | No | Cache server spec code. Default: minimum spec | |
| cloudCacheServiceName | Yes | Cache service name (3-15 chars: letters, numbers, Korean, hyphen) | |
| backupFileRetentionPeriod | No | Backup retention period in days (1-7, default: 1) | |
| cloudCacheImageProductCode | No | Cache image product code. Default: auto-selected | |
| cloudCacheServerNamePrefix | Yes | Server name prefix (3-15 chars: lowercase letters, numbers, hyphen) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint: false, so the description carries the burden of behavioral disclosure. It does add the dryRun behavior (preview without creating) and the requirement for a config group, which are useful. However, it does not disclose other potential behaviors such as provisioning time, asynchronous completion, or cost implications. This is a partial disclosure but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core purpose. Each sentence adds distinct value: purpose, prerequisite/alternatives, and a safety tip (dryRun). No fluff or redundant information. It is appropriately concise for a tool with a rich schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (21 params, 6 required) and the very descriptive schema, the description covers the essential non-obvious guidance: the config group prerequisite and dryRun. It does not need to repeat schema details. While it could mention provisioning duration or async behavior, that's not explicitly known, and the schema already handles parameter semantics. Overall, it's sufficient for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all 21 parameters, so the baseline is 3. The description adds minimal extra meaning beyond highlighting the config group dependency and dryRun, both of which are already in the schema. It does not explain any parameters beyond what the schema provides, so it adds little value over the structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a new Cloud DB for Cache (Redis/Valkey) instance.' This clearly distinguishes it from other create tools (e.g., create_mysql_instance) and aligns with the tool name. It also names the prerequisite config group, further clarifying its role in the cache ecosystem.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs the user to first create a config group via ncloud_create_cache_config_group or select an existing one via ncloud_list_cache_config_groups, providing clear alternative paths. It also mentions dryRun for previewing. However, it doesn't explicitly state when NOT to use this tool versus other instance creation tools, though the cache-specific naming makes that largely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_cache_manual_backupA
Create a manual backup for a Cloud DB for Cache instance. The backup file name is assigned by the server — read it back with ncloud_list_cache_manual_backup_details.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It discloses a useful behavioral fact: the backup file name is assigned by the server and must be read back via a separate call. However, with only destructiveHint=false in annotations, the description does not cover other important behavior like asynchronous execution, cost implications, or what the response contains. The added context is meaningful but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two terse sentences with no filler. The main action is front-loaded and the follow-up instruction earns its place by preventing confusion about how to obtain the backup file name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter create operation with no output schema, the description provides the necessary invocation target and a follow-up retrieval path. It could have mentioned whether the backup is created asynchronously or whether a region default applies, but the existing guidance is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers both parameters with descriptions (100% coverage). The tool description adds no parameter-level detail beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource pair: 'Create a manual backup for a Cloud DB for Cache instance.' It clearly stands apart from sibling cache tools like ncloud_list_cache_manual_backups, ncloud_delete_cache_manual_backup, and ncloud_export_cache_backup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes its use case evident through the 'manual backup' phrasing and routes the agent to ncloud_list_cache_manual_backup_details for retrieving the server-assigned backup name. It does not explicitly mention exclusions, such as when to prefer scheduled/automatic backups or export operations, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_custom_resourceC
Create a user-defined custom resource in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| resourceId | No | Resource ID (auto-generated if omitted) | |
| resourceData | Yes | Resource data | |
| resourceName | Yes | Name of the custom resource | |
| resourceTypeId | No | Resource type ID (default 'DEFAULT') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only says 'Create', implying a mutation, but does not disclose side effects, required permissions, or whether resourceId is auto-generated (though this is in the schema). The annotation destructiveHint=false adds minimal safety info, but the description itself does not enrich behavioral understanding beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words, making it easy to scan. However, it is almost too sparse; a few more details could be included without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with four parameters, a nested object, and no output schema, this description is minimal. It lacks context about Cloud Insight's custom resource model, how this tool fits with related custom resource operations, or any expectations about resource data fields. The schema covers parameter details, but the description leaves the operational context largely unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no additional parameter semantics; it doesn't explain the structure of resourceData or the relationship between resourceTypeId and resourceName. The schema itself carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and the resource 'user-defined custom resource in Cloud Insight', which differentiates it from sibling tools like list/get/update/delete. However, it doesn't clarify what a 'custom resource' is or how it relates to custom schemas, leaving some ambiguity about the exact entity being created.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_create_custom_schema or ncloud_update_custom_resource. There is no mention of prerequisites (e.g., needing an existing schema) or exclusions, so the agent lacks context for selecting this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_custom_schemaA
Create a user-defined custom schema in Cloud Insight for custom metrics. prodName must start with "Custom/" (e.g. "Custom/MyProduct"); include exactly one dimension with idDimension=true.
| Name | Required | Description | Default |
|---|---|---|---|
| fields | Yes | Schema field definitions (FieldDto[]) | |
| prodName | Yes | Schema (product) name, must start with "Custom/" (e.g. "Custom/MyProduct") | |
| useCustomResource | No | Whether to use custom resource (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide only destructiveHint=false, so the description carries most of the behavioral burden. It usefully states the naming constraint and the exactly-one-idDimension rule, which shape a valid payload, but it says nothing about whether creation conflicts with an existing schema, whether it is idempotent, or what happens on validation failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the purpose front-loaded and constraints following; nothing is wasted. It slightly over-compresses by packing two hard requirements into one line, but it remains readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with no output schema and thin annotations, the description covers the name pattern and the structural dimension rule, which are the main pitfalls. It is complete enough to invoke correctly, with only edge-case behavior (conflicts, error handling) left unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents prodName's ^Custom\/ pattern and the idDimension "exactly one" rule. The description restates both rather than adding new syntax or format detail, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ("Create a user-defined custom schema") and scopes it to Cloud Insight custom metrics, so the agent knows exactly what the tool produces. It does not, however, distinguish itself from nearby siblings such as ncloud_get_product_schema, ncloud_update_product_schema, or ncloud_delete_product_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the mention of "custom metrics" hints at the custom-monitoring scenario, but there is no explicit when-to-use, no prerequisites, and no routing to or away from the sibling schema tools. An agent could infer context but must guess the boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_deny_allow_groupB
Create a new Network ACL Deny-Allow Group in a VPC
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to create the Deny-Allow Group in | |
| networkAclDenyAllowGroupName | No | Name for the Deny-Allow Group | |
| networkAclDenyAllowGroupDescription | No | Description for the Deny-Allow Group |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only restates the action with no additional behavioral detail. The annotation 'destructiveHint=false' is present, but the description adds nothing about return values, side effects, or required permissions. For a write operation, this is a minimal level of transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no fluff, directly stating the purpose. Every word earns its place and the tool is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create operation with a well-documented schema, the description is sufficient to understand the action and invoke it. However, it lacks any context about what a Deny-Allow Group is or how it relates to Network ACLs, and there is no output schema to describe return values, so it's not a perfect 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all 3 parameters with descriptions (100% coverage), so the baseline is 3. The description's phrase 'in a VPC' adds no new parameter semantics beyond the schema's vpcNo description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and clearly identifies the resource ('Network ACL Deny-Allow Group') and scope ('in a VPC'). It distinguishes from sibling list/get/delete/set tools, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool, prerequisites (e.g., existing VPC), or alternatives like 'set_deny_allow_group_ips' for subsequent configuration. The agent is left without context for selecting this over other Deny-Allow Group operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_fabric_clusterA
Create a new fabric cluster for dedicated physical server grouping
| Name | Required | Description | Default |
|---|---|---|---|
| fabricClusterName | Yes | Fabric cluster name (max 30 characters) | |
| fabricClusterPoolNo | Yes | Fabric cluster pool number | |
| fabricClusterDescription | No | Description for the fabric cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=false. The description adds no additional behavioral traits beyond what the name implies. It does not disclose any side effects, required permissions, or what happens after creation. For a create tool, it would be useful to mention that it is an asynchronous operation or that the new cluster is initially inactive, but no such context is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the primary action and resource. It avoids redundancy and includes a brief clarifying purpose ('for dedicated physical server grouping'). No fluff or irrelevant details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (3 params, no output schema), the description is minimally viable. It could be improved by noting any prerequisites (e.g., a fabric cluster pool must exist) or the outcome beyond just 'create', but it is not severely incomplete. Without an output schema, the description need not explain return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already well-documented in the schema. The description does not add any extra meaning about parameters. Baseline of 3 applies because the schema handles the parameter semantics adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the resource ('a new fabric cluster'), and the purpose ('for dedicated physical server grouping'). This distinguishes it from sibling tools like ncloud_list_fabric_clusters, ncloud_get_fabric_cluster_detail, and ncloud_delete_fabric_cluster, which handle other operations on the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use when creating a new fabric cluster. However, it does not explicitly state when not to use it or mention alternatives (e.g., if you need to modify an existing cluster, use change_* tools). No exclusions or prerequisites are given, so it lacks explicit guidance beyond the verb 'create'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_groupA
Create a new IAM group. Groups have no description field in the Ncloud API — use tags instead. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags as a key-value map, max 20 per resource. Example: {"env":"dev","team":"a"} | |
| dryRun | No | If true, returns a preview without actually creating the group | |
| groupName | Yes | Name for the new group (3-30 chars: Korean/Japanese/English letters, digits, '.', '_', '-'; must start with a letter) | |
| groupDescription | No | ⚠️ Ignored — the Ncloud createGroup API has no description field, so this value is NOT sent. Kept only for backward compatibility; use tags to annotate a group |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation only includes destructiveHint: false, which is consistent with creation. The description adds meaningful behavioral context beyond annotations: it explicitly discloses that groupDescription is ignored (a quirk) and explains the dryRun behavior for previewing. This helps an agent anticipate side effects and avoid confusion, significantly enhancing transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of three short sentences that front-load the core purpose ('Create a new IAM group') followed by essential usage notes (no description field, use tags; dryRun for preview). Every sentence adds value with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward create operation with 4 parameters, the description covers the key contextual aspects: the resource type, the description field limitation (with recommended workaround), and the dryRun mode. The absence of an output schema is not critical since the description doesn't need to explain return values. It lacks an explicit note that groupName is required, but the schema already indicates this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides comprehensive descriptions for all four parameters (100% coverage), including detailed explanations for groupName, tags, dryRun, and the ignored groupDescription. The description reinforces the tag usage and dryRun preview, but adds little beyond what the schema already states. Since schema coverage is high, baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Create a new IAM group.' It specifies the resource type (IAM group) and the verb (create). It also highlights a key attribute (no description field) that distinguishes this specific group creation from similar tools in other services. With no other create_group sibling, purpose is unambiguous and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides direct usage guidance: it instructs to use tags instead of description (since groups lack a description field) and recommends dryRun=true for previews. However, it does not explicitly mention when not to use this tool or compare it to alternative tools (e.g., listing groups or attaching policies). Given the absence of a direct alternative, this is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_init_scriptC
Create a new init script
| Name | Required | Description | Default |
|---|---|---|---|
| osTypeCode | No | OS type code (LNX or WND) | |
| initScriptName | No | Init script name | |
| initScriptContent | Yes | Init script content (shell script) | |
| initScriptDescription | No | Init script description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=false is the only behavioral signal, and the description adds no additional context such as what the tool returns, whether it requires specific permissions, or any side effects. For a creation tool, the lack of disclosure beyond the annotation is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that names the verb and resource directly. It contains no unnecessary words or repetition, making it highly concise and well-structured for a simple CRUD operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool creates a resource and has four parameters, the description is too sparse. It does not mention return values, whether the operation is synchronous, or any constraints beyond what the schema already provides. The combination of description, schema, and annotations is only minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with descriptions for all four parameters, so the baseline is 3. The description itself adds no further parameter meaning, but the schema adequately documents each parameter, including the required initScriptContent and the allowed values for osTypeCode.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('init script'), matching the tool's name. It is unambiguous, but it does not explicitly differentiate from sibling tools like ncloud_list_init_scripts or ncloud_delete_init_scripts, though the name itself implies the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no context about whether this is the appropriate tool for a given scenario. It only states what it does, not when or why to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_integrationA
Create a new Cloud Insight integration (outgoing webhook).
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Outgoing webhook URL | |
| name | Yes | Name of the integration | |
| type | No | Integration type (currently 'OUT_GOING') | OUT_GOING |
| headers | No | HTTP headers to send (max 10 entries) | |
| payload | Yes | Request payload template (JSON string, 0-15000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the behavioral detail that the integration is an 'outgoing webhook', clarifying the type of resource being created. However, it does not disclose side effects, validation rules, or response behavior beyond what the annotation (destructiveHint=false) already covers.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action word 'Create' and contains no unnecessary words. It is efficient and easily parsed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description clearly states the purpose, it does not mention expected return values (no output schema), prerequisites, or post-creation behavior. For a tool with five parameters and no output schema, the description is minimal but the schema covers parameter details, making it adequate though sparse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all five parameters (100% coverage), including the 'type' field with a default of 'OUT_GOING'. The description's phrase 'outgoing webhook' aligns with schema content but adds no additional parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a new Cloud Insight integration') and identifies the resource type with the clarifying phrase 'outgoing webhook'. This distinguishes it from sibling integration operations like update, delete, or list, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the verb 'Create' and the integration lifecycle (siblings include update and delete), but there is no explicit guidance on when to use this tool versus alternatives, nor any prerequisites or conditions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_launch_configA
Create a new launch configuration for Auto Scaling. Exactly one image source must be provided: serverImageProductCode, serverImageNo, or memberServerImageInstanceNo. A server spec is also required: serverImageProductCode → serverProductCode (XEN/RHV); serverImageNo / memberServerImageInstanceNo → serverSpecCode (KVM, see ncloud_get_server_specs). Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating | |
| initScriptNo | No | Init script number to run on first boot | |
| loginKeyName | No | Login key name for SSH access (defaults to the most recently created key) | |
| serverImageNo | No | Server image number — for a new (public) server image (required path for KVM/Gen3). One of serverImageProductCode / serverImageNo / memberServerImageInstanceNo is required. | |
| serverSpecCode | No | Server spec code — pair with serverImageNo or memberServerImageInstanceNo (KVM/Gen3, e.g. c2-g3, s2-g3). One of serverProductCode / serverSpecCode is required (the API rejects a request without a spec). | |
| isEncryptedVolume | No | Whether to encrypt the root volume (RHV only) | |
| serverProductCode | No | Server product (spec) code — pair with serverImageProductCode (XEN/RHV). One of serverProductCode / serverSpecCode is required (the API rejects a request without a spec). | |
| serverImageProductCode | No | Server image product code — for a new (public) server image, RHV/XEN. One of serverImageProductCode / serverImageNo / memberServerImageInstanceNo is required. | |
| launchConfigurationName | No | Launch configuration name (1-255 chars: lowercase letters, digits, '-'; auto-generated when omitted) | |
| memberServerImageInstanceNo | No | Member server image instance number — for a user-created server image. One of serverImageProductCode / serverImageNo / memberServerImageInstanceNo is required. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries most of the burden. It adds real behavioral context: the exactly-one-image-source invariant, the dialect-dependent spec pairing, and that dryRun returns a preview without creating. It omits auth/permission requirements and confirmation/validation failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences, front-loaded with the action and then the two hard constraints, with no padding or restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter creation tool with no output schema, the description covers the validation rules that would otherwise cause rejected requests and points at the lookup tool needed to satisfy them. It does not say what is returned (e.g. the resolved launch configuration name), which is the only notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description synthesizes cross-parameter wiring that individual property descriptions state only separately: the one-of image source rule and the image-source → spec-code mapping per virtualization dialect. That is genuine added meaning beyond a per-field read.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create a new launch configuration for Auto Scaling') and immediately scopes it against the sibling family of list/get/delete launch-config tools. An agent can distinguish it from ncloud_create_asg and ncloud_list_launch_configs without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete routing guidance: which image-source parameter selects which spec parameter (XEN/RHV vs KVM) and directs the agent to ncloud_get_server_specs for valid spec codes. It also documents a safe-preview path via dryRun=true. It stops short of explicit when-not-to-use or the prerequisite relationship to ncloud_create_asg.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_lb_listenerB
Create a new listener for a load balancer
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | Listener port number (1-65534) | |
| useHttp2 | No | Whether to use HTTP/2 protocol (only for HTTPS listener) | |
| targetGroupNo | Yes | Target group number for default rule | |
| cipherSuiteList | No | List of cipher suites. Only for HTTPS/TLS | |
| protocolTypeCode | Yes | Listener protocol type (HTTP, HTTPS, TCP, UDP, TLS) | |
| sslCertificateNo | No | SSL certificate number (required for HTTPS/TLS) | |
| tlsMinVersionTypeCode | No | TLS minimum version (TLSV10, TLSV11, TLSV12). Only for HTTPS/TLS | |
| loadBalancerInstanceNo | Yes | Load balancer instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=false indicates it is not destructive, but the description adds no further behavioral context. It does not mention what the operation returns (no output schema), whether it requires existing resources (load balancer, target group), or potential side effects like port conflicts. For a create operation with no output schema, the description should disclose more, resulting in a score of 2.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear, and efficient sentence with no fluff. It front-loads the core purpose. While it is very short, it is appropriately sized for a simple action statement, though it could have included more detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 8 parameters, 4 required, no output schema, and minimal annotations, the description is markedly incomplete. It fails to explain what a listener is, what parameters are essential, what the response will be, or any dependencies/constraints. The agent is left to infer most context from the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides descriptions for all 8 parameters (100% coverage), so the baseline is 3. The description itself does not add any parameter information beyond what the schema already contains, so it cannot be scored higher.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new listener for a load balancer'), making it easy to distinguish from sibling operations that list, change, or delete listeners. However, it does not explicitly differentiate from these alternatives by stating what not to use it for, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: it is for creating a new listener, rather than modifying (change_lb_listener_config), deleting (delete_lb_listeners), or listing (list_lb_listeners). There is no explicit mention of when to use it versus alternatives, nor any prerequisites like requiring an existing load balancer or target group, so it only provides implied context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_load_balancerA
Create a new load balancer instance. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, returns a preview without actually creating the load balancer | |
| idleTimeout | No | Idle timeout in seconds (1-3600, default: 60). Cannot be set for NETWORK type | |
| listenerList | Yes | List of listener configurations | |
| subnetNoList | Yes | List of subnet numbers for the load balancer (one LB-only subnet per zone) | |
| loadBalancerName | No | Load balancer name (max 30 characters) | |
| throughputTypeCode | No | Throughput type (SMALL, MEDIUM, LARGE, XLARGE for ALB/NProxy; DYNAMIC for NLB) | |
| loadBalancerTypeCode | Yes | Load balancer type (APPLICATION, NETWORK, NETWORK_PROXY) | |
| loadBalancerDescription | No | Load balancer description | |
| loadBalancerNetworkTypeCode | No | Network type (PUBLIC or PRIVATE). Default: PUBLIC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation only declares destructiveHint=false, which is consistent with a create operation. The description adds the dryRun preview capability, which is useful, but it does not disclose other behavioral traits such as whether the operation is synchronous, idempotent, or requires specific prerequisites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences that immediately communicate the purpose and a key usage tip. There is no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 10 parameters and no output schema, the description is adequate given the rich schema. It covers the essential purpose and a preview behavior, but could benefit from mentioning what the response will contain or that the operation is asynchronous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage with detailed descriptions for all parameters, including constraints like 'Cannot be set for NETWORK type' for idleTimeout. The description adds no parameter-specific information beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Create a new load balancer instance.' This clearly differentiates from sibling tools like ncloud_list_load_balancers, ncloud_get_load_balancer_detail, and ncloud_delete_load_balancers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It only mentions using dryRun=true to preview, which is a usage tip but does not address tool selection or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_login_keyA
Create a new login key and return the private key
| Name | Required | Description | Default |
|---|---|---|---|
| keyName | Yes | Name for the new login key |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint: false. The description adds that the tool returns the private key, which is a critical behavioral detail beyond the annotations. However, it does not warn about the secrecy of the private key or that it may only be shown once, leaving some transparency gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that includes the action, resource, and the key return behavior. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description covers the essential purpose and the notable return value. It lacks minor contextual details like security precautions or uniqueness requirements, but these are not critical for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: every parameter (keyName) has a clear description ('Name for the new login key'). The tool description does not add additional parameter-level detail, so it satisfies the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the action ('Create a new login key') and the resource, and notes that it returns the private key. This clearly distinguishes it from sibling tools like list, delete, and import login keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The verb 'Create' implies usage when a new login key is needed, but the description provides no explicit guidance on when to use this tool versus alternatives like import_login_key or list_login_keys. No exclusions or alternative scenarios are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_maintenanceC
Create a new planned maintenance schedule in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| desc | No | Maintenance description | |
| title | Yes | Maintenance title | |
| endTime | Yes | End time in Unix epoch milliseconds | |
| startTime | Yes | Start time in Unix epoch milliseconds | |
| dimensions | Yes | Target resources keyed by cw_key: {"<cw_key>": [{"instanceNo": "1111", "type": "svr"}]} (PMCreateUpdateDto) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only supply destructiveHint=false, so the description carries nearly the full behavioral burden. It says nothing about what creating a maintenance schedule actually does (e.g., whether it suppresses alerts during the window), required permissions, or whether the schedule takes effect immediately. For a mutation tool with nested target-resource mappings, this is a significant disclosure gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or redundancy. It is efficient, but is so terse that conciseness shades into under-specification for a 5-parameter mutation tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a create operation with nested target mappings, minimal annotations, and no output schema, the description should explain the effect of a maintenance window and its interaction with monitoring/alerting. Instead it repeats only the tool name's implication, leaving an agent without enough context to call it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the complex nested 'dimensions' structure with a cw_key/instanceNo/type example, so the baseline is 3 by rule. The description adds no meaning beyond the schema (e.g., what cw_key refers to or valid 'type' values).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Create a new planned maintenance schedule in Cloud Insight.' An agent can distinguish it from siblings like ncloud_update_maintenance, ncloud_delete_maintenance, and ncloud_get_maintenance_detail. It stops short of explicitly naming those alternatives, but the CRUD role is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, no mention of when a maintenance schedule is appropriate versus alternatives. The agent gets no routing help among the create/update/delete/list maintenance siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_member_server_imageA
Create a member server image from a running server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to create member image from | |
| memberServerImageName | No | Name for the member server image | |
| memberServerImageDescription | No | Description for the member server image |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false. The description adds the requirement that the source must be a running server instance, providing some context, but does not disclose other behavioral details such as asynchrony or impact on the source server.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is direct and free of fluff. It efficiently conveys the core operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal but sufficient for a simple create operation with clear schema. It could benefit from noting that member server image creation may be asynchronous or require the server to be in a specific state, but given the schema annotations, it's adequate for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions, so the baseline is 3. The description does not add parameter-specific information beyond what's in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create) and the specific resource (member server image) from a running server instance. It distinguishes from generic server image creation by naming 'member server image', aligning with sibling tools like ncloud_delete_member_server_images. However, it does not explicitly contrast with ncloud_create_server_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternative tools are mentioned. The description implies usage when you want to create a member server image from an active server, but lacks prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_metrics_groupB
Create a new Cloud Insight rule template (감시 항목 그룹 / metrics group).
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) for the target service | |
| prodType | No | Product type: system (Ncloud product) or custom (Custom Schema) | |
| groupDesc | No | Description (<= 300 chars) | |
| groupName | Yes | Name of the metrics group (1-100 chars) | |
| temporaryGroup | No | true: create the Event Rule without creating a metrics group (default false) | |
| metricsGroupItems | Yes | Metric items (at least one) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false, which alone does not disclose much, and the description adds nothing beyond it. It never explains that this persists a new resource, what the temporaryGroup flag changes behaviorally, what is required to succeed, or any side effects — the full behavioral burden falls on the description and is unmet.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the verb first and zero waste; the parenthetical alias adds disambiguation rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The rich, fully described schema covers the input side and there is no output schema to explain, so the description need not detail return values. However, for a create-mutation tool with a nested item array and only a destructiveHint annotation, the description is thin on the behavioral and routing context an agent needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all six parameters (including the nested metricsGroupItems fields) are already documented in the schema. The description adds no parameter meaning beyond restating the resource name, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description pairs a specific verb ("Create") with a clear resource ("Cloud Insight rule template / metrics group"), and the bilingual alias clarifies the domain term. It stops short of distinguishing itself from the sibling create/update metrics-group tools or explaining the rule-template wording, but an agent can identify the operation unambiguously.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as ncloud_update_metrics_group or ncloud_get_metrics_group. The agent must infer the usage context solely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_mongodb_instanceA
Create a new Cloud DB for MongoDB instance. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, returns a preview without actually creating the instance | |
| subnetNo | Yes | Subnet number | |
| configPort | No | Config port (default 17017) | |
| memberPort | No | Member port (default 17017, range 10000-65535) | |
| mongosPort | No | Mongos port (default 17017) | |
| shardCount | No | Number of shards (2-3, for SHARDED_CLUSTER) | |
| compressCode | No | Compression algorithm (SNPP | ZLIB | ZSTD | NONE) | |
| clusterTypeCode | Yes | Cluster type code (STAND_ALONE | SINGLE_REPLICA_SET | SHARDED_CLUSTER) | |
| configProductCode | No | Config server product code | |
| configServerCount | No | Number of config servers (for sharded cluster) | |
| engineVersionCode | No | MongoDB engine version code | |
| memberProductCode | No | Member server product code | |
| memberServerCount | No | Number of member servers in the replica set | |
| mongosProductCode | No | Mongos server product code | |
| mongosServerCount | No | Number of mongos servers (for sharded cluster) | |
| arbiterProductCode | No | Arbiter server product code | |
| arbiterServerCount | No | Number of arbiter servers | |
| dataStorageTypeCode | No | Data storage type (SSD | HDD | CB2) | |
| cloudMongoDbUserName | Yes | Initial admin user name | |
| cloudMongoDbServiceName | Yes | MongoDB service name (3-20 chars, lowercase letters and numbers) | |
| cloudMongoDbUserPassword | Yes | Initial admin user password | |
| backupFileRetentionPeriod | No | Backup retention period in days (1-30) | |
| cloudMongoDbImageProductCode | No | MongoDB image product code | |
| cloudMongoDbServerNamePrefix | Yes | Server name prefix |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint:false, so the description carries the burden of behavioral disclosure. It adds the dryRun preview behavior, which is helpful. However, it doesn't disclose that creating an instance incurs costs, may be a long-running operation, or requires specific permissions. These are significant behavioral traits for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exactly two short sentences, front-loaded with the action 'Create a new Cloud DB for MongoDB instance' and followed by a concise dryRun tip. There is zero wasted wording, and the structure is immediately scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a high-complexity tool with 25 parameters, 7 required, and no output schema. The description is only two sentences and doesn't explain how parameters interact (e.g., clusterTypeCode determines which product codes and shard counts are needed). It also doesn't mention what a successful creation returns or any prerequisites like VPC/subnet setup. The schema descriptions help, but the description itself is insufficient for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with descriptions for all 25 parameters, so the baseline is 3. The description's mention of dryRun adds no new semantic value since the schema already documents dryRun with a default of false. No additional parameter relationships or conditional logic are explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and identifies the resource as 'Cloud DB for MongoDB instance,' clearly distinguishing it from sibling tools like list_mongodb_instances, delete_mongodb_instance, and get_mongodb_instance_detail. The dryRun option is also surfaced, reinforcing the creation intent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a useful usage hint for dryRun=true as a preview mode without creating. However, it doesn't explicitly state when to use this tool versus alternatives for managing existing instances or performing other MongoDB operations. Usage is implied by 'Create' but lacks explicit exclusions or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_monitor_groupC
Create a new Cloud Insight monitoring target group (감시 대상 그룹).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target group type: NORMAL (default) or ASG (Auto Scaling Group) | |
| prodKey | Yes | Product key (cw_key) for the target service | |
| prodName | No | Product name | |
| groupDesc | No | Description of the monitor group | |
| groupName | No | Name of the monitor group | |
| temporaryGroup | No | true: create the Event Rule without creating a monitor group | |
| monitorGroupItemList | Yes | Monitoring targets ([{resourceId, nrn?}]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations carry only destructiveHint=false, so the description must supply the behavioral picture, and it supplies almost none. It does not mention that creation is non-idempotent, what temporaryGroup does (create an Event Rule without a monitor group), or that monitorGroupItemList defines the monitored resources. Nothing contradicts the annotations, but the burden is unmet.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence, front-loaded with the verb and resource, with the parenthetical bilingual gloss. It is efficient and wastes no words, though it borders on under-specification rather than true conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, a nested-monitoring-target array, a type enum, and only a single annotation hint, the description is far too thin. It omits what the tool returns, whether it is idempotent, and how a monitor group relates to the metrics groups and rule groups it will subsequently be used with.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the type enum, temporaryGroup semantics, and the nested item fields, so the schema does the heavy lifting. The description adds only the Korean gloss '감시 대상 그룹', which does not disambiguate the required prodKey or the relationship between monitorGroupItemList and the group itself. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Create a new Cloud Insight monitoring target group'), which separates it from update/delete/list/get monitor group siblings. It also implicitly distinguishes itself from the load-balancer ncloud_create_target_group by qualifying the resource as a Cloud Insight monitoring target group. It does not, however, clarify the relationship to ncloud_create_metrics_group or ncloud_create_rule_group, which are the genuinely confusable siblings in this domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites (e.g., that prodKey must reference an existing target service), and no mention of alternatives such as ncloud_update_monitor_group or ncloud_create_metrics_group. The agent must infer all routing decisions from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_mssql_instanceB
Create a new Cloud DB for MSSQL instance. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| isHa | Yes | High availability mode (true creates Mirror server, 2 servers total) | |
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, returns a preview without actually creating the instance | |
| isBackup | No | Whether to enable automatic backup | |
| subnetNo | Yes | Subnet number | |
| backupTime | No | Backup time (HH:mm format) | |
| isMultiZone | No | Multi Zone mode (only when isHa=true) | |
| configGroupNo | No | Config Group number | |
| cloudMssqlPort | No | MSSQL port number (default: 1433, range: 10000-20000) | |
| mirrorSubnetNo | No | Mirror server subnet number. Required when isMultiZone=true. | |
| characterSetName | No | DB character set (Korean_Wansung_CI_AS | SQL_Latin1_General_CP1_CI_AS) | |
| engineVersionCode | No | DB engine version code | |
| isAutomaticBackup | No | Whether to enable automatic backup scheduling | |
| cloudMssqlUserName | Yes | Initial admin user name | |
| dataStorageTypeCode | No | Data storage type: SSD | HDD | CB2 | |
| cloudMssqlProductCode | No | MSSQL server product (spec) code | |
| cloudMssqlServiceName | Yes | MSSQL service name (3-20 chars, lowercase letters and numbers) | |
| cloudMssqlUserPassword | Yes | Initial admin user password | |
| backupFileRetentionPeriod | No | Backup retention period in days (1-30) | |
| cloudMssqlImageProductCode | No | MSSQL image product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=false is consistent with a create operation. The description adds the dryRun behavior, which is useful, but it does not disclose whether the operation is synchronous, what happens on success, or potential cost implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no wasted words. It front-loads the primary purpose and adds a single actionable tip about dryRun.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool with 20 parameters, no output schema, and only a minimal annotation. The description does not mention return values, required setup steps, or how to choose among the many parameters. It relies entirely on the schema for context, which is insufficient for a creation tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains all parameters. The description adds no parameter-specific detail beyond repeating the dryRun flag's schema description, which provides minimal additional value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new Cloud DB for MSSQL instance' with a specific verb and resource. It clearly indicates the tool creates an MSSQL instance, distinguishing it from related sibling tools like create_mssql_slave or list_mssql_instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It only mentions a dryRun flag but does not explain prerequisites, when to prefer creating a slave, or when to query existing instances first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_mssql_slaveB
Create a slave server instance for a Cloud DB for MSSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | No | Subnet number for the slave instance. Required when Multi Zone is enabled. | |
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number to create slave for | |
| privateDomainPostfix | Yes | Private domain postfix (001-999) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, which is minimal. The description adds no behavioral context beyond the literal 'Create' action—no mention of asynchronous processing, prerequisites, side effects, or error cases. This leaves the agent without insight into the operation's behavior beyond its existence.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the action and target. Every word earns its place, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create operation with complete schema coverage, the description is minimally adequate, but it omits expected return values (no output schema) and any usage context. The lack of behavioral detail further limits completeness, though the core purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for all three parameters (100% coverage), so the baseline of 3 applies. The tool description itself does not elaborate on parameters, but the schema fully documents them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the target resource ('a slave server instance for a Cloud DB for MSSQL instance'). The resource is specific enough to distinguish from sibling tools like ncloud_create_mysql_slave, though it doesn't explicitly contrast with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when creating a MSSQL slave), but provides no explicit context about prerequisites, alternatives, or exclusions. It is purely a statement of purpose without additional usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_mysql_instanceA
Create a new Cloud DB for MySQL instance. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| isHa | No | High availability (default: true). If true, creates Standby Master (2 servers). If false, isMultiZone/standbyMasterSubnetNo are ignored. | |
| vpcNo | Yes | VPC number (getCloudMysqlTargetVpcList) | |
| dryRun | No | If true, returns a preview without actually creating the instance | |
| hostIp | Yes | Host IP for MySQL access (e.g. '%' for all, '1.1.1.1', '1.1.1.%', '1.1.1.0/24'). Use '%25' for '%' in GET requests. | |
| isBackup | No | Backup enabled (default: true). Fixed to true when isHa=true. | |
| subnetNo | Yes | Subnet number for primary NIC (getCloudMysqlTargetSubnetList) | |
| backupTime | No | Backup time in HH:mm format (e.g. '02:00'). Required when isBackup=true and isAutomaticBackup=false. | |
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to first region. | |
| isMultiZone | No | Multi-zone HA (default: false). Required when isHa=true. Places Master and Standby in different zones. | |
| cloudMysqlPort | No | MySQL TCP port (default: 3306, range: 10000-20000). Cannot change after creation. | |
| engineVersionCode | No | DB engine version code (getCloudMysqlImageProductList). Defaults to latest version. | |
| isAutomaticBackup | No | Automatic backup time scheduling (default: true). If true, backupTime cannot be specified. | |
| cloudMysqlUserName | Yes | DB user account ID (3-16 chars, starts with letter, allows letters/numbers/'-'/'_') | |
| isDeleteProtection | No | Cluster deletion protection (default: false). If true, cluster cannot be deleted. | |
| isPrivateSubDomain | No | Use private sub-domain (true/false) | |
| dataStorageTypeCode | No | Data storage type. G2 default: SSD, G3 default: CB2. Cannot change after creation. | |
| isStorageEncryption | No | Storage encryption (default: false). Only available when isHa=true. Cannot change after creation. | |
| cloudMysqlProductCode | No | MySQL server product (spec) code (getCloudMysqlProductList). Defaults to minimum spec. | |
| cloudMysqlServiceName | Yes | MySQL service name (3-30 chars, letters, numbers, Korean, '-') | |
| standbyMasterSubnetNo | No | Subnet for Standby Master server. Required when isMultiZone=true. Must be different zone from primary subnet. | |
| cloudMysqlDatabaseName | Yes | Initial database name (1-30 chars, starts with letter) | |
| cloudMysqlUserPassword | Yes | DB user password (8-20 chars, must include letter+number+special char) | |
| privateSubDomainPrefix | No | Private sub-domain prefix (3-15 chars). Required when isPrivateSubDomain=true. | |
| backupFileRetentionPeriod | No | Backup retention period in days (default: 1). Only InnoDB tables supported. | |
| cloudMysqlImageProductCode | No | MySQL image product code (getCloudMysqlImageProductList) | |
| cloudMysqlServerNamePrefix | Yes | Server name prefix (3-20 chars, starts with letter, ends with letter/number, allows '-') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the key behavioral trait of dryRun for preview, which supplements the annotations (destructiveHint: false). However, it does not disclose response characteristics, potential delays, or failure behavior, leaving agents with limited behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—two sentences that immediately convey the tool's purpose and a key feature (dryRun). No wasted words; ideal for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (26 parameters, no output schema, no prerequisites mentioned), the description is too sparse. It lacks information about return values, required preparatory steps (e.g., VPC/subnet creation), and links to related tools, leaving agents underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 26 parameters are documented in the input schema. The description itself adds no additional parameter-level information beyond what the schema provides, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Create') and resource ('Cloud DB for MySQL instance'), and mentions dryRun for preview. It distinguishes well from sibling MySQL tools like ncloud_create_mysql_slave or ncloud_delete_mysql_instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating a MySQL instance but does not explicitly differentiate from other MySQL creation tools like ncloud_create_mysql_slave or give when-to-use guidance. The dryRun hint is helpful but not a full usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_mysql_recoveryA
Create a Recovery server instance for a Cloud DB for MySQL instance. Restores from backup file or point-in-time.
| Name | Required | Description | Default |
|---|---|---|---|
| fileName | No | Backup file name for restore (getCloudMysqlBackupDetailList). If specified, recoveryTime is ignored. One of fileName or recoveryTime is required. | |
| subnetNo | No | Subnet number for Recovery server. Required when isMultiZone=true. Ignored when isMultiZone=false. | |
| regionCode | No | Region code (default: first region) | |
| recoveryTime | No | Point-in-time recovery (yyyy-MM-dd HH:mm). If specified, fileName is ignored. One of fileName or recoveryTime is required. | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number (getCloudMysqlInstanceList) | |
| cloudMysqlRecoveryServerName | Yes | Recovery server name prefix (3-20 chars, starts with letter, ends with letter/number, allows '-') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide `destructiveHint: false`, which the description does not contradict (creating a recovery server is non-destructive to the source instance). The description adds the key behavioral detail that the tool restores from backup or point-in-time, which is useful beyond the annotation. However, it does not disclose any potential side effects, prerequisites (e.g., needing `cloudMysqlInstanceNo` already exist), or what happens to the original instance. With annotations covering the safety profile, the description adds modest context but not rich behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the action and resource. Every word earns its place: 'Create a Recovery server instance' identifies the operation, and 'Restores from backup file or point-in-time' clarifies the method. There is no redundancy or filler, making it extremely concise and structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and no output schema, the description is reasonably complete: it states the core action and restore methods, while the schema handles parameter details. It does not mention the return value or how to monitor the operation, but for a creation tool that is often acceptable, especially with sibling tools like `ncloud_get_mysql_instance_detail` available for post-creation checks. The description covers the essential decision points, though it could briefly mention the need to specify either `fileName` or `recoveryTime` or reference the prerequisite `cloudMysqlInstanceNo` to be slightly more self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add much beyond the schema: it mentions 'backup file or point-in-time', which loosely maps to `fileName` and `recoveryTime`, but the schema already provides detailed semantics (e.g., mutual exclusivity, format, references to helper tools). Since the schema descriptions are comprehensive and the description adds no new parameter-level meaning, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Create a Recovery server instance for a Cloud DB for MySQL instance.' It uses a specific verb ('Create') and a specific resource ('Recovery server instance'), distinguishing it from sibling tools like `ncloud_create_mysql_instance` or `ncloud_create_mysql_slave`. The additional phrase 'Restores from backup file or point-in-time' adds specificity about the recovery purpose, making the tool's function unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear context for when to use this tool: when recovering a Cloud DB for MySQL from a backup or point-in-time. While it does not explicitly name alternatives or exclusions, the phrase 'Restores from backup file or point-in-time' implies the appropriate use case. Given the sibling list includes `ncloud_create_mysql_instance` (creating a new instance) and `ncloud_create_mysql_slave` (creating a replica), the recovery-specific wording serves as sufficient implicit guidance, though it lacks explicit 'when-not' direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_mysql_slaveA
Create a slave (read replica) for a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | No | Subnet number for the slave instance. Required when isMultiZone=true. Ignored when isMultiZone=false. | |
| regionCode | No | Region code (default: first region) | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number to create slave for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, and the description adds the read-replica context. However, it does not disclose behavioral aspects like provisioning time, billing implications, or that this is a write operation (the annotation already covers non-destructiveness). No contradiction found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence containing only the essential purpose. No filler or redundant information; every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create operation with three fully described parameters and no output schema, the description adequately conveys the tool's function. It clarifies the ambiguity of 'slave' with the parenthetical 'read replica'. Minor gaps remain about the operation's workflow or response, but these are not critical for this low-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already provides clear descriptions for each parameter (e.g., subnetNo conditions). The tool description adds no additional parameter meaning beyond what the schema states, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action on a specific resource: 'Create a slave (read replica) for a Cloud DB for MySQL instance'. The verb 'Create' and resource 'slave for MySQL instance' distinguish this from sibling tools like ncloud_create_postgresql_read_replica and ncloud_create_mssql_slave.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a MySQL read replica is needed, but does not explicitly state when to use this over alternatives or mention prerequisites. There is no 'when not to use' guidance, leaving the agent to infer context from the resource type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_nas_snapshotA
Create a snapshot for a NAS volume instance. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating | |
| nasVolumeInstanceNo | Yes | NAS volume instance number to create snapshot from | |
| nasVolumeSnapshotName | No | Name for the snapshot | |
| nasVolumeSnapshotDescription | No | Description for the snapshot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false, and the description is consistent with this by indicating a create operation. The description adds the dryRun preview capability, which is useful behavioral context, but it does not disclose details like whether the operation is synchronous, requires specific permissions, or what happens upon success. With limited annotations, the description only partially compensates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two short sentences that state the core purpose and a key usage tip. There is no wasted wording, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 parameters, no output schema, and minimal annotations. The description covers the basic purpose and the dryRun option but does not mention the return value, prerequisites such as the NAS volume existing, or any side effects. Given the simplicity of the operation, it is adequate but leaves clear gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are already documented. The description's mention of dryRun=true is redundant with the schema's description of the dryRun parameter. No additional parameter semantics are provided beyond what the schema already offers, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and the resource 'snapshot for a NAS volume instance', which is specific and distinguishes this from sibling tools like delete_nas_snapshot, list_nas_snapshots, and restore_nas_volume_with_snapshot. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a practical usage tip ('Use dryRun=true to preview') but does not explicitly state when to use this tool versus alternatives or mention any exclusions. The context is implied by the tool's name and description, but there is no comparison with other similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_nas_volumeA
Create a new NAS volume instance. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number where the NAS volume will be created | |
| dryRun | No | If true, returns a preview without actually creating | |
| zoneCode | Yes | Zone code (e.g. KR-1, KR-2) | |
| volumeName | Yes | NAS volume name (3~20 characters, alphanumeric) | |
| volumeSize | Yes | Volume size in GB (500~10000, in 100GB increments) | |
| cifsUserName | No | CIFS user name (required when protocol is CIFS) | |
| cifsUserPassword | No | CIFS user password (required when protocol is CIFS) | |
| isEncryptedVolume | No | Whether to encrypt the volume | |
| isReturnProtection | No | Whether to enable return protection | |
| nasVolumeDescription | No | NAS volume description | |
| serverInstanceNoList | No | List of server instance numbers for access control | |
| volumeAllotmentProtocolTypeCode | Yes | Volume protocol type code (NFS or CIFS) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only state destructiveHint=false. The description adds the behavioral nuance that dryRun=true returns a preview without actually creating, which is useful context beyond the schema and annotations. However, it does not disclose other behavioral traits such as asynchronous execution, cost implications, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler. The first sentence front-loads the action, and the second provides a distinct usage tip, making every word earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex create tool with 12 parameters, no output schema, and minimal annotations, the description is quite sparse. The schema covers parameter semantics, but the description omits return value expectations, prerequisites, or operational considerations beyond dryRun. It is adequate but leaves gaps for such a complex operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% parameter coverage with detailed descriptions for all 12 parameters, so the description doesn't need to add parameter meaning. Mentioning dryRun is redundant with the schema's description, and no other param semantics are provided. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and names the resource 'new NAS volume instance', clearly distinguishing it from sibling tools that list, get, change, or delete NAS volumes. It also signals the alternative dryRun mode, reinforcing that this is the creation entry point.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage tip: 'Use dryRun=true to preview', which tells the agent when to use the dryRun flag. It does not explicitly compare with alternatives like create_nas_snapshot or list_nas_volumes, but the verb and resource name imply the creation context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_nat_gatewayA
Create a new NAT Gateway instance in a VPC. Supports both Public (PBLIP) and Private (PRVT) types.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to create NAT Gateway in (from getVpcList) | |
| subnetNo | No | NATGW-type subnet number. If NULL, creates a PUBLIC-type NATGW subnet automatically. If specified, creates NAT Gateway according to the subnet's subnetTypeCode (PUBLIC or PRIVATE). | |
| zoneCode | Yes | Zone code (e.g., KR-1, KR-2) | |
| privateIp | No | Private IP address. Ignored for PUBLIC subnet type. For PRIVATE subnet: auto-assigned if NULL, created with specified IP if provided. | |
| natGatewayName | No | NAT Gateway name (3-30 chars, English letters/numbers/hyphens, must start with letter and end with letter or number) | |
| publicIpInstanceNo | No | Public IP instance number. Ignored for PRIVATE subnet type. For PUBLIC subnet: auto-created if NULL, assigned if specified. | |
| natGatewayDescription | No | Description for the NAT Gateway (max 1000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation only includes destructiveHint: false, which aligns with the description's 'Create' action (non-destructive). The description adds the Public/Private type support, but does not disclose further behavioral traits such as whether the operation is synchronous, whether dependent resources (e.g., subnets) are automatically provisioned, or what response is returned. Since the annotation is minimal, the description carries some burden, but it provides only basic information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and object, and then adds the type distinction. It contains zero waste and is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is simple and the parameter schema is thorough, covering all required and optional inputs. However, there is no output schema, and the description does not mention what the tool returns (e.g., NAT Gateway instance ID or asynchronous job status), which is a gap for a create operation. It also lacks usage guidelines, but overall it provides sufficient context for basic selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, where each parameter has a detailed description. The tool's description adds no parameter-specific information beyond 'Public (PBLIP) and Private (PRVT) types,' which is already reflected in the schema's subnetNo, privateIp, and publicIpInstanceNo descriptions. Thus, the description adds little value over the schema, keeping the score at the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Create'), the resource ('NAT Gateway instance'), and the scope ('in a VPC'). It also distinguishes between Public (PBLIP) and Private (PRVT) types, which differentiates it from other NAT gateway sibling tools like list, get, set description, and delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating a NAT Gateway, but does not explicitly state when to prefer this over alternatives or mention prerequisites (e.g., VPC must exist, subnet type requirements). It does not reference when not to use it, leaving the agent to infer from the verb and resource type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_network_aclA
Create a new Network ACL in a VPC
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to create Network ACL in | |
| networkAclName | No | Network ACL name (max 30 characters) | |
| networkAclDescription | No | Description for the Network ACL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the VPC scoping detail but does not disclose behaviors such as default rules, idempotency, or return value. The destructiveHint=false annotation already indicates this is a non-destructive operation, and the description is consistent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence with no redundant information. Front-loaded with the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity, full schema parameter coverage, and non-destructive annotation, the description is adequate. However, it does not specify the response format or any post-create behavior, which could be relevant given the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no additional parameter meaning beyond what the schema already provides. The parameter descriptions in the schema are sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and identifies the resource 'Network ACL' with context 'in a VPC', clearly distinguishing it from sibling tools like delete_network_acl or add_network_acl_inbound.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context (a Network ACL within a VPC) but does not explicitly state when to use this versus alternatives, such as when to add rules or delete an ACL. It implies usage but lacks exclusions or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_network_interfaceA
Create a new network interface in a VPC subnet. vpcNo, subnetNo and 1-3 ACG numbers are required. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| ip | No | Primary private IP within the subnet range (auto-assigned when omitted; the first 6 and the last subnet addresses are reserved) | |
| vpcNo | Yes | VPC number the subnet belongs to (required; see ncloud_list_vpcs) | |
| dryRun | No | If true, returns a preview without actually creating | |
| subnetNo | Yes | Subnet number to create the network interface in (required) | |
| isBareMetal | No | true for a bare-metal server interface (requires serverInstanceNo) | |
| secondaryIpList | No | Secondary IPs to assign (together with secondaryIpCount at most 5) | |
| secondaryIpCount | No | Number of secondary IPs to auto-assign (0-5) | |
| serverInstanceNo | No | Server instance to attach to on creation (private-subnet interfaces only) | |
| networkInterfaceName | No | Network interface name (3-30 chars: lowercase letters, digits, '-'; auto-generated when omitted) | |
| accessControlGroupNoList | Yes | List of ACG numbers to apply (1-3) | |
| networkInterfaceDescription | No | Network interface description (up to 1000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries most of the behavioral burden. It notes the dryRun preview path, which is useful, but it doesn't disclose permissions needed, whether the NIC is created unattached, or reversibility — and the dryRun detail is already restated in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action, then requirements, then the preview hint. Nothing is padded and no sentence is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter create operation with only a single annotation and no output schema, the description is minimal. It covers required inputs and preview mode, but omits return/response context and any lifecycle or attachment behavior an agent might need when invoking a creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 11 parameters are already documented in the schema. The description only restates the three required fields and dryRun, adding no syntax, constraints, or edge-case meaning beyond what the schema provides; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Create'), a specific resource ('network interface'), and the scope ('in a VPC subnet'), which cleanly separates it from the sibling list/get/delete/attach/detach NIC operations. An agent can identify the action without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the required inputs and offers one usage tip ('Use dryRun=true to preview'), which is helpful. However, it never says when this is the right tool versus alternatives (e.g. attaching an existing NIC vs creating one) or any prerequisites such as server-attachment context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_pipelineA
Create a new SourcePipeline pipeline with tasks and optional triggers
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Pipeline name (1-30 chars, alphanumeric + '-' and '_') | |
| tasks | Yes | Task list (at least one task required) | |
| dryRun | No | If true, returns preview without creating | |
| trigger | No | Trigger configuration | |
| description | No | Pipeline description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false, which is consistent with 'Create'. The description adds 'SourcePipeline' specificity but does not disclose additional behavior like return values, prerequisites, or the effect of dryRun. Since annotations are minimal, the description carries some burden but provides little extra behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence that captures the tool's purpose without waste. No redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the complex nested schema and no output schema, the description is minimal. It explains what the tool does but lacks information about return format, prerequisites beyond schema, or side effects. Adequate for tool selection but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are described in the schema. The description only mentions 'tasks' and 'optional triggers', which adds no meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and resource ('SourcePipeline pipeline'), and mentions key components ('tasks', 'optional triggers'). It clearly distinguishes from sibling update/delete/list/run pipeline tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The verb 'Create' clearly indicates when to use this tool (for creating new pipelines). However, it does not explicitly mention alternatives or exclusions (e.g., 'use update_pipeline for existing pipelines'). Context is clear enough without explicit alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_placement_groupA
Create a new placement group for physical server placement control
| Name | Required | Description | Default |
|---|---|---|---|
| placementGroupName | No | Placement group name (max 30 characters) | |
| placementGroupTypeCode | No | Placement group type code (default: AA - Anti-Affinity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, which is consistent with 'Create'. The description adds no context about side effects, idempotency, required permissions, or response format. Since annotations are minimal, the description carries the burden and falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to the meaning, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with only two optional parameters and no output schema. The description and schema are adequate for basic invocation, but the lack of behavioral details and usage guidance leaves some gaps for an agent to fully understand the tool's effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters. The description adds no parameter-specific meaning beyond what is already in the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the resource ('placement group'), and the purpose ('for physical server placement control'). This distinguishes it from sibling tools like list/get/delete placement group, which have different verbs and resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you need to create a placement group), but it does not explicitly mention alternatives or exclusions. No guidance is given about prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_policyA
Create a user-created (custom) IAM policy with explicit permission statements — the way to scope a sub account to specific actions and resources instead of using a broad system-managed policy. Max 500 policies per account. Use ncloud_validate_policy first for real server-side validation; dryRun=true only echoes the request shape.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags as a key-value map, max 20 per resource. Example: {"env":"dev","team":"a"} | |
| dryRun | No | If true, returns a preview without actually creating the policy | |
| policyName | Yes | Policy name (3-30 chars: Korean/Japanese/English letters, digits, '.', '_', '-'; must start with a letter) | |
| description | No | Description of the policy (0-300 bytes) | |
| permissions | Yes | Permission statements. Each entry allows a set of actions on a set of resource NRNs for one service |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false in annotations, the description adds important behavioral context: the 500-policy-per-account quota, dryRun's limited 'echo only' semantics, and (in the schema) the server-side rewriting of '*' into product-scoped NRNs. These go well beyond what annotations alone convey and help set correct expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler: purpose, quota, and validation guidance each earn their place. The most important scoping intent is front-loaded, and the dryRun/validate distinction is clearly separated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex nested-parameter tool with no output schema, the description covers purpose, quota, validation flow, and dryRun behavior—arguably enough to invoke correctly. It does not state what the response contains or whether the created policy is immediately active, a minor gap given the rich schema and sibling get_policy_detail tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter definitions already carry the semantic burden. The top-level description adds minimal parameter detail beyond dryRun and the quota; it does not need to compensate for missing schema info, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Create a user-created (custom) IAM policy') and immediately clarifies its role: scoping a sub account to specific actions/resources rather than using a broad system-managed policy. This clearly distinguishes the tool's purpose and prevents confusion with policy read/update/delete siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit guidance to call ncloud_validate_policy first for real server-side validation and clarifies that dryRun=true only echoes the request shape, which is a meaningful when-to-use distinction. It does not explicitly contrast with update_policy or delete_policy, but the primary alternative (validation) is well covered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_postgresql_instanceA
Create a new Cloud DB for PostgreSQL instance. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| isHa | No | High availability setting (default: true) | |
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, returns a preview without actually creating the instance | |
| isBackup | No | Whether to enable automatic backup | |
| subnetNo | Yes | Subnet number | |
| backupTime | No | Backup time (HH:mm format) | |
| clientCidr | Yes | Client CIDR for access control | |
| isMultiZone | No | Whether to enable multi-zone high availability | |
| engineVersionCode | No | PostgreSQL engine version code (required for Gen3/KVM) | |
| isAutomaticBackup | No | Whether to enable automatic backup scheduling | |
| secondarySubnetNo | No | Secondary subnet number (required when isMultiZone is true) | |
| cloudPostgresqlPort | No | PostgreSQL port number (default: 5432) | |
| dataStorageTypeCode | No | Data storage type code (SSD | HDD | CB2) | |
| isStorageEncryption | No | Storage encryption (cannot be changed after creation) | |
| backupFileStorageCount | No | Number of backup files to retain (1-30) | |
| cloudPostgresqlUserName | Yes | Initial user name | |
| isBackupFileCompression | No | Whether to compress backup files | |
| backupFileRetentionPeriod | No | Backup retention period in days (1-30) | |
| cloudPostgresqlProductCode | No | PostgreSQL server product (spec) code | |
| cloudPostgresqlServiceName | Yes | PostgreSQL service name (3-20 chars, lowercase letters and numbers) | |
| cloudPostgresqlDatabaseName | Yes | Initial database name | |
| cloudPostgresqlUserPassword | Yes | Initial user password | |
| cloudPostgresqlImageProductCode | No | PostgreSQL image product code | |
| cloudPostgresqlServerNamePrefix | Yes | Server name prefix |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation only includes destructiveHint=false. The description adds the dryRun preview behavior, which is helpful and not redundant with annotations. However, it does not disclose other behavioral traits such as required permissions, cost implications, or that certain settings (e.g., storage encryption) are immutable after creation—these are only in schema descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exactly two sentences, with no wasted words. It front-loads the core purpose and adds the dryRun tip efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 24-parameter schema with 100% coverage, the description doesn't need to repeat parameter details. However, it lacks high-level context about dependencies (e.g., secondarySubnetNo when isMultiZone is true) or return values, and there is no output schema. The description is minimal but adequate when combined with the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description only mentions dryRun, which is already fully described in the schema ('If true, returns a preview without actually creating the instance'), adding no new semantic value for parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new Cloud DB for PostgreSQL instance' with a specific verb and resource, clearly distinguishing this creation action from sibling tools like create_read_replica or delete. The dryRun mention adds further clarity about its behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is 'Use dryRun=true to preview without creating,' which provides a useful preview option. However, it does not explain when to use this tool versus alternatives (e.g., creating a read replica) or specify exclusion criteria. The guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_postgresql_read_replicaB
Create a read replica for a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | No | Subnet number for the read replica instance | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number to create read replica for | |
| cloudPostgresqlServerNamePrefix | No | Server name prefix for the read replica |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only a destructiveHint: false annotation (which is consistent with 'Create'), the description adds no additional behavioral context. It does not disclose whether the operation is asynchronous, how to track progress, or any side effects beyond creating a replica. The description does not contradict annotations, but it adds minimal value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It effectively communicates the tool's purpose without verbosity or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with no output schema, the description is incomplete. It does not mention what is returned on success, whether the operation is synchronous or asynchronous, or how to check the status. Given the lack of annotation coverage and output schema, the description fails to provide sufficient context for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with clear descriptions (e.g., 'Cloud PostgreSQL instance number to create read replica for'), so the baseline is 3. The tool description itself adds no parameter-level meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb and resource: 'Create a read replica for a Cloud DB for PostgreSQL instance'. It specifies the exact action and the target resource, and the name aligns with sibling tools like ncloud_delete_postgresql_read_replica, distinguishing this creation action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, such as needing an existing primary instance, nor does it contrast with creating a separate instance or using the delete replica tool. Usage is only implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_public_ipB
Create a new public IP instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | No | Server instance number to associate with immediately | |
| publicIpDescription | No | Description for the public IP |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds little beyond the tool name and the destructiveHint annotation. It confirms this is a creation operation, but does not disclose potential implications such as billing, immediate availability, or that the resource persists and must be deleted later. There is no mention of required permissions or region constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that states the primary purpose without extraneous information. Every word is necessary, and it is immediately clear what the tool does. This is efficient and appropriately structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the simple schema and annotations, the description is too minimal for a cloud resource creation tool. It does not mention optional association behavior, lifecycle implications, or the response structure (no output schema exists). An agent would need additional context to understand the full scope of the operation and its consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents both parameters (serverInstanceNo and publicIpDescription) with clear descriptions, so the description does not need to repeat them. The description adds no additional meaning about parameter usage or relationships, which maintains the baseline score of 3 given 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new public IP instance' clearly identifies the action (create) and the resource (public IP instance). This distinguishes it from sibling tools like ncloud_list_public_ips, ncloud_associate_public_ip, and ncloud_delete_public_ip, which perform different operations on the same resource. The verb and resource are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that this should be used when a new public IP is needed, or that existing IPs should be associated via ncloud_associate_public_ip. No prerequisites or exclusions are stated, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_roleA
Create a new IAM role. A role is only a container for policies: creating it grants nothing until policies are attached (POST /api/v1/roles/{roleNo}/policies) and a role target is set (POST /api/v1/roles/{roleNo}/entities/account for Account roles, /entities for Server and Service roles) — those endpoints have no MCP tool yet. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags as a key-value map, max 20 per resource. Example: {"env":"dev","team":"a"} | |
| dryRun | No | If true, returns a preview without actually creating the role | |
| descCont | No | Description of the role (0-300 bytes) | |
| roleName | Yes | Role name (3-100 chars: Korean/Japanese/English letters, digits, '.', '_', '-'; must start with a letter) | |
| roleType | Yes | Role type: Server (VPC server resource, no access key needed), Account (grants the main account's console/portal access to a sub account via role switching), Service (inter-service access) | |
| isMyAccount | No | ⚠️ Ignored — createRole has no isMyAccount field, so this value is NOT sent. It belongs to the separate 'add Account role target' API (POST /api/v1/roles/{roleNo}/entities/account). Kept only for backward compatibility | |
| sessionExpirationSec | No | Session expiration time in seconds: 600, 1800, 3600, or 10800. REQUIRED when roleType is Account |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false in annotations, the description carries meaningful weight: it discloses that creating a role has no immediate permission effect and that subsequent required actions are unavailable via MCP. It also documents dryRun as a preview mode, adding behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences deliver the core action, the key caveat about roles being empty containers, the unavailable follow-up endpoints, and the dryRun recommendation with no wasted words. The primary purpose is front-loaded and each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description captures the most important contextual risk (role creation grants nothing) and clearly states that policy attachment and role-target endpoints are not exposed as MCP tools, which is critical for an agent planning subsequent steps. Since there is no output schema, the omission of return-format details is acceptable. It doesn't address authorization requirements, but the parameter schema covers the remaining operational details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all seven parameters, including roleType and sessionExpirationSec, are already fully documented in the schema. The description adds only a minor dryRun usage hint and does not provide significant additional parameter meaning beyond what the schema supplies. A baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Create a new IAM role,' clearly identifying the verb and resource. It further distinguishes itself from sibling policy/group tools by explaining that a role is only a container that grants nothing until policies and targets are attached, making its exact scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys that this tool only creates the role shell and that the necessary follow-up steps (policy attachment and role target setting) have no MCP tool yet, so an agent won't mistakenly expect full IAM setup. It also advises using dryRun=true for a no-side-effect preview. However, it stops short of naming alternative sibling tools or explicit when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_route_tableA
Create a new route table in a VPC
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to create route table in | |
| routeTableName | No | Route table name (max 30 characters) | |
| routeTableDescription | No | Description for the route table | |
| supportedSubnetTypeCode | Yes | Supported subnet type (PUBLIC or PRIVATE) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false, and the description adds no additional behavioral context. It does not disclose side effects, permission requirements, or whether the operation is asynchronous or returns a resource ID, which is a notable gap for a mutating create operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that conveys the core purpose without any fluff or repetition. It is front-loaded and earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward create operation with well-documented schema parameters, the description is minimally adequate. However, it omits any mention of return values or side effects, and the lack of an output schema places more burden on the description to clarify expected outcomes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters (vpcNo, routeTableName, routeTableDescription, supportedSubnetTypeCode) already have detailed descriptions in the schema. The tool description adds no extra parameter semantics, which is acceptable given the schema's completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new route table in a VPC' clearly states a specific verb and resource, and the VPC context distinguishes it from sibling route table operations like delete or list. It is unambiguous and easily understood.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the verb 'Create'—use when a new route table is needed. However, there is no explicit guidance on when to prefer this tool over alternatives, nor any mention of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_rule_directlyB
Create a Cloud Insight event rule by directly specifying the monitor group (targets) and metrics group (rule template) inline, without pre-created groups.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) | |
| groupDesc | No | Description (<= 300 chars) | |
| groupName | Yes | Name of the rule group (1-100 chars) | |
| asgPolicys | No | VPC Auto Scaling group policies | |
| cfTriggers | No | Cloud Functions trigger names | |
| metricsGroup | Yes | Metrics group definition (CreateOrUpdateMetricsGrpDto) | |
| monitorGroup | Yes | Monitor group definition (MonitorGrpDto) | |
| classicAsgPolicys | No | Classic Auto Scaling group policies | |
| recipientNotifications | No | Notification recipient groups | |
| personalNotificationRecipients | No | Personal notification recipients |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Only annotation is destructiveHint=false, so the description carries most of the burden. It discloses that the monitor/metrics groups are supplied inline rather than pre-created (a meaningful behavioral trait), but does not state whether this creates the groups as side effects, permission requirements, or validation constraints. Partial coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that states the action, the mechanism, and the constraint with no filler. Efficient, though slightly terse given the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex mutation tool with 10 params, deep nested objects, and only one weak annotation, the description is thin – it omits the temporaryGroup semantics, notification behavior, and the multi-entity creation model. The rich schema compensates for parameter detail but not for behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 10 parameters. The description adds marginal value by glossing monitorGroup as 'targets' and metricsGroup as 'rule template', clarifying their roles, but gives no syntax or relationship detail beyond that. Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Create a Cloud Insight event rule') and identifies its differentiator: specifying the monitor group and metrics group inline 'without pre-created groups'. This separates it from sibling creators like create_monitor_group/create_metrics_group, though it does not name them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'without pre-created groups' implies the condition under which this tool is preferred, but it never states the alternative tool or the when-not-to-use case explicitly. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_rule_groupB
Create a new Cloud Insight event rule group for monitoring alerts. Links existing monitor groups (targets) and metrics groups (rule templates) and optional notification recipients.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without creating the rule group (default: false) | |
| prodKey | Yes | Product key (cw_key) for the target service | |
| groupDesc | No | Description (<= 300 chars) | |
| groupName | Yes | Name of the rule group (1-1000 chars) | |
| asgPolicyList | No | Auto Scaling group policies | |
| metricsGroupKey | Yes | Metrics group (rule template) IDs to apply (at least one) | |
| monitorGroupKey | Yes | Monitor group (target group) IDs to monitor (at least one) | |
| suspendRuleItems | No | Rule items to suspend ([{resourceId, metricGroupItemId}]) | |
| recipientNotifications | No | Notification recipient groups | |
| personalNotificationRecipients | No | Personal notification recipients |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The destructiveHint=false annotation covers the safety profile, and the description consistently frames this as a creation that 'links existing' groups (a prerequisite insight). However it does not mention the dryRun preview option, permission requirements, or that the required monitor/metrics groups must already exist, which the schema does not state either.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the core action, no filler. Efficient for the amount of information conveyed, though it could have used the second sentence to route to alternatives rather than repeat the linking behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and this is a 10-parameter write operation with nested objects. The description gives the essential intent but omits the dryRun preview (a useful safety affordance), suspendRuleItems, and ASG policy behavior, which an agent must reconstruct from the schema alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 10 parameters including dryRun, suspendRuleItems, and asgPolicyList. The description only restates the three conceptual inputs (monitor groups, metrics groups, optional notification recipients), adding no syntax or constraint detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Create a new Cloud Insight event rule group for monitoring alerts,' which clearly distinguishes it from update_rule_group, get_rule_group, and create_rule_directly. It also names what the group links. It stops short of explicitly contrasting with the similar-sounding create_rule_directly sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for monitoring alerts' implies the context, and the linking of existing monitor/metrics groups implies the operation requires prior entities, but there is no explicit when-to-use vs when-not guidance or named alternative (e.g. create_rule_directly, copy_rule_group).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_serverA
Create a new server instance. For KVM (Gen3): use serverImageNo + serverSpecCode; for the boot volume (blockStorageMappingList order 0), prefer CB2 unless the user asks otherwise — CB2 is the recommended default for Gen3 KVM (volume type cannot be changed after creation). For XEN (Gen2): use serverImageProductCode + serverProductCode, or serverImageNo + serverSpecCode. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, returns a preview without actually creating the server | |
| subnetNo | Yes | Subnet number | |
| serverName | No | Server name (lowercase+numbers+hyphen, 3-30 chars) | |
| initScriptNo | No | Init script number | |
| loginKeyName | No | Login key name for SSH access | |
| serverImageNo | No | Server image number from ncloud_get_server_images (required for KVM/Gen3) | |
| serverSpecCode | No | Server spec code from ncloud_get_server_specs (required for KVM/Gen3, e.g., c2-g3, s2-g3) | |
| placementGroupNo | No | Placement group number | |
| feeSystemTypeCode | No | Fee system type (MTRAT: hourly, FXSUM: monthly) | |
| serverDescription | No | Server description | |
| serverProductCode | No | Server product code (legacy, XEN/RHV only, use with serverImageProductCode) | |
| networkInterfaceList | No | Network interface configuration list | |
| associateWithPublicIp | No | Associate a new public IP on creation | |
| serverImageProductCode | No | Server image product code (legacy, XEN/RHV only) | |
| blockStorageMappingList | No | Block storage mapping — KVM (Gen3) only. Selects the boot volume type (order 0) and/or creates additional volumes at server creation. Recommendation: for a KVM boot volume set order 0 + blockStorageVolumeTypeCode 'CB2' unless the user asks otherwise. If omitted entirely, the API default (CB1) is used. Not supported on XEN (Gen2). | |
| isProtectServerTermination | No | Enable termination protection | |
| memberServerImageInstanceNo | No | Member server image instance number (custom image) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral details beyond the annotations (destructiveHint: false): volume type cannot be changed after creation, dryRun preview behavior, and the recommendation for CB2. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, well-structured, and front-loaded with the core purpose. Every sentence provides essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex parameter interactions (18 parameters), the description provides sufficient guidance for the critical choices (gen-specific parameters, volume type recommendation, dryRun). No output schema exists, but the description doesn't need to explain return values as the tool's output is straightforward.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds significant meaning by grouping parameters for KVM vs XEN, explaining the blockStorageMappingList usage for boot volumes, and recommending defaults. This adds value beyond the schema's individual property descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose ('Create a new server instance') and immediately distinguishes between KVM (Gen3) and XEN (Gen2) server types, specifying which parameters to use for each. This differentiates it from sibling tools like ncloud_terminate_server, ncloud_list_servers, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use serverImageNo+serverSpecCode vs serverImageProductCode+serverProductCode based on the generation, recommends CB2 for KVM boot volumes, and suggests using dryRun=true for preview. It does not explicitly state when not to use this tool, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_server_imageB
Create a server image from an existing server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverImageName | No | Name for the new server image | |
| serverInstanceNo | Yes | Server instance number to create image from | |
| serverImageDescription | No | Description for the new server image |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations only include destructiveHint=false. The description does not disclose any additional behavioral traits such as permissions required, whether the server is affected, asynchronous nature, or side effects. It adds no context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no extraneous information. It clearly conveys the core function in ten words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create operation with schema-covered parameters, the description is minimally sufficient. However, there is no output schema and no mention of return values, prerequisites, or potential side effects, and it does not differentiate from similar create-image tools, leaving some contextual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all three parameters. The description does not add any extra parameter details or clarify relationships, but the schema already documents them, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Create) and resource (server image) from a source (existing server instance). It does not explicitly distinguish from sibling tools like ncloud_create_member_server_image or ncloud_create_server_image_from_snapshot, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No information about when to use this tool versus alternatives, any prerequisites (e.g., server instance must be stopped or running), or exclusions. The description provides no usage context beyond the basic action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_server_image_from_snapshotA
Create a server image from block storage snapshots
| Name | Required | Description | Default |
|---|---|---|---|
| serverImageName | No | Name for the new server image | |
| originalServerImageNo | Yes | Original server image number | |
| serverImageDescription | No | Description for the new server image | |
| blockStorageSnapshotInstanceNoList | Yes | List of block storage snapshot instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include destructiveHint=false, so the agent knows this is not a destructive operation. The description adds no further behavioral context (e.g., whether the operation is asynchronous, effects on the snapshots, or required states). Since annotations already cover the safety profile, the description is adequate but not enriching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence ('Create a server image from block storage snapshots') that is front-loaded with the action and resource. It contains no redundant words or irrelevant details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with no output schema, the description adequately covers the action and source. The schema fully documents parameters. The description lacks details about prerequisites or asynchronous behavior, but is sufficient for a straightforward image creation tool given the available annotations and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% description coverage for all parameters, so the description does not need to explain basic parameter meaning. It adds the contextual hint that the source is block storage snapshots, but it does not elaborate on relationships between originalServerImageNo and blockStorageSnapshotInstanceNoList. Baseline of 3 is appropriate given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' and identifies the resource 'server image' with the source 'block storage snapshots', which clearly differentiates it from sibling image-creation tools like ncloud_create_server_image and ncloud_create_member_server_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the specific use case (creating a server image from block storage snapshots), which implicitly guides the agent to select this tool when working with snapshots. However, it does not explicitly name alternative tools or provide exclusionary guidance, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_snapshotA
Create a snapshot from a block storage instance. The source volume is sent to the API as 'originalBlockStorageInstanceNo' — either parameter name is accepted here. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating | |
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to the client region | |
| snapshotTypeCode | No | Snapshot type — XEN (Gen2, HDD/SSD volumes) ONLY: FULL (default) or INCREMENTAL. INCREMENTAL requires an existing full snapshot of the same volume and is capped at 7 per full snapshot. KVM (Gen3, CB1/CB2/FB1/FB2 volumes) has no snapshot type: the API accepts this parameter on a KVM volume but SILENTLY IGNORES it and creates a FULL snapshot (verified against the live API), so do not rely on it there — omit it for KVM volumes. | |
| blockStorageInstanceNo | No | Block storage instance number to create snapshot from. Sent to the API as originalBlockStorageInstanceNo. Provide this or originalBlockStorageInstanceNo. | |
| blockStorageSnapshotName | No | Name for the snapshot (3-30 chars: letters, digits, '-', '_'). Auto-generated when omitted | |
| originalBlockStorageInstanceNo | No | Same as blockStorageInstanceNo, spelled with the Ncloud API's own parameter name. Takes precedence when both are given. | |
| blockStorageSnapshotDescription | No | Description for the snapshot (max 1000 bytes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations (destructiveHint=false) by explaining the parameter alias behavior and the dryRun preview capability. This helps the agent understand how the tool interacts with the API and what 'preview' mode does. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only three sentences, front-loaded with the core purpose. Every sentence provides necessary information: the action, the alias nuance, and the dryRun preview. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a rich schema (100% coverage, detailed param semantics) and an annotation (destructiveHint=false), which lowers the burden on the description. The description is clear about the action and preview capability, but it does not mention return values or response format. Given that there is no output schema, a brief note about the response would improve completeness, but the overall tool definition is minimally sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description repeats the alias information already in the schema (originalBlockStorageInstanceNo) but does not add new semantic meaning beyond what the schema provides. The dryRun mention is also already in the schema. Thus, the description adds no significant value beyond the structured parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a snapshot') and identifies the resource ('block storage instance'). It also adds the useful detail about the API parameter name alias, which helps distinguish this tool from other snapshot-related tools like list_snapshots or delete_snapshots.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool vs alternatives, but the dryRun=true hint provides a mild usage suggestion. The tool's name makes its purpose obvious, and the description implies usage through its clarity. However, no exclusions or alternative tool references are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_sub_accountA
Create a new sub account (IAM user). Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | No | Description (0-300 bytes) | |
| name | Yes | Sub account username (2-30 chars) | |
| tags | No | Tags as a key-value map, max 20 per resource. Example: {"env":"dev","team":"a"} | |
| No | Email address (6-100 chars) | ||
| dryRun | No | If true, returns a preview without actually creating the sub account | |
| loginId | Yes | Login ID (3-60 chars, English letters/numbers/special chars . @ - _, must start with letter) | |
| password | No | Login password (8-16 chars, required if needPasswordGenerate is false) | |
| isMfaMandatory | No | Whether two-factor authentication is required | |
| apiAllowSources | No | Allowed API access sources. Only applied when useApiAllowSource is true | |
| canConsoleAccess | Yes | Whether to enable console access | |
| consolePermitIps | No | Allowed console access IP ranges. Only applied when useConsolePermitIp is true | |
| needPasswordReset | Yes | Whether to notify password change on first login | |
| useApiAllowSource | No | Restrict API access to specific sources. true: only apiAllowSources may call the API, false: any source | |
| useConsolePermitIp | No | Restrict console access to specific IP ranges. true: only consolePermitIps may sign in, false: any IP | |
| canAPIGatewayAccess | Yes | Whether to enable API Gateway access (creates access key) | |
| needPasswordGenerate | No | If true, auto-generate password. If false, must provide password manually. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states that dryRun=true previews without actually creating, which directly informs the agent about a safe testing mode for an otherwise mutating operation. The annotation only says destructiveHint=false, which is mildly contradicted by the fact that creating a sub account is a significant write action, but dryRun is disclosed. It doesn't mention that canAPIGatewayAccess creates an access key, but the schema covers that partially. Overall the description adds useful behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, concise and front-loaded with the core purpose. The dryRun hint is a useful addition without bloat. It loses one point for not adding any other high-value guidance that could fit in the same space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 16 parameters, nested objects (apiAllowSources), and no output schema, the description is minimal. The schema carries most of the load, and the description doesn't explain the interplay between canAPIGatewayAccess and access key creation, or the password generation flag. It's adequate but not complete for a complex creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 16 parameters. The description adds no new parameter-level meaning except pointing to dryRun. Thus a baseline 3 is appropriate; it doesn't compensate with extra context because none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new sub account (IAM user)' uses a specific verb and resource, and clarifies the domain concept by equating sub account with IAM user. It doesn't explicitly distinguish from sibling tools like ncloud_create_sub_account_access_key, but the core action is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by saying 'Use dryRun=true to preview without creating,' which gives a testing path. However, it doesn't state when to use this vs alternatives like creating an access key or when dryRun should be used in a workflow. It provides no explicit when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_sub_account_access_keyA
Issue a new API access key (access key + secret key) for a sub account, so that account can call the Ncloud API. The response contains the secret key (keySecret) and it CANNOT be retrieved again afterwards — store it securely and do not paste it into shared logs or chats. The sub account must have API Gateway access enabled (canAPIGatewayAccess). A sub account holds at most TWO access keys: a third issue attempt fails with 409 '최대 허용값을 초과하였습니다' (verified against the live API; the limit is not in the API docs), so delete an unused key first, or deactivate one with ncloud_set_sub_account_access_key_status when rotating.
| Name | Required | Description | Default |
|---|---|---|---|
| subAccountId | Yes | Sub account ID to issue the access key for (see ncloud_list_sub_accounts) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint: false, so the description carries the full behavioral burden — and it delivers. It discloses the one-time-only secret exposure ('it CANNOT be retrieved again afterwards'), the undocumented two-key limit verified against the live API, the exact 409 error message ('최대 허용값을 초과하였습니다'), and the API Gateway access prerequisite. All of this goes well beyond the minimal annotation, and nothing contradicts destructiveHint: false since issuing a key is non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences, front-loaded with the core action and the security-critical warning (secret cannot be retrieved again) before prerequisites and limit details. Every sentence carries non-redundant information; even the parenthetical about live-API verification earns its place by signaling the reliability of a limit absent from the API docs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description names the critical return value (keySecret) and its irrecoverable nature, covers the failure mode and remediation for the two-key limit, and states the prerequisite. For a tool with a single required parameter, nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — subAccountId is already documented in the schema with a pointer to ncloud_list_sub_accounts for lookup. The description adds helpful context about the target sub account's state (API Gateway access, two-key limit) but does not add meaning to the parameter itself, so the rubric's baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Issue'), a concrete resource ('new API access key for a sub account'), and the downstream purpose ('so that account can call the Ncloud API'). The phrase 'new API access key (access key + secret key)' clearly delineates it from sibling key-management tools like ncloud_set_sub_account_access_key_status, ncloud_delete_sub_account_access_key, and ncloud_list_sub_account_access_keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the prerequisite ('The sub account must have API Gateway access enabled (canAPIGatewayAccess)') and provides a when-not rule: a third key fails with 409, so delete an unused key first or 'deactivate one with ncloud_set_sub_account_access_key_status when rotating'. This names the exact alternative tool and the condition that should route the agent away from a direct creation call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_subnetB
Create a new subnet in a VPC. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to create the subnet in | |
| dryRun | No | If true, returns a preview without actually creating the subnet | |
| subnet | Yes | Subnet CIDR block (e.g., 10.0.1.0/24) | |
| zoneCode | Yes | Zone code (e.g., KR-1, KR-2) | |
| subnetName | No | Subnet name (max 30 characters) | |
| networkAclNo | Yes | Network ACL number to associate | |
| usageTypeCode | No | Usage type code (GEN, LOADB, BM, NATGW). Default: GEN | |
| subnetTypeCode | Yes | Subnet type code (PUBLIC or PRIVATE) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description repeats the dryRun behavior already documented in the schema parameter. With destructiveHint=false provided in annotations, the description adds no new behavioral transparency beyond what structured data already communicates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary purpose and a useful dryRun tip. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema fully documents parameters, but the description does not mention return values, prerequisites (e.g., existing VPC, CIDR constraints), or failure behavior. For a simple create tool with rich schema, this is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all 8 parameters (100% coverage), so the description does not need to add parameter details. The baseline of 3 applies because the schema already carries the full explanatory burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Create), the resource (subnet), and the context (in a VPC), making the tool's purpose immediately obvious. It does not explicitly contrast with sibling tools like ncloud_nks_add_subnet, but the core intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is the dryRun tip, which explains how to preview without creating. There is no mention of when to prefer this tool over alternatives, prerequisites like an existing VPC, or scenarios where it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_target_groupB
Create a new target group for a load balancer
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| targetNoList | No | List of target numbers to bind to the target group at creation | |
| targetTypeCode | Yes | Target type code (VSVR) | |
| healthCheckPort | No | Health check port | |
| targetGroupName | No | Target group name (max 30 characters) | |
| targetGroupPort | No | Target group port number | |
| healthCheckCycle | No | Health check cycle in seconds (5-300, default: 30) | |
| algorithmTypeCode | No | Load balancing algorithm (RR, LC, SIPHS, MH) | |
| healthCheckUrlPath | No | Health check URL path (for HTTP/HTTPS) | |
| healthCheckUpThreshold | No | Healthy threshold count (2-10, default: 2) | |
| targetGroupDescription | No | Target group description | |
| healthCheckDownThreshold | No | Unhealthy threshold count (2-10, default: 2) | |
| healthCheckProtocolTypeCode | No | Health check protocol (HTTP, HTTPS, TCP) | |
| targetGroupProtocolTypeCode | Yes | Target group protocol type (HTTP, HTTPS, TCP, PROXY_TCP) | |
| healthCheckHttpMethodTypeCode | No | HTTP method type for health check (HEAD, GET). Required if healthCheckProtocolTypeCode is HTTP or HTTPS |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false in annotations, the description carries the burden of behavioral disclosure. It does not mention that the target group may need to be attached to a load balancer later, what the response contains (e.g., targetGroupNo), or any side effects. The description is minimal and does not add meaningful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb, and contains no fluff. It earns its place by adding the load balancer context, making it appropriately sized and structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 15 parameters and no output schema, the description is incomplete. It does not explain the target group's role in load balancing, when it should be created relative to load balancers, or what the expected response is. The agent would need to rely on schema and sibling names, which is insufficient for confident invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description itself adds no parameter-level information, but all parameters already have descriptions in the schema. This is acceptable but not enhanced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Create') and resource ('a new target group for a load balancer'), which distinguishes it from sibling tools like list/get/change/delete target groups. It adds the load balancer context, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives, such as creating a load balancer first or modifying an existing target group. It lacks prerequisites (e.g., existing VPC) and does not mention related tools like change_target_group_config or list_target_groups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_vpcA
Create a new VPC. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating the VPC | |
| vpcName | No | VPC name (max 30 characters) | |
| ipv4CidrBlock | Yes | VPC IPv4 CIDR block (e.g., 10.0.0.0/16) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include destructiveHint=false, so safety is already covered. The description adds the dryRun=true option for preview, which is a useful behavioral detail. However, it does not disclose what happens on success (e.g., return value) or any other side effects beyond what dryRun implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: the first states the primary action, the second provides a valuable dryRun tip. No unnecessary words, and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple create operation with full parameter coverage and a non-destructive annotation, the description is complete enough. It could mention return values or async behavior, but these are not critical given the simplicity and high schema coverage. The dryRun tip adds useful context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters clearly documented. The description only repeats the dryRun behavior already present in the schema, adding no new semantic meaning for vpcName or ipv4CidrBlock. Baseline 3 is appropriate when the schema handles parameter explanation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create a new VPC' uses a specific verb and resource, clearly distinguishing it from sibling tools like ncloud_delete_vpc, ncloud_list_vpcs, and other ncloud_create_* tools. The purpose is unambiguous and directly tied to the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance is provided. The usage is implied by the name and description ('use when you need to create a VPC'), but there is no mention of alternatives or prerequisites, such as needing a VPC before subnets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_create_vpc_peeringA
Create a new VPC Peering connection between two VPCs. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating the resource | |
| sourceVpcNo | Yes | Source (requester) VPC number | |
| targetVpcNo | Yes | Target (accepter) VPC number | |
| targetVpcName | No | Target VPC name (required for cross-account peering) | |
| vpcPeeringName | No | VPC Peering name (3-30 chars; lowercase letters, numbers, hyphens; must start and end with an alphanumeric character) | |
| targetVpcLoginId | No | Target VPC owner login ID (required for cross-account peering) | |
| vpcPeeringDescription | No | Description for the VPC Peering |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=false, so the description does not need to restate that this is a non-destructive operation. It adds the dryRun behavior, which is useful, but does not disclose other behavioral aspects like the need for the peering to be accepted by the target VPC, or that cross-account peering requires additional parameters. This is moderate additional context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the primary purpose, and provides a practical tip in the second sentence. Every word earns its place; no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With seven parameters, no output schema, and minimal annotations, the description is somewhat sparse. It does not mention cross-account peering prerequisites (though the schema does) or the acceptance workflow involving accept_reject_vpc_peering. The schema covers parameter meanings, but the description leaves out operational context needed for correct invocation in more complex scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all seven parameters. The description only mentions dryRun, which is already described in the schema ('If true, returns a preview without actually creating the resource'), so it adds little semantic value beyond the structured field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Create a new VPC Peering connection between two VPCs.' It uses a specific verb with a specific resource and differentiates from sibling tools like list_vpc_peerings, get_vpc_peering_detail, accept_reject_vpc_peering, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a concrete usage tip for dryRun ('Use dryRun=true to preview without creating') but does not clarify when to use this tool versus related alternatives such as accept_reject_vpc_peering. There is no explicit 'when to use' or 'when not to use' guidance, so the context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_apply_file_exportAIdempotent
Request a file export from a Data Box NAS to an Object Storage bucket; each file needs a 30+ char description and a type for the export review. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns the request without sending it | |
| fileList | Yes | Files to export with review metadata | |
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) | |
| bucketName | Yes | Target bucket name (see ncloud_databox_list_buckets) | |
| nasInstanceNo | Yes | Source NAS instance number (see ncloud_databox_list_nas) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the mutation's safety profile is covered. The description hints that an 'export review' gates the request, which adds useful context, but it never states whether the operation is synchronous or that it kicks off an approval workflow, nor any rate limits. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core action, no filler. Slightly under-informative rather than bloated, so high marks for structure but not maximal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation with no output schema and rich nested parameters, the description covers purpose, mandatory review metadata, and the dry-run escape hatch. It omits what happens after submission (review/approval, how to poll status), which an agent would want given the 'export review' gate it hints at.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all five parameters (including the nested fileList fields, enum types, and the 30+ char description rule) are already documented. The description retreads the dryRun and description-length facts rather than adding format or syntax beyond the schema. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource with both endpoints: 'Request a file export from a Data Box NAS to an Object Storage bucket.' The direction (NAS -> bucket) plus the per-file metadata requirements make it unmistakable from the sibling ncloud_databox_apply_file_import without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one conditional usage cue ('Use dryRun=true to preview') but offers no guidance on when to use this versus alternatives like ncloud_datafence_create_file_export or the read-side ncloud_databox_list_export_requests/get_export_request. Implied context only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_apply_file_importAIdempotent
Request a file import from an Object Storage bucket into a Data Box NAS (up to 5 files, 500 MB each). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns the request without sending it | |
| fileList | Yes | Files to import (up to 5) | |
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) | |
| bucketName | Yes | Source bucket name (see ncloud_databox_list_buckets) | |
| nasInstanceNo | Yes | Target NAS instance number (see ncloud_databox_list_nas) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds value beyond them with the batch/volume caps (5 files, 500 MB each) and the dryRun preview behavior, which an agent cannot infer from structured fields alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the core action and its limits come first, the preview tip second. Nothing is redundant and nothing needs reordering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a request-submitting tool with no output schema, the description never says what happens after the request is accepted (e.g., whether the result must be polled via ncloud_databox_get_import_request) or whether the call is synchronous. Limits and the dryRun flag are covered, but the post-invocation flow is left to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters, making 3 the baseline. The description only restates the dryRun meaning and adds the 500 MB ceiling that the schema does not mention, which is marginal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (import) with an explicit source (Object Storage bucket) and target (Data Box NAS), plus concrete limits. It is not merely a restatement of the name. It stops short of distinguishing itself from the very similar ncloud_datafence_create_file_import, so it lands at 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Use dryRun=true to preview" is a useful operational hint, but it is parameter guidance rather than when-to-use/when-not guidance. There is no mention of prerequisites, sequencing with ncloud_databox_list_buckets/nas, or alternatives, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_get_export_requestCRead-only
Get a file export request of a Data Box.
| Name | Required | Description | Default |
|---|---|---|---|
| exportNo | Yes | Export request number (see ncloud_databox_list_export_requests) | |
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation. The description provides no additional behavioral context beyond the annotation, such as response format, pagination, error behavior, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It is appropriately concise for a simple getter tool, though it offers no structural elaboration beyond the one sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a simple two-parameter schema fully covered and a readOnly annotation, the description covers the essential purpose. However, with no output schema present, it could do more to explain what is returned or any usage constraints, leaving a gap for contextual completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters are fully documented in the schema. The description does not add any meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and resource ('file export request of a Data Box'), which clearly identifies what the tool does. It does not explicitly differentiate from the quite similar sibling ncloud_databox_get_import_request, but the resource is distinct enough for an agent to recognize.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as ncloud_databox_list_export_requests or ncloud_databox_get_import_request. The usage is only implied by the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_get_import_requestCRead-only
Get a file import request of a Data Box.
| Name | Required | Description | Default |
|---|---|---|---|
| importNo | Yes | Import request number (see ncloud_databox_list_import_requests) | |
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read. The description adds nothing beyond that: no note on what happens for an unknown importNo, no linkage to the apply/list workflow, no indication of what state or fields are returned. For a read with annotations covering safety, the description contributes almost no extra behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the resource front-loaded and no filler. It is efficient, though it is arguably too terse to earn a 5 given the missing usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read with 100% schema coverage and no output schema, the description is minimally adequate. It omits usage context (list-then-get flow, error behavior), which would matter for an agent navigating the many databox siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both required parameters are documented there (including the hint to use ncloud_databox_list_import_requests for importNo and where to find dataBoxNo in the console). The description adds nothing to parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('file import request of a Data Box'), which is enough for an agent to know this retrieves a single import request rather than listing them. It does not explicitly contrast itself with ncloud_databox_list_import_requests or ncloud_databox_apply_file_import, but the singular/plural distinction carries the meaning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites, and does not name any alternative such as ncloud_databox_list_import_requests or ncloud_databox_apply_file_import. The agent must infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_list_bucketsARead-only
List Object Storage buckets usable as Data Box import source / export target.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the burden is lowered. The description adds the applicability scope but no behavior beyond that: it does not state whether the listing is region-scoped, account-wide, paginated, or how many results to expect, which matters for a bucket enumeration call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the resource front-loaded and the qualifying scope trailing. Nothing is wasted, though there is no further structure because there is no further content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only list tool with annotations covering the safety profile and no output schema to explain, the description supplies what an agent needs to route to it. The only mild gap is the absence of any note on scope/pagination of the returned bucket list.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema has nothing to document and the baseline of 4 applies. There is no parameter nuance the description could or should add.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ('List Object Storage buckets') with a scope qualifier that ties it to Data Box import/export, which distinguishes it from the many generic bucket-listing siblings (ncloud_list_buckets, ncloud_ncs_list_buckets, ncloud_datafence_list_buckets). It does not name those siblings explicitly, so the differentiation is implicit rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'usable as Data Box import source / export target' implies the context in which an agent should call this (selecting a source/target before apply_file_import or apply_file_export), but there is no explicit when-to-use statement, no mention of when a different bucket-listing tool is preferable, and no prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_list_export_requestsBRead-only
List file export requests of a Data Box.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-1000) | |
| pageSize | No | Items per page (1-1000) | |
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) | |
| applyEndDate | No | End datetime (yyyyMMddHHmmss) | |
| applyStartDate | No | Start datetime (yyyyMMddHHmmss) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the description's only remaining job is to add context such as pagination behavior, result ordering, or filtering semantics — and it adds none. It effectively restates the tool name with no behavioral disclosure beyond it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the resource and scope front-loaded and zero filler. Nothing in it is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list endpoint with a fully documented schema and no output schema, the definition is serviceable but thin: it omits pagination expectations, what an export request record contains, and how the date-range filters behave. Enough to call correctly, not enough to call confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with pageNo, pageSize, dataBoxNo, applyStartDate, and applyEndDate all documented inline, so the baseline is 3. The description contributes nothing extra, such as how date filters interact or what the page defaults are.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) plus a concrete resource (file export requests) scoped to a Data Box, so the agent knows it is a read/list operation. It does not, however, distinguish itself from nearby siblings such as ncloud_databox_get_export_request (single request) or ncloud_databox_list_import_requests (the import counterpart).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this list tool versus ncloud_databox_get_export_request for a single request, nor any mention of prerequisites or exclusions. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_list_import_requestsCRead-only
List file import requests of a Data Box.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-1000) | |
| pageSize | No | Items per page (1-1000) | |
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) | |
| applyEndDate | No | End datetime (yyyyMMddHHmmss) | |
| applyStartDate | No | Start datetime (yyyyMMddHHmmss) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered, but the description adds nothing beyond that: no pagination behavior, no note that results can be date-filtered, no indication of ordering or result volume. For a list endpoint with paging parameters, this is a thin behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or repetition. It is efficient, though its brevity is partly under-specification rather than disciplined concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema fully documents all five parameters and the readOnlyHint covers safety, and no output schema exists so return values need not be explained. Still, for a paginated, date-filterable list operation the description omits any mention of paging behavior or result scope, leaving a small but real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – every parameter (dataBoxNo, pageNo, pageSize, applyStartDate, applyEndDate) carries its own description including formats and ranges. The description adds no additional parameter meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('file import requests of a Data Box'), which is enough to separate it from the singular 'get_import_request' sibling and from export-request tools. It does not explicitly name those alternatives, so it falls just short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of prerequisites (the dataBoxNo is required), and no pointer to alternatives such as ncloud_databox_get_import_request for a single request or ncloud_databox_list_export_requests for the opposite direction. The agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_databox_list_nasCRead-only
List the NAS volumes of a Data Box.
| Name | Required | Description | Default |
|---|---|---|---|
| dataBoxNo | Yes | Data Box number (console: My Space > server details > Infra tab) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds essentially nothing beyond that — no pagination behavior, no result limits, no note on whether a Data Box with no NAS volumes returns empty or errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no waste. It is appropriately sized for the tool's simplicity, though it is so terse that it verges on under-specification rather than efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with no output schema, this is minimally adequate: the agent knows what it returns in broad terms. However, with no guidance on when to call it or how results are structured/paginated, it leaves real gaps for a Data Box workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single dataBoxNo parameter already includes a console navigation hint, so the schema carries the full burden. The description adds no format or constraint detail beyond what the schema provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (List) and resource (NAS volumes) scoped to a Data Box, which distinguishes it from the general ncloud_list_nas_volumes tool. It stops short of naming that sibling explicitly, so the differentiation relies on the agent noticing the 'of a Data Box' qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of alternatives such as ncloud_list_nas_volumes or the Data Box import/export listing tools. The agent gets no help deciding when this tool is the right choice over its many NAS- and Data Box-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_create_databaseA
Create a database in a Data Catalog catalog. The database name is appended to location as a sub-path (location 's3a://mybucket' + name 'mydatabase' → 's3a://mybucket/mydatabase'). Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Database name (1-128 chars, lowercase letters/digits/'_'/'-'/spaces only — pattern [a-z0-9_\-\s]+) | |
| dryRun | No | If true, returns a preview without actually creating the database | |
| location | Yes | Database location path, max 1000 chars (e.g. 's3a://mybucket'). The name is appended as a sub-path | |
| catalogId | Yes | Catalog ID (from getCatalogs) | |
| description | No | Database description (max 1000 chars) | |
| tagKeyTypeValueList | No | Tags to attach to the database |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond the sparse annotations (only destructiveHint=false) by explaining the sub-path concatenation with an example and mentioning dryRun preview. However, it does not address permissions, side effects of actual creation, or response behavior, and much of the behavior is also present in the schema descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first states the action; the second provides a concrete example and the dryRun tip. Every sentence earns its place, and the most important behavioral information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description and schema together cover required parameters, path construction, and preview mode. For a create operation without an output schema, the missing return-value or permission details are minor, and the provided information is sufficient for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by giving a concrete example of how 'name' and 'location' interact: location 's3a://mybucket' + name 'mydatabase' → 's3a://mybucket/mydatabase'. This clarifies relationship semantics beyond the individual property descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Create a database in a Data Catalog catalog.' It clearly distinguishes this tool from sibling operations like get_database, update_database, and create_scanner. The sub-path behavior adds concrete scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool (creating a database) and adds a practical usage tip: 'Use dryRun=true to preview without creating.' It does not explicitly name alternative tools, but the create-versus-read/update distinction is obvious enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_create_scannerA
Create a scanner that registers a data source as catalog tables — the standard path for exposing Object Storage or Iceberg data (and Cloud DB / JDBC sources) as queryable tables. Creating a scanner does not scan: run it with ncloud_datacatalog_run_scanner (or set scheduleType=CRON). Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Scanner name | |
| type | Yes | Data source type. OBJECT_STORAGE / ICEBERG require location; the Cloud DB types and JDBC require connectionId | |
| dryRun | No | If true, returns a preview without actually creating the scanner | |
| location | No | Scan path (e.g. 's3a://mybucket/test/'). REQUIRED when type is OBJECT_STORAGE or ICEBERG | |
| schedule | No | Cron expression (e.g. '1 0 * * *'). REQUIRED when scheduleType is CRON | |
| catalogId | Yes | Catalog ID (from getCatalogs) | |
| opAddType | Yes | How to update an existing table when the source schema gains columns. ADD_NEW_COLUMNS_ONLY: add new columns only, UPDATE_TABLE: update the table definition, IGNORE_UPDATE: ignore | |
| opDelType | No | How to update an existing table when source columns disappear. DEL_NO: ignore | |
| description | No | Scanner description | |
| connectionId | No | Connection ID (see ncloud_datacatalog_get_connections). REQUIRED when type is a Cloud DB type or JDBC | |
| databaseName | Yes | Output database name — where the scanned tables are created | |
| isMergeForce | No | Force table merging | |
| scheduleType | Yes | Run schedule. ON_DEMAND: only when requested, CRON: on a cron schedule (schedule is then required) | |
| excludePattern | No | Exclude pattern (e.g. '*.csv') | |
| includePattern | No | Include pattern (e.g. '*.xml') | |
| tablePrefixName | No | Prefix for the created table names | |
| scanFileLimitCnt | No | Scan only this many files, 1-100. Omit to scan everything. OBJECT_STORAGE only | |
| maxTableThreshold | No | Maximum number of tables the scanner may create | |
| isUseHivePartitionOnly | No | Recognize Hive-style partitions only |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false; the description adds substantive behavioral context beyond it: creation is decoupled from scanning ('Creating a scanner does not scan'), a scan requires an explicit run or CRON schedule, and dryRun=true previews without persisting. These are non-obvious behavioral facts an agent needs. It doesn't contradict the annotation. It stops short of covering reversibility or permission requirements, so not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with zero waste: the first defines purpose, the second clarifies the create-versus-scan lifecycle and names the sibling, the third covers the dryRun escape hatch. The most important distinction (create ≠ scan) is front-loaded second. No structured data is repeated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 19-parameter creation tool with no output schema, the description supplies the essential lifecycle context (create → run or schedule), names supporting tools (ncloud_datacatalog_run_scanner), and flags dryRun. The schema carries full parameter documentation. A minor gap is that the description never hints at what the call returns (e.g., scanner ID), which would help in the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3 — every parameter including the type-to-location/connectionId mapping is already documented in the schema. The description adds workflow-level context (dryRun, scheduleType=CRON, run_scanner) that reinforces parameter usage but doesn't convey meaning beyond what the schema's parameter descriptions already provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource — 'Create a scanner that registers a data source as catalog tables' — and further specifies the exact purpose: exposing Object Storage, Iceberg, Cloud DB, and JDBC sources as queryable tables. It also distinguishes itself from the sibling ncloud_datacatalog_run_scanner by explicitly stating 'Creating a scanner does not scan,' so an agent can tell them apart without inspecting schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use context ('the standard path for exposing Object Storage or Iceberg data (and Cloud DB / JDBC sources) as queryable tables'), names an alternative (ncloud_datacatalog_run_scanner), and states the condition that selects it ('run it with ncloud_datacatalog_run_scanner (or set scheduleType=CRON)'). It also tells the agent dryRun can preview without creating. This is a complete routing story.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_catalogsARead-only
Get Data Catalog list. Returns catalog ID, status, and metastore status.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's statement 'Get...' is consistent and adds minimal extra transparency. No additional behavioral traits (e.g., pagination behavior, rate limits) are disclosed beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that convey purpose and return fields with no wasted words. Front-loaded with the verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with pagination parameters and no output schema, the description is fairly complete. It could mention pagination behavior or that it returns a list, but it already states the returned fields. The schema covers parameters, so overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: both pageNo and pageSize have descriptions in the schema. The description does not add any extra meaning or context about the parameters beyond the schema, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets a Data Catalog list and specifies the returned fields (catalog ID, status, metastore status). The verb 'Get' and resource 'Data Catalog list' are precise, and the tool is distinguishable from sibling datacatalog tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidelines are provided. The description does not indicate when to use this tool over alternatives like get_databases or get_tables, nor does it specify any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_connectionBRead-only
Get connection detail information
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| connectionId | Yes | Connection ID (from getConnections) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description of 'Get connection detail information' is consistent but does not add behavioral context beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise at three words. No wasted text, though it sacrifices explanatory power. Could be slightly more detailed without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain what detail information is returned. It is too brief for a data catalog tool among many siblings. Agent lacks context on what 'detail' entails.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers both parameters with descriptions (100% coverage), so the tool description does not need to add parameter meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detail information about a connection. However, it does not differentiate from sibling tool 'get_connections' which likely returns a list; an agent new to the domain might not know the specific scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like get_connections. The input schema implies connectionId comes from getConnections, but the description itself offers no context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_connectionsBRead-only
Get connection list in a catalog
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| searchValue | No | Search keyword (connection name or description) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. Description adds no further behavioral detail (e.g., no mention of pagination, filtering behavior, or return format). Does not contradict annotations, but adds minimal value beyond the structured field.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 6 words, front-loaded and to the point. No extraneous information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with 4 parameters and no output schema, the description is minimal. It does not explain what a connection is, how the list is returned, or any constraints. Annotations cover safety, but overall context feels insufficient for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. Description does not add additional meaning or context beyond what the schema already provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly identifies the action (Get) and resource (connection list) with scope (in a catalog). Distinguishes from sibling ncloud_datacatalog_get_connection which retrieves a single connection. However, it's terse and could be more specific about what a connection represents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives (e.g., ncloud_datacatalog_get_connection for individual connections). Does not provide context for when not to use it or mention any prerequisites. Agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_databaseBRead-only
Get database detail information including tags
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| includeTags | Yes | Include tags in response (true/false) | |
| databaseName | Yes | Database name (from getDatabases) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the result includes tags, which supplements the readOnlyHint annotation. However, it does not disclose additional behavioral traits such as rate limits, authentication requirements, or response structure, beyond the minimal context from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words. It is front-loaded and concise, achieving clarity in minimum space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema, the description should better indicate what 'database detail information' encompasses. While it mentions tags, it does not list other likely fields (e.g., location, owner, creation time). The description is adequate but not fully informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all three parameters (catalogId, databaseName, includeTags). The description adds slight value by linking 'including tags' to the includeTags parameter, but it does not enhance understanding beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'database detail information', and 'including tags' adds specificity. It distinguishes from sibling 'ncloud_datacatalog_get_databases' which lists databases, while this retrieves details for a single database. However, it could explicitly mention that it returns full detail for a specific database.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus alternatives like 'ncloud_datacatalog_get_databases' or 'ncloud_datacatalog_get_table'. No context on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_databasesBRead-only
Get database list in a catalog
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID (from getCatalogs) | |
| searchValue | No | Search keyword (database name) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which covers the safety profile. The description adds no further behavioral detail beyond the basic retrieval action. It does not describe pagination, search behavior, or return structure. Acceptable but not additive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 5 words is extremely concise. While it conveys the core purpose, it could include a bit more context without becoming verbose. For a simple listing tool, this is nearly optimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, and the description does not explain what the returned data contains (e.g., list of database names, metadata). This lack of completeness could leave an agent unsure about the return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; all parameters have descriptions. The tool description does not add any meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb 'Get' and resource 'database list', clearly indicating it retrieves multiple databases within a catalog. It distinguishes from sibling tools like ncloud_datacatalog_get_database (singular) and ncloud_datacatalog_get_tables.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives (e.g., getCatalogs first to obtain catalogId, or getDatabases vs getTables). No context is provided about prerequisites or typical usage patterns.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_scannerARead-only
Get scanner detail information
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| scannerId | Yes | Scanner ID (from getScanners) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, which the description aligns with. No additional behavioral context added beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single short sentence, front-loaded, with no wasted words. Could be slightly more informative but efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing context about what the response contains. With no output schema, the description should describe the returned data shape, but it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter names and descriptions. The tool description adds no extra meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it retrieves detailed information about a scanner. Distinguishes from sibling tools like get_scanners (list), get_scanner_histories, run_scanner, and stop_scanner.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Schema description for scannerId hints at prerequisite to use get_scanners first, but no explicit when-to-use or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_scanner_historiesCRead-only
Get scanner execution history
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| scannerId | Yes | Scanner ID | |
| toTimestamp | Yes | End time in milliseconds (Unix timestamp) | |
| fromTimestamp | Yes | Start time in milliseconds (Unix timestamp) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds no behavioral context beyond that—e.g., it does not mention pagination support (pageNo, pageSize) or that a time range (fromTimestamp, toTimestamp) is required. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 4-word sentence, which is concise but perhaps too terse. It is front-loaded with the purpose, but a slightly longer description could provide essential context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should clarify what the tool returns (e.g., list of execution records with status, duration). It also does not mention that fromTimestamp and toTimestamp are required for time-range filtering. This incompleteness reduces the tool's usability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 6 parameters are fully described in the input schema (100% coverage). The tool description does not add any extra meaning or usage hints beyond what the schema provides, so it meets the baseline but does not enhance understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get scanner execution history' clearly states the verb (get) and the resource (scanner execution history), effectively distinguishing it from sibling datacatalog tools like ncloud_datacatalog_get_scanners and ncloud_datacatalog_get_scanner. However, it lacks additional specificity about what the history includes (e.g., statuses, timestamps).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_datacatalog_get_scanner or ncloud_datacatalog_run_scanner. It does not mention any prerequisites, exclusions, or contextual hints for selecting this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_scannersARead-only
Get scanner list in a catalog
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| searchValue | No | Search keyword (scanner name or description) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint: true, which already signals safe read behavior. The description adds no additional behavioral context (e.g., pagination, filtering, or return format). It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence front-loading the purpose. Efficient but could be slightly expanded with key constraints like required parameter or scope. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description is minimally adequate for a list tool. It could mention that it returns a list of scanners or pagination details. However, parameters are well-documented in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage for all four parameters (catalogId, pageNo, pageSize, searchValue). The description adds no extra meaning beyond what is already in the schema. Baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get scanner list in a catalog' clearly specifies the action (get), resource (scanner list), and context (in a catalog). It distinguishes from sibling tools like ncloud_datacatalog_get_scanner (single scanner) and ncloud_datacatalog_get_scanner_histories (history data).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like ncloud_datacatalog_get_scanner or ncloud_datacatalog_get_scanner_histories. The description implies it is for listing, but does not state when not to use or provide context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_tableCRead-only
Get table detail information including properties
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the readOnlyHint annotation. It does not disclose any side effects, permissions, or return behavior, which is a missed opportunity given the absence of an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise but lacking structure or front-loading. It adequately conveys the purpose without waste, but could be more informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should clarify what 'table detail information' includes. Given numerous specific sibling tools, the vague 'including properties' falls short of providing complete context for the return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions (Catalog ID, Table name, Database name). The description adds no additional meaning, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Get table detail information including properties,' clearly indicating the tool's verb and resource. It distinguishes from siblings by implying a general table detail retrieval, though a sibling for properties exists, causing slight ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternative siblings like ncloud_datacatalog_get_table_schema or ncloud_datacatalog_get_table_properties. The description lacks any when-to-use or when-not-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_partition_keysBRead-only
Get table partition key list
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, so the description correctly implies a read operation. However, it adds no further context beyond the annotation, such as pagination behavior, performance considerations, or that it returns a list of keys. The description carries little additional transparency value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: one sentence, no filler. The key verb and resource are at the start. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple read tool with annotation covering safety, but the description does not mention the return format (list of partition key strings) or pagination. Given the number of similar siblings, a bit more context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 5 parameters are described in the schema (100% coverage), so the description does not need to add much. The description names no parameters; it relies on the schema. This meets the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('Get') and resource ('table partition key list'), distinguishing it from siblings like 'get_table_partitions' and 'get_table_schema_and_partition_keys'. It directly tells the agent what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., 'get_table_partitions' or 'get_table_schema_and_partition_keys'). Without differentiation, an agent might select the wrong tool for the task.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_partitionsCRead-only
Get table partition list
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation is present, but the description adds no behavioral context beyond that. It does not mention pagination (though schema implies it), potential large result sets, or any other behavioral traits. For a read-only list operation, the description should at least note the paginated nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundant words. It is front-loaded with the action. However, it may be too terse for full clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters including pagination controls, no output schema, and limited annotations, the description is incomplete. It does not explain what a partition list contains (e.g., partition values, locations). The agent may need to guess the return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with descriptions for all 5 parameters. The description does not add any extra meaning beyond what the schema already provides. Baseline 3 is appropriate since schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get table partition list' clearly states the verb and resource. It distinguishes from sibling tools like 'get_table_partition_keys' (which gets keys) and 'get_table' (which gets table metadata). However, it could be more specific about what a partition list entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. No prerequisites, context, or exclusions provided. The agent must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_propertiesCRead-only
Get table detailed properties
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation already indicates readOnlyHint: true, so the description does not need to restate that. However, it adds no behavioral context beyond the annotation, such as authentication needs or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with no extraneous words. However, it is arguably too terse, lacking detail that could be added without harming conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description does not hint at what 'detailed properties' includes. This leaves the agent uncertain about the return value, especially compared to more specific sibling tools like 'get_table_schema'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for each parameter. The description adds no extra meaning to the parameters; it merely restates the tool's purpose. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get table detailed properties' clearly states the action and resource. However, it does not differentiate from sibling tools like 'get_table' or 'get_table_schema', leaving ambiguity about what 'detailed' means.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. For example, it does not clarify when to use 'get_table_properties' over 'get_table' or 'get_table_schema'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_tablesBRead-only
Get table list in a catalog with optional filtering and sorting
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| location | No | Filter by location string | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| sortField | No | Sort field (tableName|databaseName|createTime) | |
| sortIsAsc | No | Sort ascending (true/false) | |
| tableName | No | Filter by table name | |
| dataFormats | No | Filter by data format (csv|json|xml|parquet|avro|orc|unknown|CLOUD_DB_FOR_MYSQL|CLOUD_DB_FOR_MSSQL|CLOUD_DB_FOR_MONGODB|CLOUD_DB_FOR_POSTGRESQL|JDBC) | |
| tagKeyValue | No | Filter by tag key:value | |
| databaseName | No | Filter by database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, and the description's verb 'Get' aligns with a read operation. However, the description adds no behavioral details beyond what annotations provide, such as pagination, filtering behavior, or side effects. With annotations covering the safety profile, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the core purpose. No unnecessary words; every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 10 parameters and no output schema, the description does not explain the return format, pagination behavior, or constraints. Essential context for an agent to properly invoke and interpret results is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are described in the schema. The description's mention of 'optional filtering and sorting' provides a high-level summary but does not add meaningful details beyond the schema. Baseline score of 3 is warranted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get table list), resource (tables), scope (in a catalog), and mentions optional filtering and sorting. However, it does not differentiate from sibling tools like ncloud_datacatalog_get_tables_by_database, which also lists tables but from a database perspective.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_datacatalog_get_tables_by_database or ncloud_datacatalog_get_table. Lacks context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_tables_by_databaseCRead-only
Get table list in a specific database
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only states 'Get table list', which is consistent with the readOnlyHint annotation. However, it provides no additional behavioral details such as pagination behavior (already in schema) or any side effects. Since annotations already declare read-only, the description adds minimal transparency beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It is front-loaded with the action and resource. However, it is too brief to cover all necessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should hint at the return format (e.g., list of table objects). It does not. The tool is simple but lacks completeness regarding what the response contains. Sibling tools like 'ncloud_datacatalog_get_table' suggest table details, but this is not clarified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 4 parameters with descriptions (100% coverage), so baseline is 3. The description does not add any extra meaning or context about the parameters; it relies entirely on the schema. No credit for repeating schema info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it retrieves a list of tables within a specific database, matching the tool name. However, it does not specify what information is included in the table list (e.g., names, metadata), and could better distinguish from sibling tools like 'ncloud_datacatalog_get_tables' which might not require a database scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus similar siblings such as 'ncloud_datacatalog_get_tables' or 'ncloud_datacatalog_get_table'. There is no mention of prerequisites, context, or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_schemaBRead-only
Get table schema (column names, types, descriptions)
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to reiterate safety. However, the description omits behavioral details like pagination support (pageNo, pageSize) or error handling, which are important for correct usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence of 8 words that directly conveys the tool's purpose. No wasted words, perfectly front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too brief for a tool with pagination parameters and no output schema. It does not explain the return format (list of columns with name/type/description) or mention that results may be paginated. This lack of detail could lead to incomplete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with descriptions for all parameters. The description adds no extra parameter-level meaning beyond the schema, which is the baseline expectation. No improvement or degradation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), resource (table schema), and output (column names, types, descriptions). It is specific and matches the tool name. However, it does not differentiate from sibling tools like get_table_schema_and_partition_keys, which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as get_table_schema_and_partition_keys or get_table. Given many similar data catalog tools, explicit usage context is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_schema_and_partition_keysARead-only
Get table schema and partition keys together
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds no extra behavioral context (e.g., permissions, rate limits, or what gets modified). It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It is appropriately concise, though it could be slightly expanded without harming brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not clarify the return format or pagination behavior, despite having pagination parameters (pageNo, pageSize). The tool combines two aspects, and more details would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 5 parameters, so the schema already documents each parameter. The description adds no additional meaning or context beyond what's in the schema, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get table schema and partition keys together' is a specific verb+resource combination. It clearly states the tool retrieves both schema and partition keys in a single call, distinguishing it from sibling tools like ncloud_datacatalog_get_table_schema and ncloud_datacatalog_get_table_partition_keys which likely return them separately.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for when both schema and partition keys are needed together, but it provides no explicit guidance on when to use this versus alternatives, nor any when-not-to-use conditions. With many sibling tools, clearer usage instructions would be beneficial.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_schema_by_versionBRead-only
Get table schema for a specific version
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| versionId | Yes | Schema version ID (from getTableSchemaVersions) | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which is consistent with the description. However, the description adds no additional behavioral insights beyond the schema's read-only nature. It does not mention potential pagination (given pageNo and pageSize parameters) or error conditions. With annotations covering the safety profile, the description is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at 7 words. It is front-loaded and to the point. However, it could include a bit more context (e.g., 'for the given catalogId, databaseName, tableName, and versionId') without becoming verbose. A single sentence is acceptable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks important context. It does not explain that versionId is obtained from a prior call (getTableSchemaVersions), nor does it indicate pagination behavior despite pageNo and pageSize parameters. With no output schema, the agent has no information about what the returned schema looks like. This is insufficient for a tool with 6 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 6 parameters are fully described in the input schema (100% coverage). The description adds no extra meaning beyond the parameter descriptions. Baseline 3 is appropriate since the schema already documents parameter purposes.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets a table schema for a specific version. This distinguishes it from sibling tools like ncloud_datacatalog_get_table_schema (which likely gets the latest) and ncloud_datacatalog_get_table_schema_versions (which lists versions). The verb 'Get' and resource 'table schema for a specific version' are precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention that versionId should come from getTableSchemaVersions, nor does it exclude use cases. The agent is left without context on prerequisites or when to prefer this over the non-versioned schema retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_schema_versionsBRead-only
Get table schema version history
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint: true, indicating it's a safe read operation. The description adds no extra behavioral context beyond that. Does not mention pagination, ordering, or any side effects. With annotations present, the bar is low but the description doesn't add value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single, front-loaded sentence. It is concise but could benefit from more detail without harming clarity. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, so the description should at least hint at the return format (e.g., list of versions). The presence of pageNo and pageSize suggests paginated results, but this is not mentioned. Incomplete for a tool with pagination and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all 5 parameters. The description adds no extra meaning beyond what the schema already provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Get' and resource 'table schema version history'. It distinguishes from sibling tools like ncloud_datacatalog_get_table_schema (current schema) and ncloud_datacatalog_get_table_schema_by_version (specific version) by implying it returns the history/versions list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. Does not explain when to paginate or that pageNo/pageSize parameters control pagination. Lacks prerequisites or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_get_table_tagsCRead-only
Get table tag list
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1~200 (default: 20) | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation indicates a safe read operation, and the description is consistent. However, the description adds no details about behavior beyond that, such as response format, empty results handling, or error scenarios. With annotations present, the lack of additional context results in a low score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of four words, which is concise but perhaps too minimal. It lacks any contextual framing or additional details that could help the agent, though it does not contain unnecessary words. It is functional but not optimally informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters and no output schema, the description is sparse. It does not mention what the return value contains (e.g., a list of tags with metadata), pagination behavior, or any prerequisites. Given the complexity of the input, more completeness would be expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All five parameters are described in the input schema with clear definitions (e.g., 'Page number (default: 1)', 'Catalog ID'). The description itself does not add any parameter-level information beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get table tag list' clearly specifies the action (Get) and the resource (table tag list), making the tool's purpose immediately understandable. However, it does not differentiate from sibling tools like ncloud_datacatalog_get_table or ncloud_datacatalog_get_table_schema, which limits clarity in context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It simply states what the tool does, leaving the agent to infer usage context from the tool name alone. No exclusions or situational advice are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_run_scannerB
Run (execute) a scanner to scan data sources
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| scannerId | Yes | Scanner ID to run |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only states the action ('run') but does not explain whether the operation is asynchronous, what side effects occur, whether permissions are needed, or what the response looks like. This lack of detail makes it hard for an agent to anticipate consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that conveys the core action. It is front-loaded and avoids fluff. However, it could be slightly more informative without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description should hint at the return value (e.g., execution ID, status). It does not. The tool triggers a scan, but the description fails to mention what the agent can expect as a result, leaving a significant information gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both parameters have descriptions), so the schema already documents the parameters. The description adds no additional meaning about the parameters (e.g., how to obtain catalogId/scannerId, or constraints). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Run (execute) a scanner') and the purpose ('scan data sources'). It distinguishes from sibling tools like 'get_scanners' which are read-only, making the tool's purpose specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives (e.g., when to stop a scanner). It does not mention prerequisites, how it differs from other datacatalog tools, or when to avoid using it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_stop_scannerAIdempotent
Stop a running scanner
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| scannerId | Yes | Scanner ID to stop |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true (idempotent) and destructiveHint=false (not destructive). The description adds no extra behavioral context beyond stating the action. It does not contradict annotations, but does not elaborate on side effects or state changes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, directly front-loaded with the action and resource. Every word is necessary; no wasted verbiage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description does not indicate what the tool returns (e.g., success message, scanner state). For a simple mutating action, this is minimally adequate but could be more informative about the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with 'Catalog ID' and 'Scanner ID to stop'. The tool description adds no additional parameter information, meeting the baseline for complete schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Stop a running scanner', using a specific verb (stop) and resource (scanner). This directly distinguishes it from sibling tools like ncloud_datacatalog_run_scanner (start) and ncloud_datacatalog_get_scanner (read).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as when to stop vs. run or get scanner. The description is too minimal to provide context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_update_databaseAIdempotent
Update a database's location and/or description. Tags are managed separately by ncloud_datacatalog_update_database_tag.
| Name | Required | Description | Default |
|---|---|---|---|
| location | No | New database location path | |
| catalogId | Yes | Catalog ID | |
| description | No | New database description (max 1000 chars) | |
| databaseName | Yes | Database name to update (from getDatabases) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the scoping detail that only location and/or description are updated, but it doesn't disclose behaviors like whether unspecified fields are left untouched or what happens if neither optional field is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The main purpose is front-loaded, and the sibling routing sentence earns its place by preventing misuse for tag updates.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update operation, the combination of a strong schema, clear annotations, and a scoped description is mostly complete. A minor gap is that the description doesn't explicitly say at least one of location or description should be supplied, though 'and/or' strongly implies it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already well-described, including the max length for description and the source for databaseName. The description adds no parameter-level detail beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Update a database's location and/or description.' It also names the exact sibling for tag updates, ncloud_datacatalog_update_database_tag, so the tool's scope is immediately distinguishable from related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states what the tool updates and explicitly routes tag management to a separate sibling tool. It doesn't enumerate broader when-to-use or when-not-to-use scenarios, but the main alternative is covered directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_update_database_tagAIdempotent
⚠️ Replaces ALL tags on a database with the list given — tags not included are removed. Read the current tags first with ncloud_datacatalog_get_database (includeTags=true).
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| databaseName | Yes | Database name | |
| tagKeyTypeValueList | Yes | Full replacement tag list. Every existing tag not present here is deleted |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states that tags not included in the list are removed, which is destructive behavior. However, the annotations declare destructiveHint=false, directly contradicting the description. This is a serious annotation contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The most important caution about full replacement is front-loaded, followed by the necessary read-first instruction.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation with three required parameters and no output schema, the description covers the operation, the destructive replacement behavior, and the required preliminary read. It omits return-value details, but the main operational context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description reinforces the replacement semantics of tagKeyTypeValueList but adds little beyond the schema's own parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: it replaces ALL tags on a database with the supplied list. It clearly highlights the full-replacement scope, differentiating it from related datacatalog operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives essential guidance: read current tags first using ncloud_datacatalog_get_database with includeTags=true. It does not explicitly contrast with sibling update table tag tools, but the workflow precondition is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_update_table_schemaAIdempotent
⚠️ Replaces the table's ENTIRE column schema with the list given — columns not included are removed. This is the only way to correct a column type a scanner inferred wrongly. Read the current schema first with ncloud_datacatalog_get_table_schema.
| Name | Required | Description | Default |
|---|---|---|---|
| columns | Yes | Full replacement column list, in the desired column order | |
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavior beyond the idempotentHint/destructiveHint annotations: it discloses the full-replacement (not merge) semantics, warns with ⚠️ that omitted columns are removed, and frames the corrective use case. The destructiveHint=false annotation is not contradicted — removal is at the schema/metadata level, and the description is what makes that side effect explicit to the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: the core semantics with a front-loaded ⚠️ warning, the when-to-use rationale, and the actionable read-first instruction naming the sibling tool. No wasted words and the critical safety warning is right at the start.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter mutate tool with no output schema, the description covers the operation semantics, the critical gotcha (schema replacement removes omitted columns), the trigger condition, and the prerequisite read step. The only minor gap is no statement about success response or whether partition keys/properties are affected, but with no output schema and a simple contract, this is not a material omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description earns a 4 by reinforcing the semantics of the `columns` parameter — that the given list is the complete replacement and order/omission matters — which ties directly to the schema's 'Full replacement column list, in the desired column order' note. The identifier parameters (catalogId, databaseName, tableName) are self-evident and already documented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Replaces'), a precise resource ('the table's ENTIRE column schema'), and the distinctive all-or-nothing behavior ('columns not included are removed'). This clearly differentiates it from the read-only sibling ncloud_datacatalog_get_table_schema and other datacatalog tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the exclusive use case ('This is the only way to correct a column type a scanner inferred wrongly') and gives an explicit precondition with a named sibling tool ('Read the current schema first with ncloud_datacatalog_get_table_schema'). An agent knows exactly when to invoke it and what to do beforehand to avoid clobbering columns.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datacatalog_update_table_tagAIdempotent
⚠️ Replaces ALL tags on a table with the list given — tags not included are removed (an empty list clears every tag). Read the current tags first with ncloud_datacatalog_get_table_tags.
| Name | Required | Description | Default |
|---|---|---|---|
| catalogId | Yes | Catalog ID | |
| tableName | Yes | Table name | |
| databaseName | Yes | Database name | |
| tagKeyTypeValueList | Yes | Full replacement tag list. Every existing tag not present here is deleted; pass [] to remove all tags |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description clearly discloses destructive behavior: tags not included are removed and an empty list clears every tag. However, the annotations declare destructiveHint=false, which directly contradicts this disclosure. Per the rubric, a description that contradicts annotations receives a score of 1.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence that front-loads the critical replace-all warning, states the deletion consequence, and ends with a practical safety tip. No words are wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description includes the most important behavioral caveat and the recommended read-first workflow, and the schema fully documents all four required parameters. It loses a point because the annotation contradiction leaves the agent with conflicting signals about destructiveness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already explains that tagKeyTypeValueList is a full replacement list and that omitted tags are deleted. The description reinforces the replace-all semantics but does not add meaningful parameter meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is explicit: it replaces ALL tags on a table with the given list, using a specific verb and resource. It also clearly distinguishes this from an additive tag-update by emphasizing removal of omitted tags.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a concrete pre-step: read current tags first with ncloud_datacatalog_get_table_tags. It does not explicitly contrast with sibling tools like ncloud_datacatalog_update_database_tag, but the replace-all semantics and the named read tool give the agent sufficient context for correct use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_approve_file_exportCRead-only
Approve a file export request. The files are then copied to the target bucket.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fileId | Yes | Export request number (see ncloud_datafence_list_file_exports) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description describes a mutation ('approve', 'files are then copied to the target bucket') while the annotations declare readOnlyHint=true. This is a direct contradiction: approving and copying files is a write operation. The description also omits any disclosure of permission requirements or reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the action and followed by the key effect. Efficient with no filler, though extremely brief for a mutating approval operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema, the description is thin: it does not state permissions, irreversibility, or the pending-state prerequisite. The contradiction with readOnlyHint makes it incomplete and potentially misleading about the operation's safety profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter (fenceId, boxId, fileId) already carries a description pointing at the relevant list/get tool. The description adds no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('approve a file export request') and adds the consequential effect ('files are then copied to the target bucket'). The verb 'approve' is clearly distinguishable from sibling tools like reject_file_export and cancel_file_export, though those siblings are not named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, prerequisites, or alternatives are given. The description never explains when approval is appropriate versus rejection or cancellation, nor what state the export must be in (e.g., pending) before approval is valid.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_cancel_file_exportBDestructiveIdempotent
⚠️ Destructive: Cancel a pending file export request. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fileId | Yes | Export request number (see ncloud_datafence_list_file_exports) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the destructive warning is largely redundant. The description adds the confirm=true execution gate, but that is also documented in the schema parameter description, and it does not explain consequences, reversibility, or idempotency behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the warning front-loaded and no filler. Every clause is operational and the structure makes the destructive nature immediately visible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a destructive state-changing tool with annotated safety hints and full schema coverage, the description covers purpose and confirmation. However, it omits the distinction from reject_file_export and any prerequisite about export approval state, which an agent needs to select the right sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters including confirm are already documented. The description only echoes confirm=true and adds no syntax, format, or relationship details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb 'Cancel' and resource 'pending file export request,' so the action itself is unambiguous. It does not differentiate from the sibling ncloud_datafence_reject_file_export, which also terminates a pending export, leaving a selection ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no when-to-use guidance, no prerequisites, and no alternatives; 'Set confirm=true to execute' is invocation mechanics rather than usage context. An agent must infer that this tool applies only to pending export requests and choose between it and reject_file_export on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_change_box_infraAIdempotent
Create, update or return Box infrastructure (connect / Linux / Windows / Tensorflow servers, NAS, Hadoop clusters). Each list item carries an actionType. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| dryRun | No | If true, returns the request without sending it | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| boxNasList | No | NAS changes (at least 1 NAS must remain) | |
| hadoopList | No | Hadoop cluster changes (up to 2 clusters) | |
| description | No | Description of the Box | |
| linuxServerList | No | Linux server changes (1-4) | |
| connectServerList | No | Connect server changes (1-4) | |
| windowsServerList | No | Windows server changes (0-4) | |
| tensorFlowCpuServerList | No | Tensorflow CPU server changes (up to 4) | |
| tensorFlowGpuServerList | No | Tensorflow GPU server changes (up to 2) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is partly covered. The description adds the useful dryRun preview behavior. However, the schema allows actionType=DELETE for NAS volumes and servers, which the description's verbs ('Create, update or return') do not surface — with annotations muted on destructiveness, noting the delete path would have added real value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded sentences: the entity scope comes first, then the two operational notes (actionType per item, dryRun preview). No filler, and the most important scoping information is up front.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter, nested-list mutation tool with no output schema, the description conveys the overall shape (multiple resource lists, per-item actionType) and a preview mechanism. It omits references for obtaining fenceId/boxId, but those are documented in the schema itself, so the gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 11 parameters including per-list actionType values and required-for-CREATE/UPDATE/DELETE conditions. The description only repeats the actionType concept and dryRun, adding nothing the schema does not already say. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb set (create/update/return) plus the resource (Box infrastructure) and enumerates the entity types it governs — connect/Linux/Windows/Tensorflow servers, NAS, Hadoop clusters. This clearly differentiates it from the datafence-level sibling ncloud_datafence_change_fence_infra and from the narrower ncloud_datafence_change_box_nas_volume, though it never names those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives one concrete usage rule ('Each list item carries an actionType', 'Use dryRun=true to preview'), which is real guidance. But there is no statement of when to use this tool versus the more specific NAS-volume or fence-infra change tools, nor any prerequisite (e.g., fetch boxId from list_boxes first). Usage is implied rather than framed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_change_box_nas_volumeBIdempotent
Resize a Box NAS volume (500-10000 GB, 100 GB steps).
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| instanceNo | Yes | NAS instance number (see ncloud_datafence_list_box_infra) | |
| volumeSize | Yes | New NAS volume size in GB |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the admissible size range and the 100 GB step granularity, which is real context, but says nothing about grow-vs-shrink behavior, whether the volume must be detached, or expected downtime.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the action and appends the only operational constraint. No filler, nothing to trim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with annotations and a fully documented schema, the description covers the constraint an agent most needs. It is slightly thin on operational impact (does resizing require a restart, is shrinking allowed), but nothing essential to issuing the call is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and every parameter (fenceId, boxId, instanceNo, volumeSize) is described with cross-references to discovery tools. The description restates the schema's 500-10000 bounds and adds only the 100 GB step, so it sits at the documented baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Resize a Box NAS volume" gives a specific verb plus resource, and the "Box" qualifier implicitly separates it from the sibling ncloud_datafence_change_fence_nas_volume and from ncloud_datafence_change_box_infra. It stops short of naming those alternatives, so an agent must infer which scope applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisite (e.g. target fence/box/NAS must already exist), and no mention of the sibling resize tool that operates on fence-level NAS volumes. The size constraint is a validity rule, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_change_fence_infraBIdempotent
Create, update or return Datafence servers (1-4) and NAS volumes. Each list item carries an actionType. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns the request without sending it | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| description | No | Description of the Datafence | |
| fenceNasList | No | Datafence NAS changes (at least 1) | |
| fenceServerList | No | Datafence server changes (1-4 servers) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint=false and idempotentHint=true, yet the description explicitly advertises "return" of Datafence servers and NAS volumes (and the schema enumerates DELETE actions). Releasing/terminating infrastructure is a destructive, non-idempotent-in-effect operation, so the description contradicts the annotation's safety profile. It also never says changes are irreversible or what happens to data on DELETE.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the create/update/return scope before the invocation hints. It is efficient, though the middle sentence about actionType is largely redundant with the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a compound create/update/delete tool with no output schema, the description covers the call surface but omits the operational consequences an agent needs: what DELETE/return actually removes, whether the operation is reversible, and any permission or provisioning-order constraints. Adequate for calling, thin for consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (actionType, specCode, nasSize, serverInstanceNo, dryRun, etc.) is already documented in the schema. The description only echoes the actionType-per-item pattern and repeats the 1-4 server bound already present in the schema, adding no new parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb set (Create, update, return) and named resources (Datafence servers 1-4, NAS volumes), so an agent knows exactly what the tool mutates. It does not distinguish itself from the adjacent sibling ncloud_datafence_change_fence_nas_volume, which performs a NAS-only subset, so sibling differentiation is missing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Each list item carries an actionType" and "Use dryRun=true to preview" give usable invocation guidance, but there is no statement of when to pick this tool over the NAS-only or box variants, nor prerequisites (permissions, ordering, when DELETE is allowed). Usage is implied rather than specified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_change_fence_nas_volumeBIdempotent
Resize a Datafence NAS volume (500-10000 GB, 100 GB steps).
| Name | Required | Description | Default |
|---|---|---|---|
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| instanceNo | Yes | NAS instance number (see ncloud_datafence_list_fence_infra) | |
| volumeSize | Yes | New NAS volume size in GB |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, covering the safety profile. Beyond that, the description adds the step-size behavior (100 GB steps) not present in the schema, but says nothing about downtime, whether shrinking is allowed, or service impact during resize.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that states the action and the key constraint with no wasted words. Efficient and immediately actionable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with full schema coverage and annotations covering safety/idempotency, the description is minimally adequate. It omits operational context a resizing operation would benefit from, such as whether a restart is required or whether volume size can be decreased.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both min/max bounds already appear in the schema. The description adds the 100 GB step increment, a useful constraint absent from the schema, but otherwise adds little beyond what the parameters already document. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'Resize a Datafence NAS volume'. This is clear and unambiguous about what the tool does, but it does not distinguish itself from siblings like ncloud_datafence_change_box_nas_volume or ncloud_change_nas_volume_size, which an agent must tell apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites, and no mention of when to prefer this over the sibling change_box_nas_volume or nas_volume_size tools. Usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_create_boxB
Create a Box in a Datafence: 1-4 connect servers, Linux and/or Windows servers (Windows required when no Linux), NAS, optional Hadoop clusters and Tensorflow CPU (1-4) / GPU (1-2) servers. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns the request without sending it | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| nasList | Yes | NAS volumes | |
| hadoopList | No | Hadoop clusters | |
| description | No | Description of the Box | |
| linuxServerList | Yes | Linux servers (empty array allowed when windowsServerList is given) | |
| connectServerList | Yes | Connect servers (1-4) | |
| windowsServerList | No | Windows servers (1-4; required when linuxServerList is empty) | |
| tensorFlowCpuServerList | No | Tensorflow CPU servers (1-4) | |
| tensorFlowGpuServerList | No | Tensorflow GPU servers (1-2) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Only destructiveHint=false is provided, so the description carries most of the behavioral burden. It usefully summarizes the composition rules (Windows required when no Linux, Tensorflow CPU 1-4 / GPU 1-2, dry-run preview), but these largely restate schema constraints and it says nothing about async completion, required permissions, or whether the operation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with the action front-loaded and no filler; the server composition is compressed into a single readable clause. Slightly dense but every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter mutation tool with no output schema and minimal annotations, the description gives an adequate shape of what gets built but omits the operational context an agent needs (e.g. is the Box provisioned asynchronously, what does the response contain on dry-run vs real run). Params are covered by the schema, so the residual gap is behavioral rather than structural.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every field, including the password rules, size ranges and the Windows-when-no-Linux rule. The description paraphrases the same grouping without adding format, default, or inter-parameter detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource ("Create a Box in a Datafence") and then enumerates the constituent servers, which cleanly separates it from read/list siblings like ncloud_datafence_list_boxes or ncloud_datafence_get_box_summary. It never names a sibling explicitly, but the purpose is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as ncloud_datafence_change_box_infra for modifying an existing Box. The only usage-like note ("Use dryRun=true to preview") is a per-parameter hint rather than selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_create_file_exportA
Request a file export from a Box NAS to an Object Storage bucket (up to 10 files, 2 GB each; goes through export approval). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| dryRun | No | If true, returns the request without sending it | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| description | Yes | Description of the export request (0-50 chars) | |
| exportPurpose | Yes | Purpose of the export (1-1000 chars) | |
| fileDescription | Yes | Description of the exported files (1-1000 chars) | |
| targetBucketName | Yes | Target bucket name | |
| sourceFilePathList | Yes | Files to export (up to 10) | |
| sourceNasInstanceNo | Yes | Source NAS instance number (see ncloud_datafence_list_export_source_nas) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries most of the burden and does add value: it discloses the approval gate that blocks the export, the per-request limits, and the dryRun preview behavior. It still omits whether the call is asynchronous, what it returns, and what triggers rejection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences with the core action and constraints front-loaded and the dryRun hint last. No filler, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema, the description covers the key operational facts (approval workflow, size limits, preview mode). Only the return shape and synchronous/asynchronous nature are unaddressed, which is minor given the schema is fully annotated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all nine parameters are already documented. The description adds one constraint the schema lacks (2 GB per file) and restates the item cap, but otherwise defers entirely to the schema; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Request a file export'), names both endpoints (Box NAS to Object Storage bucket), and gives hard scope limits (10 files, 2 GB each). An agent can distinguish this from create_file_import, get_file_export, and cancel_file_export without consulting sibling schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'goes through export approval' clause and the 'Use dryRun=true to preview' directive give clear operational context and a recommended safe path. However, it never names an alternative tool (e.g., list_file_exports or approve_file_export) or states explicit when-not conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_create_file_importA
Request a file import from an Object Storage bucket into a Box NAS (up to 10 files, 2 GB each). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| dryRun | No | If true, returns the request without sending it | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| description | Yes | Description of the import request (1-50 chars) | |
| sourceBucketName | Yes | Source bucket name | |
| sourceFilePathList | Yes | Files to import (bucket object names, up to 10) | |
| targetNasInstanceNo | Yes | Target NAS instance number (see ncloud_datafence_list_import_target_nas) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only supply destructiveHint=false, so the description carries most of the burden. It usefully discloses capacity constraints (up to 10 files, 2 GB each) and the existence of a preview mode, but says nothing about permissions, whether the import is synchronous or approval-gated, or how failures surface. Given the limited annotation, this leaves meaningful behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with source/target and scope, with the constraint and preview tip following. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with no output schema and full schema coverage, the description covers source, destination, capacity, and preview mode — enough to invoke it correctly. It stops short of describing the request's lifecycle (async/approval), which would be helpful for a write operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all seven parameters and the baseline is 3. The description adds one fact not in the schema (the 2 GB per-file limit) but does not otherwise clarify parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Request/create), the resource (file import), and both endpoints of the transfer (Object Storage bucket → Box NAS), which cleanly disambiguates it from siblings like ncloud_datafence_list_file_imports and ncloud_datafence_get_file_import. No further reading is needed to know what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It offers one actionable usage hint — 'Use dryRun=true to preview' — but gives no when-to-use/when-not guidance relative to alternatives such as ncloud_databox_apply_file_import or ncloud_ses_run_import. Usage is implied rather than contextualized.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_box_custom_imagesBRead-only
List custom server images usable for a Box server type.
| Name | Required | Description | Default |
|---|---|---|---|
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| productCode | Yes | Box server type: CON (connect), TF_CPU, TF_GPU, SVR_LNX_UBUNTU, SVR_WIN |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already declares this as a safe read with no side effects, so the bar is lower. The description adds only that the images are 'custom' and filtered by Box server type; it says nothing about pagination, result volume, or what happens for an unsupported productCode.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence with the resource front-loaded and no filler. It is arguably a touch too terse given the sibling ambiguity, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with a fully described two-parameter schema and annotations covering safety, the description is adequate. However, given how many datafence-related listing tools exist, the lack of disambiguation from the fence-level variant leaves a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already fully documented, including the productCode enum and the pointer to ncloud_datafence_get_datafence for fenceId. The description's 'Box server type' mirrors the schema wording but adds no syntax or constraint detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb (List) plus resource (custom server images) and scope (usable for a Box server type), so the agent knows what it returns. The only gap is that it does not distinguish itself from the near-identical sibling ncloud_datafence_get_fence_custom_images.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use statement, no prerequisites, and no mention of the fence-level counterpart ncloud_datafence_get_fence_custom_images that an agent could easily confuse with this one. Usage must be inferred entirely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_box_historyBRead-only
Get the Box creation / return history of a Datafence.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the description's job is lighter. It adds that the data is historical (creation/return events) rather than current state, which is useful context, but says nothing about ordering, retention window, or what a history entry contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with zero filler and the key scope (Box creation/return) front-loaded. It is efficient, though a short second clause on scope or pagination could have been added without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only paginated history endpoint with full schema coverage and annotations covering safety, the description is minimally adequate. Without an output schema, it does not describe the shape or ordering of returned history entries, leaving a modest gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with page/size/fenceId all documented, and fenceId even cross-references ncloud_datafence_get_datafence. The description adds no syntax, format, or default information beyond what the schema already carries, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (Get) and resource (Box creation/return history) scoped to a Datafence, which is more precise than a bare name restatement. It does not, however, explicitly differentiate itself from near-neighbors like ncloud_datafence_get_box_infra_history or ncloud_datafence_get_box_summary, so the agent must infer the distinction from the wording alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, prerequisites, or named alternatives are given. The agent is left to infer that this is the audit/history view rather than live box state, and no sibling is referenced for the contrasting case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_box_infra_historyCRead-only
Get the infrastructure change history of a Box.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already establishes the safety profile, so the description is not burdened with that. However, it adds nothing beyond the annotation: no note on pagination behavior, result ordering, retention window, or relationship to the change_* tools that produce these history entries.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or redundancy. It is efficient, though its brevity is close to under-specification rather than optimal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only history tool with a fully covered schema and an annotation supplying the safety profile, the core need is met. Still, the description omits the distinction between Box-level and Datafence-level infra history and says nothing about pagination despite two paging parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema documents both pagination parameters and cross-references boxId and fenceId to sibling listing tools. The description adds no parameter meaning beyond that, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: getting the infrastructure change history of a Box. It is clear on its own, but it does not distinguish itself from close siblings such as ncloud_datafence_get_box_history (history vs infra history) or ncloud_datafence_get_fence_infra_history (Box vs Datafence), leaving ambiguity about scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this rather than ncloud_datafence_get_box_history, ncloud_datafence_list_box_infra, or ncloud_datafence_get_fence_infra_history, and no prerequisites or exclusions are stated. The agent must infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_box_summaryCRead-only
Get the summary of a Box.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe, non-mutating read, so the description adds essentially nothing behavioral. It does not disclose what the summary contains, whether it aggregates sub-resources, or any auth/scope requirement beyond the plain annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence with no wasted words, but it is under-specified rather than concise — the brevity comes at the cost of any useful content. Front-loading is fine, but there is nothing substantive to front-load.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a datafence Box tool with two required identifiers, the description never says what the returned summary covers or how it relates to box history/infra endpoints. With no output schema to fall back on, an agent is left guessing about the content and scope of the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself cross-references ncloud_datafence_list_boxes for boxId and ncloud_datafence_get_datafence for fenceId. The description adds no parameter meaning on top of this, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource ('Get the summary of a Box'), but it is essentially a restatement of the tool name and gives no differentiation from nearby siblings such as ncloud_datafence_get_box_history or ncloud_datafence_list_boxes. An agent cannot tell from the text what 'summary' means versus history or detail endpoints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives. The description does not indicate when this should be called instead of get_box_history, get_box_infra_history, or get_box_custom_images, which all operate on the same Box resource.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_connect_serverCRead-only
Get a Box connect server's details.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| instanceNo | Yes | Connect server instance number (see ncloud_datafence_list_box_infra) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is covered. The description adds nothing beyond 'get details' – no note on return shape, whether the connect server must be in a running state, or any scoping constraint. Minimal added value over the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence that is front-loaded and wastes no words. It is not padded, though the extreme brevity is also the source of its other gaps.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup with fully documented parameters and no output schema, the description is adequate to invoke the tool. It is missing any indication of what 'details' are returned or how this differs from analogous server-get tools, but nothing critical to a correct call is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the three parameters (fenceId, boxId, instanceNo) are already documented in the schema, each pointing to a related listing tool. The description adds no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Get a Box connect server's details'), which is clear. However, it does not distinguish itself from closely related siblings like ncloud_datafence_get_linux_server, get_windows_server, get_tensorflow_server, or get_box_summary, so an agent cannot tell what 'connect server' means relative to those without outside knowledge.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the other datafence 'get_*_server'/'get_box_*' tools, nor any prerequisite or exclusion. The only routing hints come from the schema parameter descriptions (which point to list_boxes, get_datafence, list_box_infra), not the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_datafenceBRead-only
Get the Datafence of this account (fenceId, name, status, box count, export screening bucket).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already declares this as a safe read with no side effects, so the description carries a reduced burden. It adds the field list (fenceId, name, status, box count, export screening bucket), which hints at output shape, but no authentication, scoping, or freshness context beyond that, so it adds only modest value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence that front-loads the verb and resource, with the returned fields tucked into a parenthetical. No filler; only the terse field list is arguably borderline but it does add information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description's enumeration of returned fields is genuinely useful compensation. For a read-only, parameterless account-level getter, nothing essential is missing, though naming the sibling distinction would fully close the loop.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema cannot document anything and there is nothing for the description to disambiguate. Baseline 4 for a parameterless tool is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (the Datafence of this account) and even enumerates the returned fields, so the agent knows exactly what it retrieves. It does not explicitly distinguish itself from sibling datafence reads like list_fence_infra or get_box_summary, but the account-level scope is reasonably implied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance and no alternatives named. Given the large family of ncloud_datafence sibling tools, the description should say this is the account-level fence overview rather than a per-box or infra read, but it offers nothing to route the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_export_approvalCRead-only
Get a file export request for approval review.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fileId | Yes | Export request number (see ncloud_datafence_list_file_exports) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the description carries a reduced burden — but it adds essentially nothing beyond that: no statement about permissions needed to view an approval, no indication of what the approval object contains (status, requester, target), and no note on whether approvals expire or are single-use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the verb and resource front-loaded and zero waste. It is efficient, though the economy comes partly from omitting useful context rather than from disciplined editing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should ideally sketch what an approval record looks like, and there is no mention of the approval lifecycle or how this read relates to approve/reject. For a tool whose whole purpose is to feed an approval decision, the definition leaves the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each of the three required parameters is documented in-schema with a pointer to the tool that yields its id (fenceId, boxId, fileId). The description adds no further semantics, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a read verb ('Get') and a resource ('file export request for approval review'), so the basic intent is legible. However, it does not distinguish itself from close siblings such as ncloud_datafence_get_file_export, ncloud_datafence_list_export_approvals, or the approve/reject tools, and the phrase 'for approval review' blurs whether this fetches an approval record or the export itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of the approval workflow or the sibling tools it pairs with (approve_file_export, reject_file_export, list_export_approvals). The agent must infer the call context entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_fence_custom_imagesCRead-only
List custom server images usable for Datafence servers.
| Name | Required | Description | Default |
|---|---|---|---|
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| productCode | Yes | Datafence product code (FENCE_UBUNTU) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds no further behavioral context such as pagination, result ordering, or whether the list is filtered by the fence's product/region. It essentially restates the resource without disclosing anything beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. It is efficient, though the brevity borders on under-specification for a tool that sits next to a confusingly similar sibling.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with fully documented params and an output schema absent but return type obvious, the description is minimally adequate. It nonetheless omits the fence/box disambiguation an agent needs to pick this tool confidently over its sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with both required params documented (fenceId references ncloud_datafence_get_datafence, productCode is enum-constrained). The description adds no meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (List) and resource (custom server images) scoped to Datafence servers, so an agent knows exactly what it returns. It does not, however, distinguish itself from the closely-named sibling ncloud_datafence_get_box_custom_images, leaving the fence-vs-box distinction to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no named alternative. The agent must infer the call context from the name alone, and the presence of a near-identical sibling (get_box_custom_images) makes the missing differentiation more costly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_fence_infra_historyCRead-only
Get the infrastructure change history of a Datafence.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already tells the agent this is a safe read. The description adds nothing beyond that: no pagination behavior, no ordering of history entries, no note on whether history is retained or how far back it goes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the resource front-loaded and no filler. It is appropriately sized for a simple read tool, though there is room for a small amount of useful scoping detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only paginated lookup this is minimally adequate: schema covers the parameters and annotations cover safety. However, with no output schema, the description could say something about what a change-history entry contains, which it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – page, size, and fenceId are all documented in the schema with ranges and defaults. The description adds no parameter detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb and resource: retrieving the infrastructure change history of a Datafence. It is distinguishable in principle from ncloud_datafence_list_fence_infra and ncloud_datafence_change_fence_infra, but the description never names or contrasts those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of the sibling tools that list current infrastructure or modify it. The agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_file_exportBRead-only
Get a file export request.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fileId | Yes | Export request number (see ncloud_datafence_list_file_exports) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so safety is already covered. The description adds nothing beyond the name – no return shape, no pagination, no status semantics for an export request. With annotations carrying the safety profile, a 3 is the correct floor, but there is no extra behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence, front-loaded and free of filler. It is appropriately sized for a simple read tool, though it borders on under-specification rather than being impressively efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 required parameters, no output schema, and no nesting. Given the schema fully documents the parameters and annotations cover safety, the description is minimally adequate. However, for an 'export request' that has an approval workflow among siblings, an agent would benefit from knowing it returns the request's status; the description leaves that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter description in the schema points to a sibling lookup tool (list_boxes, list_file_exports, get_datafence). The description adds no parameter information. Per the calibration rule, 100% coverage yields a baseline of 3; the description neither helps nor hurts.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Get) and resource (file export request), which is clear and distinguishable within the datafence file export tool family (create/cancel/list). It doesn't name a sibling alternative, but the resource is specific enough that an agent can distinguish it from ncloud_datafence_list_file_exports and ncloud_datafence_create_file_export.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives (list_file_exports, get_file_import, get_export_approval), and no preconditions. The description is a bare statement of purpose. For a tool in a large family with closely named siblings, this forces the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_file_importCRead-only
Get a file import request.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fileId | Yes | Import request number (see ncloud_datafence_list_file_imports) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered structurally. The description adds nothing beyond that – no note on what the returned import request contains, its status fields, or any scoping constraints. With annotations carrying the safety signal, the description still contributes essentially zero behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is front-loaded and free of waste, which is good. But it is concise to the point of being underspecified – brevity here reflects omission rather than crispness, so it lands at adequate rather than strong.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description carries the burden of describing what a fetched import request returns, and it does not. For a 3-required-parameter fetch tool, the minimal one-liner leaves the agent without needed context about the resource semantics or response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each of the three required parameters (fenceId, boxId, fileId) is documented in the schema with cross-references to discovery tools. The description adds no additional parameter meaning, so the baseline 3 for fully-documented schemas applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ("Get" + "file import request"), so the agent can tell it retrieves a single import request. However, it offers no differentiation from close siblings such as ncloud_datafence_list_file_imports, ncloud_datafence_get_file_export, or ncloud_datafence_create_file_import, leaving ambiguity about the resource vs. a related one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The agent is not told whether fileId must come from list_file_imports, nor how this read relates to create/list/export sibling operations. No exclusions or conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_hadoop_clusterBRead-only
Get a Box Hadoop cluster's details.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| hadoopClusterNo | Yes | Hadoop cluster number — instanceNo of the infra whose infraType is HD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds no further behavioral context such as return format, pagination, permissions, or what 'details' actually includes, so it provides essentially no value beyond the structured annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste. It is appropriately sized for a simple get-by-IDs operation and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with full schema coverage and readOnly annotations, the description is minimally adequate: it names the operation and resource. However, it does not clarify what details are returned or how this tool relates to the similarly named Hadoop cluster detail tool, leaving a small but real contextual gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself cross-references sibling tools ('see ncloud_datafence_list_boxes', 'see ncloud_datafence_get_datafence') and explains 'hadoopClusterNo'. The description adds no parameter meaning beyond that, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('Box Hadoop cluster's details'), so the operation is clear. However, it does not distinguish this tool from the similarly named sibling 'ncloud_hadoop_get_cluster_detail' or other get-detail tools, leaving ambiguity about when this Datafence-specific variant is the right choice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no when-to-use guidance, no prerequisites, and no alternatives. It does not tell the agent to use this tool only for clusters inside a Datafence Box, nor how it differs from 'ncloud_hadoop_get_cluster_detail'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_linux_serverCRead-only
Get a Box Linux server's details.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| instanceNo | Yes | Linux server instance number (see ncloud_datafence_list_box_infra) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations supply readOnlyHint=true, so the safety profile is covered, but the description adds nothing beyond that: no note about required permissions, whether the box must be in a particular state, or what kind of detail set is returned. For a read tool with an output-less schema, a bare restatement of the name is thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the verb and resource front-loaded and zero filler. It is efficient, though so minimal that it borders on under-specification rather than crisp conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Three required hierarchical identifiers and no output schema mean the description should at least indicate what 'details' means or note the prerequisite chain. The schema covers parameter discovery adequately, so this is minimally viable but leaves the agent without usage context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each of the three IDs (fenceId, boxId, instanceNo) is documented with a cross-reference to the tool that produces it. The description adds no extra semantics beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (a Box Linux server's details), and the 'Linux server' qualifier implicitly separates it from siblings like ncloud_datafence_get_windows_server and ncloud_datafence_get_tensorflow_server. It does not explicitly name alternatives, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this instead of the other datafence get_* server tools or the related list tools. The only hint is that the schema parameters point at ncloud_datafence_list_boxes and ncloud_datafence_list_box_infra for ID discovery, but that lives in the schema, not the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_product_specsARead-only
List server / NAS / Hadoop product spec codes usable in Datafence and Box requests.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read. The description adds that the output is spec codes valid for Datafence/Box requests, which is helpful context about the data domain, but says nothing about return format, ordering, or completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the resource and scope front-loaded and no filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param reference-list tool with no output schema, the description adequately conveys what is returned (spec codes) and where they apply. It could note whether the list is filtered by region or platform, but the core need is covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters and schema coverage is 100%, so there is nothing for the description to clarify; baseline 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('server / NAS / Hadoop product spec codes') and scopes it to Datafence and Box requests, so the agent knows it returns reference codes rather than infrastructure. It does not explicitly name a sibling to distinguish from, but the resource is narrow enough to be identifiable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'usable in Datafence and Box requests' implies the tool is a lookup step for populating later request payloads, which is useful context. However, there is no explicit when-to-use, prerequisite, or alternative named, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_tensorflow_serverBRead-only
Get a Box Tensorflow (CPU or GPU) server's details.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| instanceNo | Yes | Tensorflow server instance number (see ncloud_datafence_list_box_infra) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a non-mutating read. The description adds only the CPU/GPU distinction, which is thin behavioral context and reveals nothing about auth requirements, return shape, or error conditions. With annotations covering the safety profile, a 3 is appropriate but not higher.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence, front-loaded with the operation and resource, with zero filler. Nothing could be trimmed without losing the CPU/GPU qualifier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with full schema coverage, readOnlyHint annotation, and no output schema requirement, the definition is essentially complete. The only missing element is routing guidance toward sibling getters, which is minor for this tool class.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter description even routes the agent to the relevant sibling list/get tool for the ID. The description itself adds nothing about the three IDs, so the baseline 3 applies since the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource (get a Box Tensorflow server's details) and the parenthetical '(CPU or GPU)' narrows the target. It implicitly distinguishes from sibling getters like ncloud_datafence_get_linux_server and ncloud_datafence_get_hadoop_cluster by naming the Tensorflow server type, though it never explicitly contrasts them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives such as ncloud_datafence_get_box_summary or ncloud_datafence_get_connect_server, and no prerequisites (e.g., that a box must already exist). The only contextual help is indirect, via schema param descriptions pointing to list_boxes/get_datafence/list_box_infra for ID lookup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_get_windows_serverCRead-only
Get a Box Windows server's details.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| instanceNo | Yes | Windows server instance number (see ncloud_datafence_list_box_infra) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a non-mutating read, and the description's 'Get ... details' merely restates that with no additional context. It does not disclose what 'details' comprises, whether the instance must be running, or any auth scoping requirement, so it adds essentially nothing beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler, which is structurally sound. It is sized appropriately for a simple read tool, though it is arguably too thin rather than wastefully long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only getter with three fully documented required parameters and no output schema, the definition is minimally adequate: an agent can call it correctly. However, with no output schema and no description of what the returned 'details' contain, the agent cannot anticipate the response shape, leaving a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: each of boxId, fenceId, and instanceNo is documented and cross-referenced to the listing tool that yields it (list_boxes, get_datafence, list_box_infra). The description contributes no parameter meaning at all, so the schema does all the work and the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb (Get) and resource (a Box Windows server's details), and the 'Windows server' qualifier implicitly separates it from the parallel get_linux_server / get_tensorflow_server / get_connect_server siblings. It never names or contrasts those siblings explicitly, so an agent must infer the distinction from the name alone, which is why this falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no when-to-use guidance, no prerequisites, and no exclusions relative to the parallel per-OS getters or the broader ncloud_datafence_get_box_summary. The only routing help is indirect, coming from the schema's '(see ncloud_datafence_list_boxes)' style hints rather than the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_boxesCRead-only
List the Boxes of a Datafence.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, lowering the bar, but the description adds no behavioral context at all: no note on pagination semantics (page/size), no pointer to what a returned Box represents, and no indication of empty/error behavior. It contributes nothing beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero wasted words. It is efficient, though the brevity is closer to under-specification than true concision given how little it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with no output schema, the description should at least clarify pagination behavior or how results relate to sibling list tools. With fully documented params and a read-only annotation the gap is not severe, but the definition remains too thin to fully orient an agent in a densely populated datafence tool family.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter (page, size, fenceId) already carries its own description, including the fenceId cross-reference to ncloud_datafence_get_datafence. Per the baseline for high coverage, a 3 is appropriate since the description supplies no additional parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a verb ('List') and resource ('Boxes') scoped to a Datafence, so the operation is identifiable. However, it does almost nothing beyond restating the tool name, and it does not distinguish this from siblings such as ncloud_datafence_get_box_summary or ncloud_datafence_list_box_infra, which also concern Boxes within a Datafence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of prerequisites, and no named alternative. An agent gets no help deciding between this and the many other datafence Box tools (get_box_summary, get_box_history, list_box_infra, etc.).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_box_infraBRead-only
List the infrastructure of a Box (connect / linux / windows / tensorflow servers, NAS, Hadoop clusters with instanceNo and infraType).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds useful return-shape context (instanceNo and infraType) but says nothing about pagination behavior despite the schema exposing page/size, nor about permissions or result limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the verb front-loaded and no wasted clauses. The parenthetical enumeration is dense but informative rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only listing tool with full schema coverage and no output schema, the description rounds out the picture by naming the returned fields. It lacks any note on pagination or volume, which would make it fully self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both required IDs and the paging params are already documented with cross-references (see ncloud_datafence_list_boxes / get_datafence). The description adds no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (infrastructure of a Box) and enumerates the concrete contents (connect/linux/windows/tensorflow servers, NAS, Hadoop clusters). It distinguishes itself from the fence-level sibling only implicitly via 'of a Box', never naming ncloud_datafence_list_fence_infra, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description contains no when-to-use guidance, no prerequisites, and no pointer to alternatives such as ncloud_datafence_get_box_summary or ncloud_datafence_get_box_infra_history. An agent must infer from the name alone that this is the box-scoped infra listing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_bucketsARead-only
List Object Storage buckets available to Datafence (a sub account may need Object Storage permission).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is covered. The description adds the permission caveat that a sub account may lack Object Storage access, which is real added behavioral context, but it stops short of describing scope limits, pagination, or what 'available' means (all buckets in the account vs. only Datafence-linked ones).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core action first and the caveat second; nothing is redundant or padded. It is efficient, though the parenthetical is slightly compressed rather than fully integrated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, read-only listing tool with no output schema, the description covers the essential action and one important operational caveat. Missing only the finer points of scope (which buckets count as 'available') and result handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The schema is empty and there is nothing for the description to clarify about argument semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (List Object Storage buckets) and scopes it to the Datafence service, which separates it from generic siblings like ncloud_list_buckets or ncloud_ncs_list_buckets. It does not, however, explicitly name or contrast with those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical notes a prerequisite ('a sub account may need Object Storage permission'), which is a useful precondition, but there is no statement of when to prefer this over other bucket-listing tools or what context triggers its use. Usage is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_export_approvalsARead-only
List file export requests awaiting or past approval (approver view).
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End datetime (yyyyMMddHHmmss) | |
| from | No | Start datetime (yyyyMMddHHmmss) | |
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| status | No | Export status code filter (File Export Status Code in the guide) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is covered. The description usefully adds that results are scoped to requests 'awaiting or past approval' from an approver perspective, but says nothing about pagination behavior, result size, or what fields are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with the resource and scope stated immediately and no wasted words. Efficient and well-structured given the small amount of information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with full schema coverage and readOnlyHint annotation, no output schema is required and the description covers the essential scope. It could go further by noting pagination defaults or the meaning of the approver-view filter, but it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 7 parameters are already documented in the schema. The description adds no syntax or filtering semantics beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (list) and resource (file export requests awaiting or past approval), with a scope qualifier. Clear what it does, but it does not explicitly name or distinguish itself from close siblings like ncloud_datafence_list_file_exports or ncloud_datafence_get_export_approval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The '(approver view)' parenthetical implies the tool is for approvers, giving some context. However, there is no explicit when-to-use versus alternatives (e.g., list_file_exports vs this approval queue), so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_export_source_nasCRead-only
List the Box NAS volumes files can be exported from.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds only the export-source scoping concept and discloses nothing about permissions, result size, pagination, or how fenceId/boxId constrain the listing, so it contributes little behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the resource and scope front-loaded and no wasted words. It is arguably under-explained, but as conciseness it is strong.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with both parameters fully schema-documented and no output schema, the description is minimally sufficient. It nonetheless leaves the fence/box relationship to the result and the position of this call in the export workflow unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already points to ncloud_datafence_list_boxes and ncloud_datafence_get_datafence for the two IDs. The description adds no meaning to either parameter, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (Box NAS volumes available as export sources), which is more precise than a bare 'list NAS volumes'. However, it does not explicitly distinguish itself from near siblings like ncloud_datafence_list_import_target_nas or ncloud_list_nas_volumes, leaving the agent to infer the export-vs-import distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance or named alternative. The phrase 'files can be exported from' implies this is used before creating a file export, but the agent must infer that from the export-adjacent sibling names rather than the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_fence_infraBRead-only
List the infrastructure (servers, NAS) of a Datafence.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already tells the agent this is a safe read operation, and the description adds that the listed infrastructure includes servers and NAS. However, it does not describe pagination behavior, return format, or any other behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. The core purpose and listed resource types are front-loaded and immediately clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool whose input schema fully documents its three parameters and whose annotation covers safety, the description is nearly complete. It could still clarify whether this returns current infrastructure versus history or related resources, but the essential information is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents page, size, and fenceId, including the reference to ncloud_datafence_get_datafence for fenceId. The description adds no parameter meaning beyond what the schema provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: list the infrastructure of a Datafence, with a parenthetical clarifying that it includes servers and NAS. It is clear enough to distinguish from unrelated siblings, but it does not explicitly differentiate itself from closely related Datafence siblings such as get_fence_infra_history or list_buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives, nor any stated prerequisites beyond the required fenceId in the schema. Usage is only implied by the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_file_exportsCRead-only
List file export requests of a Box.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End datetime (yyyyMMddHHmmss) | |
| from | No | Start datetime (yyyyMMddHHmmss) | |
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| status | No | Export status code filter (File Export Status Code in the guide) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, and the description adds nothing beyond that: no pagination behavior, no ordering, no statement of what is returned or whether results are filtered by default. For a 7-parameter list tool the description carries no behavioral weight of its own.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with no filler and the resource front-loaded. It is efficient, though arguably under-specified rather than deliberately minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema fully documents all 7 parameters and the annotation covers the safety profile, so the basics are covered. Still, a list operation with no output schema and no description of pagination or filter semantics leaves the agent guessing about result shape and how to page through large export histories.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so every parameter including from/to date format, page/size defaults, status filter, and the fenceId/boxId cross-references to sibling lookup tools is already documented in the schema. The description's phrase "of a Box" only loosely reinforces that boxId scopes the query, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource ("List file export requests") scoped to a Box, so the operation is unambiguous. However, it does not differentiate itself from closely named siblings such as ncloud_datafence_get_file_export, ncloud_datafence_create_file_export, or ncloud_datafence_list_export_approvals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention that this is the collection-level counterpart to get_file_export, and no hint about using the status/from/to filters to narrow results. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_file_importsCRead-only
List file import requests of a Box.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End datetime (yyyyMMddHHmmss) | |
| from | No | Start datetime (yyyyMMddHHmmss) | |
| page | No | Page number (0-100, default 0) | |
| size | No | Items per page (1-100, default 10) | |
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| status | No | Import status code filter (File Import Status Code in the guide) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already tells the agent this is a safe read, so the description is not required to disclose safety. It adds nothing beyond that: no discussion of pagination behavior, result volume, or the fact that from/to/status act as filters over a potentially large list. No annotation contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no wasted words and the key resource front-loaded. It is efficient, though bordering on under-specification rather than genuine conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter list tool with filtering and paging semantics and no output schema, the description is far too thin. It does not clarify what a 'Box' is, how the date-range and status filters interact, or what the response contains, leaving the agent to reconstruct the operation from the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all seven parameters (from, to, page, size, status, boxId, fenceId) are already documented in the schema. The description adds no additional meaning such as default filtering or datetime semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (file import requests) scoped to a Box, which an agent can distinguish from create_file_import and get_file_import. However it does not explicitly contrast itself with the very similarly named sibling ncloud_datafence_list_file_exports, leaving the boundary between imports and exports to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as get_file_import for a single request or create_file_import for new imports. The agent must infer all routing from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_list_import_target_nasARead-only
List the Box NAS volumes that can receive imported files.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the description only needs to add context. It does add the filtering trait ('can receive imported files'), but says nothing about ordering, pagination, or what the returned entries contain — though for a simple list call that is a modest gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the scope constraint front-loaded and zero filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, read-only listing with annotations covering safety and a fully documented schema, the description is sufficient. It could have noted the relationship to the file-import workflow, but nothing essential to calling the tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both fenceId and boxId are documented with cross-references to ncloud_datafence_get_datafence and ncloud_datafence_list_boxes. The description adds no parameter meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb (List) plus a precisely scoped resource: Box NAS volumes that can receive imported files. The 'can receive imported files' qualifier distinguishes it from the sibling ncloud_datafence_list_export_source_nas, but it never names or contrasts with that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the tool clearly serves as the pre-step to a file import, but there is no explicit when-to-use statement, no mention of the counterpart export-source tool, and no stated preconditions. The agent must infer the call sequence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_reject_file_exportADestructive
⚠️ Destructive: Reject a file export request with a reason. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fileId | Yes | Export request number (see ncloud_datafence_list_file_exports) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| rejectReason | Yes | Reason for the rejection (1-1000 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false, so the '⚠️ Destructive' prefix is largely a restatement. The genuinely useful addition is the confirm=true gate, but the description does not say whether the rejection is irreversible, what state the export moves to, or whether permissions/approval rights are required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the destructive warning and the required confirm flag front-loaded, and zero wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive mutation with full schema coverage, annotations, and no output schema, the definition covers purpose, destructive nature, and the confirm gate. It omits the effect/aftermath of a rejection and any permission prerequisites, which would round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters (fenceId, boxId, fileId, rejectReason, confirm) are documented in the schema, including cross-references to the listing tools. The description's only parameter claim ('Set confirm=true') duplicates the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Reject a file export request') plus the mandatory reason argument, which cleanly separates it from the sibling ncloud_datafence_approve_file_export. It does not explicitly name that sibling or the cancel alternative, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context of use is implied (rejecting a pending export request) and it adds the critical execution condition 'Set confirm=true to execute.' However, it gives no explicit when-to-use versus ncloud_datafence_approve_file_export, ncloud_datafence_cancel_file_export, or ncloud_datafence_get_export_approval, and no prerequisite/approval context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_return_boxADestructive
⚠️ Destructive: Return (terminate) a Box and all its servers, NAS and clusters. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, so the bar is lower, yet the description adds real value by enumerating what is destroyed (servers, NAS, clusters) and disclosing the two-step confirm gate. It stops short of stating irreversibility or required permissions, so a 4 rather than a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste, and the destructive warning plus scope are front-loaded ahead of the execution instruction. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no output schema and fully documented parameters, the description covers the safety profile and blast radius. It is nearly complete, missing only explicit irreversibility/auth context, which is minor given the destructiveHint annotation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents fenceId, boxId, and confirm in detail. The description's mention of confirm=true largely restates the schema's own description, adding no new syntax or meaning, so baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource ('Return (terminate) a Box') and importantly disambiguates that 'return' means terminate, plus names the scope (all its servers, NAS and clusters). It does not explicitly differentiate itself from siblings like ncloud_datafence_create_box or ncloud_datafence_change_box_infra, keeping it just below a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Set confirm=true to execute' is a usage instruction but concerns the parameter gate rather than when to choose this tool over alternatives. The when-to-use is only implied by the purpose; no alternatives or prerequisites (e.g., dependencies) are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datafence_set_box_external_network_blockBIdempotent
Block (true) or allow (false) a Box's external network access.
| Name | Required | Description | Default |
|---|---|---|---|
| boxId | Yes | Box number (see ncloud_datafence_list_boxes) | |
| fenceId | Yes | Datafence number (see ncloud_datafence_get_datafence) | |
| isBlock | Yes | true: block external network, false: allow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the polarity semantics (true=block, false=allow) but does not say whether the change applies immediately, whether it affects a running box, or what authorization is needed — so it adds modest value over the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the action and its boolean argument are stated in one pass.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple idempotent toggle with full schema coverage and safety annotations, the description is nearly sufficient. It could still note preconditions or immediate-effect behavior, but nothing essential for calling it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and all three parameters are documented in the schema, including the true/false meaning of isBlock. The description's restatement of that boolean adds nothing beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action (block/allow) on a specific resource (a Box's external network access), and the boolean polarity is spelled out. It does not explicitly contrast itself with sibling tools, but the datafence/box scoping makes the intent unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives no guidance on when to use this versus alternatives, no preconditions (e.g. box state, required permissions), and no note on when blocking is appropriate. The only routing hint is the boxId parameter description pointing at ncloud_datafence_list_boxes, which is schema text, not description text.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_create_jobB
Create a new Data Flow job. A job defines the execution configuration for a workflow.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Job name | |
| dryRun | No | If true, preview without creating | |
| options | No | Job execution options (e.g. resource spec, parallelism) | |
| workflowId | No | Associated workflow ID | |
| description | No | Job description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds minimal behavioral context beyond the annotation 'destructiveHint=false'. It does not disclose whether the tool is idempotent, what happens on success, required permissions, or any side effects. For a creation tool, more transparency is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (two sentences) but lacks detail for a tool with 5 parameters and nested objects. While concise, it could be expanded to include parameter relationships or return value without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description does not mention the return value (no output schema) or explain how parameters like 'workflowId' and 'options' relate. It also fails to provide context about execution configurations, which is critical for a creation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% parameter description coverage, so the schema already documents parameters well. The tool description does not add extra meaning beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new Data Flow job'), and defines the resource as 'execution configuration for a workflow'. It distinguishes from sibling tools like list, get, update, delete, execute by focusing solely on creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives (e.g., update_job, verify_job, execute_job). The description only states what it does, without mentioning prerequisites, when not to use it, or comparisons to similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_create_triggerA
Create a new Data Flow trigger for scheduled or event-based job execution.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Trigger name | |
| type | No | Trigger type (e.g. CRON, EVENT) | |
| jobId | Yes | Job ID to associate with this trigger | |
| dryRun | No | If true, preview without creating | |
| enabled | No | Whether the trigger is enabled (default: true) | |
| schedule | No | Cron expression for scheduled triggers (e.g. '0 0 * * *') | |
| description | No | Trigger description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate destructiveHint: false. The description ('Create') adds no behavioral details beyond what is implied by the verb. It does not disclose any side effects, prerequisites, or idempotency. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly conveys the tool's purpose. Every word serves a purpose, with no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal but covers the basic purpose. It does not explain the difference between trigger types (CRON vs EVENT) or the behavior of parameters like dryRun or enabled. Given the absence of an output schema and 7 parameters, more context would be beneficial, but the schema descriptions partially compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all 7 parameters. The description adds no additional meaning beyond the schema field descriptions. Baseline 3 is appropriate since the schema already documents the parameters adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Create'), the resource ('Data Flow trigger'), and the purpose ('scheduled or event-based job execution'). It effectively distinguishes this tool from sibling tools like ncloud_dataflow_list_triggers, ncloud_dataflow_get_trigger, and ncloud_dataflow_delete_trigger.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating scheduled or event-based triggers, but it does not explicitly state when to use this tool versus alternatives (e.g., ncloud_functions_create_trigger) or when not to use it. No exclusions or alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_create_workflowB
Create a new Data Flow workflow. A workflow defines the data pipeline with nodes (source, filter, sink) and edges connecting them.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Workflow name | |
| edges | No | List of edges connecting nodes | |
| nodes | No | List of nodes in the workflow | |
| dryRun | No | If true, preview without creating | |
| description | No | Workflow description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits beyond what annotations (destructiveHint: false) already indicate. It doesn't mention idempotency, validation, or side effects. The explanation of 'workflow' adds context but not behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences and front-loads the primary action. However, it lacks usage guidance, which could be added without significant length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters and no output schema, the description explains what a workflow is but does not cover return values, required parameters, or the behavior of dryRun. It is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the parameter descriptions in the schema. No parameter is elaborated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and resource 'Data Flow workflow', and briefly explains what a workflow is. It distinguishes from sibling tools like get, update, delete, and list operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ncloud_dataflow_update_workflow or ncloud_dataflow_list_workflows. There is no mention of prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_delete_jobADestructiveIdempotent
⚠️ Destructive: Delete a Data Flow job permanently. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | Job ID to delete | |
| confirm | No | Must be true to execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds a 'Destructive' warning and notes permanence, which reinforces but does not significantly extend beyond annotations. No contradiction. The confirm parameter behavior is already in the schema. Overall, limited added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a warning emoji, two essential facts (action and confirm requirement), and zero filler. It is optimally concise and front-loaded, earning its place with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not explain return values. It covers the core action and confirm requirement but omits details like prerequisites (e.g., job existence, permissions) or idempotency behavior. For a destructive tool with annotations, it is minimally adequate but lacks completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the description only reiterates that confirm must be true, which is already stated in the schema's property description. No new semantic information is provided about parameters beyond what the schema already conveys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete') and the resource ('Data Flow job'), with the word 'permanently' emphasizing the effect. It is concise and directly conveys the tool's purpose, distinguishing it from other delete tools like ncloud_dataflow_delete_workflow by naming 'job' specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies the mandatory confirm=true requirement, which is a key usage guideline. However, it does not provide when-to-use vs. alternatives (e.g., other delete tools) or when-not-to-use criteria. The guidance is minimal but functional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_delete_triggerADestructiveIdempotent
⚠️ Destructive: Delete a Data Flow trigger permanently. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute the destructive operation | |
| triggerId | Yes | Trigger ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true. The description adds context by stating 'permanently' and requiring confirm=true, which goes beyond the annotation flags. It does not elaborate on consequences like irreversibility or error on non-existent trigger, but given the annotation coverage, it is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence plus a note, front-loaded with a warning icon and 'Destructive'. Every word earns its place with no redundancy. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple operation (delete), the description covers the essential aspects: what it does, that it requires confirmation, and that it's destructive. With no output schema, the description need not explain return values. The idempotency hint is provided via annotations. Overall, it is complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add additional meaning beyond the schema for the parameters; it repeats the confirm requirement already in the schema. Thus, no extra semantic value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool deletes a Data Flow trigger permanently, using the verb 'Delete' and specifying 'permanently'. It includes a warning icon and 'Destructive' to emphasize the action, distinguishing it from sibling tools like create, get, and list triggers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to set confirm=true to execute the deletion, providing a clear prerequisite. It warns that the operation is destructive, but does not explicitly state when to use this tool versus alternatives (e.g., disabling a trigger). However, the context is sufficiently clear for a delete operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_delete_workflowADestructiveIdempotent
⚠️ Destructive: Delete a Data Flow workflow permanently. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute the destructive operation | |
| workflowId | Yes | Workflow ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint and idempotentHint. The description adds the confirm safety mechanism, explicitly stating that the action is destructive and requires confirmation. It does not contradict annotations and provides useful behavioral context beyond what annotations offer.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using two short sentences. It front-loads a warning emoji and 'Destructive:' to immediately convey the critical nature. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with no output schema and full parameter coverage, the description covers the basics. However, it omits potential prerequisites (e.g., workflow must exist, must not be running) and does not mention the asynchronous nature or error conditions. Additional context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions already present. The description essentially repeats the confirm parameter's schema description ('Set confirm=true to execute'). No additional semantic meaning is added beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Delete a Data Flow workflow permanently.' It specifies the resource (Data Flow workflow) and the permanence of the operation. Among sibling tools, it uniquely identifies the delete operation for workflows.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage hint for the confirm parameter ('Set confirm=true to execute') but does not offer guidance on when to use this tool versus alternatives (e.g., other delete tools or non-destructive actions). No explicit when-to-use or when-not-to-use context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_execute_jobA
Execute a Data Flow job. Starts the data pipeline processing.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | Job ID to execute |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. The description only states 'Execute' and 'Starts the data pipeline processing,' but does not mention whether the execution is synchronous or asynchronous, whether it returns immediately, potential side effects, or failure modes. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and contains no filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is minimally complete. However, it does not mention that execution may be asynchronous or that results can be retrieved via get_job_executions. It lacks any post-execution guidance, which would be helpful for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the parameter 'jobId' described as 'Job ID to execute.' The tool description adds no additional meaning beyond the schema. Since coverage is high, baseline 3 is appropriate, and no extra value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Execute' and the resource 'Data Flow job', and 'Starts the data pipeline processing' reinforces the action. It distinguishes this tool from sibling tools like create, delete, list, get, verify, etc. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use: to execute a Data Flow job. However, it provides no guidance on prerequisites (e.g., job must exist and be in a valid state), when not to use this tool, or alternatives (e.g., verify_job first, or use get_job_executions to check results). The context is clear but lacks exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_execute_workflowB
Execute a Data Flow workflow. Starts a new execution of every job in the workflow.
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | Workflow ID to execute (see ncloud_dataflow_list_workflows) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full disclosure burden. It does reveal the side effect that every job in the workflow is started, but says nothing about permissions, whether the call is asynchronous, whether the run can be cancelled, or what (execution ID?) comes back.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the action and followed by the scope clarification. Nothing is padded, though the second sentence partially restates the first before adding the 'every job' nuance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter execute tool this covers the core action, but with no output schema the description is the only place to state whether an execution handle is returned and whether the call blocks or returns immediately, and it omits both.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one parameter at 100% schema description coverage, and the schema itself already routes the agent to ncloud_dataflow_list_workflows for the ID. The description adds no format, constraint, or sourcing detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource ('Execute a Data Flow workflow') with a second sentence that pins down the scope: every job in the workflow runs. That fan-out detail meaningfully separates it from the sibling ncloud_dataflow_execute_job, though the sibling is never named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the verb 'Execute'; there is no explicit when-to-use, no statement of prerequisites (e.g., workflow must exist / be active), and no routing to alternatives like ncloud_dataflow_execute_job for single-job runs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_execution_intervalBRead-only
Get job execution count statistics for Data Flow dashboard. Returns execution counts grouped by time interval.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | Yes | End of the query range (ISO 8601, e.g. 2025-03-20T23:59:59) (required) | |
| startDate | Yes | Start of the query range (ISO 8601, e.g. 2025-03-19T00:00:00) (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
annotations already declare readOnlyHint=true, so the safety profile is covered by structured data. The description adds that output is aggregated counts grouped by interval, which is useful but minimal; no pagination, granularity, or timezone behavior is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with the purpose and return shape front-loaded. Minor redundancy between 'execution count statistics' and 'execution counts' but no wasted clauses.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only stats query the description is minimally adequate, but with no output schema and several near-identically-named siblings it should say more to help disambiguate and describe the returned structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both required date parameters are fully documented with ISO 8601 examples, so the schema carries the semantics. The description only reinforces that the range drives interval grouping; it adds no new syntax or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb ('Get') and a specific resource ('job execution count statistics ... grouped by time interval'), which distinguishes it from the many list/get siblings. However, it does not distinguish itself from the very similar ncloud_dataflow_get_execution_times or ncloud_dataflow_get_execution_result, so an agent must open schemas to tell them apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance and no mention of the closely-named siblings (get_execution_times, get_execution_result, get_job_executions). The agent is left to infer selection from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_execution_resultBRead-only
Get job execution result statistics (execution count, success count, failure count) for Data Flow dashboard.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | Yes | End of the query range (ISO 8601, e.g. 2025-03-20T23:59:59) (required) | |
| startDate | Yes | Start of the query range (ISO 8601, e.g. 2025-03-19T00:00:00) (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes the safe read-only nature, so the bar is lower. The description adds value by disclosing the return shape (execution/success/failure counts), but omits any auth, rate-limit, or aggregation-window behavior beyond the date range.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that names the tool's action first and the returned fields second. No filler or redundancy, though it is arguably a touch terse for a metrics tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing return content and does so by listing the three count fields, which is exactly what an agent needs to know. Minor gaps remain around scope (per-workflow vs dashboard-wide) but nothing critical is missing for a read-only stats call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both startDate and endDate (with ISO 8601 examples and required markers) are fully documented in the schema. The description adds no parameter-level syntax or constraint information, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('job execution result statistics') and even enumerates the returned counts, so the agent knows exactly what comes back. However, it does not distinguish itself from near-named siblings like ncloud_dataflow_get_execution_interval, ncloud_dataflow_get_execution_times, or ncloud_dataflow_get_workflow_executions, leaving ambiguity about which 'execution' tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no alternative tool is named. An agent facing several similarly named Data Flow execution tools gets no routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_execution_timesCRead-only
Get job execution time statistics for Data Flow dashboard.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | Yes | End of the query range (ISO 8601, e.g. 2025-03-20T23:59:59) (required) | |
| startDate | Yes | Start of the query range (ISO 8601, e.g. 2025-03-19T00:00:00) (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the bar is lower, but the description adds essentially no behavioral context beyond the purpose statement. It discloses nothing about aggregation granularity, return structure, or pagination even though no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. It is efficient, though arguably under-sized for the scope of a statistics-returning tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotation detail beyond readOnlyHint, the description should explain what these execution-time statistics contain. It does not, leaving an agent unable to anticipate the return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both startDate and endDate are fully documented in the schema. The description adds no format or interpretation detail beyond that, which is the expected baseline when the schema carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (job execution time statistics), distinguishing it somewhat from siblings like get_execution_interval and get_execution_result. However, 'statistics' remains vague about exactly what is returned, and it doesn't explicitly contrast with the closest siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, prerequisites, or alternatives. Saying it is 'for Data Flow dashboard' hints at context but does not tell an agent when to pick this over get_execution_interval, get_execution_result, or get_job_executions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_jobBRead-only
Get detailed information of a specific Data Flow job by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | Job ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so the description adds little beyond stating it gets information. It does not describe any behavioral traits such as response format, potential delays, or limitations. Given annotations exist, the bar is lower but the description should still add context like what fields are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It front-loads the verb and resource, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter and existing annotations, the description is minimally complete. However, it does not hint at the output structure (no output schema) or confirm that the response is suitable for further operations. Could be improved with a brief note on what 'detailed information' typically includes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema description for jobId ('Job ID to query') is clear. The tool description does not add additional meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed information of a Data Flow job by ID. It differentiates from sibling tools like ncloud_dataflow_list_jobs (which lists jobs) and ncloud_dataflow_create_job (which creates). However, it could specify what 'detailed information' includes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. It mentions 'by ID' implying a prerequisite (knowing the job ID), but does not explicitly state that you should first list jobs to get the ID or that this is a read-only lookup. No exclusions or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_job_executionBRead-only
Get detailed information of a specific Data Flow job execution.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | Job ID | |
| executionId | Yes | Execution ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's 'Get detailed information' is consistent but adds no extra behavioral context. No disclosure of rate limits, prerequisites, or other traits beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded. It is efficient but could benefit from slightly more detail without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get tool with 2 well-described params and annotations, the description is adequate but lacks detail on return format or the scope of 'detailed information'. With no output schema, a bit more context would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters (jobId, executionId). The description does not add additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'detailed information', and the specific target 'a specific Data Flow job execution'. It distinguishes from plural variant and other dataflow tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidelines, when-to-use, when-not-to-use, or alternatives are provided. The agent has no guidance to differentiate from sibling tools like ncloud_dataflow_get_job_executions or ncloud_dataflow_get_job.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_job_executionsARead-only
Get execution history of a specific Data Flow job.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based) | |
| size | No | Page size | |
| jobId | Yes | Job ID to query executions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint: true, which the description does not contradict. However, the description adds no behavioral context beyond stating 'execution history', such as pagination behavior or sorting. With annotations covering read-only, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with verb and object, no wasted words. Earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters, no output schema, and no nested objects, the description is brief but sufficient. It implies a list of executions via 'execution history' and the plural tool name. Could mention return format but not strictly necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with all three parameters (jobId, page, size) already described in the schema. The tool description adds no additional parameter meaning beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'execution history of a specific Data Flow job'. It distinguishes from sibling tools like 'ncloud_dataflow_get_job_execution' (singular) and 'ncloud_dataflow_get_workflow_executions' by specifying 'execution history' for a job.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives such as 'ncloud_dataflow_get_job_execution' or 'ncloud_dataflow_list_jobs'. No context about when to use or when not to use is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_triggerARead-only
Get detailed information of a specific Data Flow trigger.
| Name | Required | Description | Default |
|---|---|---|---|
| triggerId | Yes | Trigger ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation indicates a safe read operation, which aligns with the description. No additional behavioral traits (e.g., required permissions, rate limits, or response size) are mentioned beyond what the annotation provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that delivers the essential information without any unnecessary words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with one required parameter, the description is nearly complete. It lacks details about the return value (e.g., what fields are included in 'detailed information'), but the presence of sibling tools and the generic name make the intent clear. Minor improvement could be adding output schema or link to documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of the single parameter (triggerId) with a description. The tool description does not add any further context about the parameter, such as how to obtain the ID or its format, so it meets the baseline but adds no value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'detailed information of a specific Data Flow trigger', which precisely matches the tool name. Among sibling tools for Data Flow, there are list, create, delete, etc., and this get operation is clearly distinguished as a retrieval of a single trigger.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like ncloud_dataflow_list_triggers or ncloud_dataflow_get_workflow. The description implies it is for fetching details after obtaining a triggerId, but does not state this directly or provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_workflowARead-only
Get detailed information of a specific Data Flow workflow by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | Workflow ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds minimal behavioral context (e.g., 'detailed information') but does not specify what fields or states are returned. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence with no extraneous words. Every word is necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 'get by ID' tool with no output schema, the description provides sufficient context. It could mention that the workflow must exist, but the tool is straightforward enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter 'workflowId' described as 'Workflow ID to query'. The description restates 'by ID' but adds no new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'detailed information of a specific Data Flow workflow by ID', which distinguishes it from list_workflows and other sibling tools that list or modify workflows.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like ncloud_dataflow_list_workflows or ncloud_dataflow_get_workflow_executions. The description lacks any when/when-not context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_get_workflow_executionsBRead-only
Get execution history of a specific Data Flow workflow.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based) | |
| size | No | Page size | |
| workflowId | Yes | Workflow ID to query executions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with the readOnlyHint annotation, indicating a safe read operation. However, it does not disclose pagination behavior (despite page/size parameters) or any other traits beyond what annotations already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. It could benefit from slightly more detail, but it remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has parameters for pagination and no output schema, the description fails to explain the return format, how pagination works, or what fields are in the execution history. The context is inadequate for a tool with many siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters documented. The description adds no additional meaning beyond the schema; the baseline is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'execution history of a specific Data Flow workflow'. It distinguishes the tool from siblings like ncloud_dataflow_list_workflows and ncloud_dataflow_get_job_executions by focusing on workflow executions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool over alternatives. The description does not mention prerequisites, exclusions, or comparisons with other dataflow tools such as ncloud_dataflow_get_job_executions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_list_jobsARead-only
List all jobs in the Data Flow service. Jobs are executable units within workflows.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based) | |
| size | No | Page size | |
| status | No | Filter by job status | |
| searchText | No | Search by job name or description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which is consistent. The description adds no additional behavioral traits beyond listing, though pagination is implied by parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with purpose, no unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and the description does not mention the return format (e.g., list of job IDs with status). Slightly incomplete for a list operation with 4 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters, so the description adds no extra semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all jobs in the Data Flow service, distinguishing it from other Data Flow tools like get_job or create_job.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as get_job for a specific job or list_workflows for workflows.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_list_triggersARead-only
List all triggers in the Data Flow service. Triggers define scheduled or event-based job execution.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based) | |
| size | No | Page size | |
| searchText | No | Search by trigger name or description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is clear. The description adds that triggers define scheduled or event-based execution, which is contextual but does not disclose additional behavioral traits like pagination, rate limits, or authentication requirements. With annotations present, the bar is lower, and the description adds moderate value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the action, and contains no redundant information. Every word contributes to clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (list with optional pagination and search) and the presence of well-documented schema and readOnly annotation, the description is largely complete. It could benefit from explicitly mentioning pagination or filtering behavior, but it is sufficient for an AI agent to understand the tool's primary function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters (page, size, searchText) are fully described in the input schema with 100% coverage. The description does not add any further meaning or usage details for the parameters, so it meets the baseline for schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'triggers in the Data Flow service', and distinguishes it from sibling tools like get, create, and delete triggers. It also briefly explains what triggers are, adding context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_dataflow_get_trigger for specific triggers. There is no mention of use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_list_workflowsARead-only
List all workflows in the Data Flow service. Workflows define the data pipeline structure with nodes and edges.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based) | |
| size | No | Page size | |
| searchText | No | Search by workflow name or description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so the agent knows this is a read operation. The description adds context about what a workflow is (pipeline structure with nodes and edges), but doesn't disclose other behavioral traits like pagination behavior or response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the purpose, and adds relevant context about workflows without any unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is concise but lacks information about output format, pagination behavior, or what fields are returned. Given the presence of 3 parameters and no output schema, additional context would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (page, size, searchText). The description adds no additional parameter information, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (list), resource (workflows), and service (Data Flow). It distinguishes from sibling tools like ncloud_dataflow_get_workflow by specifying 'list all workflows'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, such as when to list versus get a single workflow. No when-not-to-use or prerequisite information is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_update_jobBIdempotent
Update an existing Data Flow job configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | New job name | |
| jobId | Yes | Job ID to update | |
| options | No | Updated job execution options | |
| workflowId | No | New associated workflow ID | |
| description | No | New job description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, but the description adds no additional behavioral context. No mention of merge vs. replace behavior, required permissions, or side effects. The description relies entirely on annotations for safety insights.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with purpose, no extraneous information. Efficient and direct.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and the complexity of updating a job configuration, the description lacks completeness. It does not state the return value, success criteria, or differentiate sufficiently from sibling tools like update_job_execute_config. Agent would need to infer or experiment.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions, so the description need not repeat them. However, the description adds no semantic value beyond the schema, such as clarifying the 'options' object format or valid values. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update an existing Data Flow job configuration,' specifying the verb (update) and resource (existing Data Flow job configuration). It distinguishes from sibling tools like create, verify, execute, and delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as ncloud_dataflow_create_job, ncloud_dataflow_execute_job, or ncloud_dataflow_update_job_execute_config. Missing context on prerequisites (e.g., job must exist) or when modifications are appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_update_job_execute_configAIdempotent
Update the execution configuration (options) of a Data Flow job.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | Job ID to update execution config | |
| options | Yes | Execution options to update (e.g. resource spec, parallelism, timeout) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, indicating a safe, repeatable update. The description does not contradict these, but also does not add any behavioral context, such as whether the update triggers a job restart, or whether options are merged or replaced. Since the annotations cover the safety profile, a median score is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that conveys the essential information without any unnecessary words or details. It is front-loaded with the action and resource, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the parameter schema is fully described and annotations provide safety context, the description is minimally adequate. However, it lacks examples of common option keys or any hints about the effect of the operation, which would enhance completeness for a tool with a free-form options object.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions. The description adds examples of execution options (resource spec, parallelism, timeout) that go beyond the schema, but does not specify which keys are allowed or the expected format for the options object. This provides some additional value but not comprehensive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (update), the resource (execution configuration of a Data Flow job), and the specific content (options). The name also reinforces this. It distinguishes from sibling tools that perform other operations on dataflow jobs, such as create, delete, or get.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as ncloud_dataflow_update_job. There is no mention of prerequisites, or scenarios where this tool should be avoided. This is a significant gap given the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_update_workflowAIdempotent
Update an existing Data Flow workflow.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | New workflow name | |
| edges | No | Updated list of edges | |
| nodes | No | Updated list of nodes | |
| workflowId | Yes | Workflow ID to update | |
| description | No | New workflow description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description adds no extra behavioral context beyond the obvious 'update'. The description is consistent with annotations but doesn't disclose details like partial update behavior or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of six words, front-loaded with the verb and resource. No unnecessary words or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not mention return values. It is adequate for a simple update but lacks clarification on whether updates are partial or full replacements, which would help an agent use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already explains all parameters. The description does not add any additional meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing Data Flow workflow' uses a specific verb and resource, clearly distinguishing it from sibling tools like create_workflow, delete_workflow, and get_workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives (e.g., create_workflow, delete_workflow), nor any contextual hints about prerequisites or usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataflow_verify_jobARead-only
Verify (validate) a Data Flow job's execution request items before running. Checks if the job configuration is valid.
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | Job ID to verify |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already informs the agent this is a safe, read-only operation. The description adds context that it validates job configuration without modifying state, which is consistent. It does not contradict annotations. However, it does not elaborate on any additional behavioral traits beyond validation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise—two short sentences that convey the action and its purpose. It is front-loaded with the key verb and resource. Every word is necessary and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one parameter and no output schema, the description adequately covers what it does and when to use it. It mentions validation before running and configuration checking. It could optionally describe the return format (e.g., success/failure or error details), but overall it's complete enough for the agent to understand its role among many Data Flow sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides a description for the single parameter (jobId: 'Job ID to verify'). Schema coverage is 100%, so the baseline is 3. The tool description does not add further meaning or context for the parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Verify (validate) a Data Flow job's execution request items before running. Checks if the job configuration is valid.' It uses a specific verb ('Verify') and identifies the resource ('Data Flow job's execution request items'). It distinguishes from siblings like execute_job (which runs the job) and get_job (which retrieves details).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before running a job ('before running'). It gives clear context for when to use this tool—to validate configuration prior to execution. However, it does not explicitly state when not to use it or provide alternatives, but the context is sufficient given the tool's narrow scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_check_account_nameBRead-only
Check Data Forest account name availability and validity
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Account name (lowercase + numbers + '-', 2-16 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows it's a read operation. The description adds that it checks availability and validity, which is consistent and slightly expands on what 'check' entails. No contradictions found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that efficiently conveys the tool's purpose. It is concise without being too terse, but lacks structured detail (e.g., expected return value).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple validation tool with one parameter and readOnlyHint annotation, the description covers the basic purpose. However, it omits what the tool returns (e.g., boolean or result object), which would help the agent understand the output. Since there is no output schema, this gap matters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full description for the 'name' parameter (format constraints). The tool description does not add any additional semantic meaning beyond what the schema already conveys. With 100% schema coverage, baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks both availability and validity of Data Forest account names. It uses a specific verb ('Check') and resource ('Data Forest account name'), and distinguishes from sibling tools like `ncloud_dataforest_check_app_name` which likely checks app names.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives (e.g., other Data Forest check tools or creation tools). It does not mention prerequisites or context for checking availability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_check_account_resourceARead-only
Check if a Data Forest account has any owned resources (before deletion)
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description's 'Check if...' aligns with the readOnlyHint annotation. It adds no additional behavioral details beyond what annotations already provide, such as what constitutes 'owned resources' or potential errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently communicates the tool's purpose and usage context without any extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple check tool with one parameter and no output schema, the description covers the essential purpose and usage context sufficiently. It is complete for its complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes the 'id' parameter with a clear description. The tool description adds no extra parameter information, which is acceptable given 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks if a Data Forest account has owned resources, specifically for pre-deletion verification. It distinguishes from sibling tools like delete_account and get_account_detail by specifying the condition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'before deletion', indicating when to use this tool. It provides clear context but does not explicitly state when not to use it or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_check_app_nameARead-only
Check Data Forest app name availability and validity
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | App name (lowercase + numbers + '-', 3-15 chars, no consecutive '-') | |
| accountId | Yes | Account unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals a safe read operation. The description ('Check') aligns with this but adds no further details about behavior (e.g., what constitutes availability, response format). With no output schema, some additional transparency would be beneficial, but the annotation covers the essential safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, non-redundant sentence with no filler. It is as concise as possible while conveying the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (quick name check), the description is mostly sufficient but omits the expected output format and usage context (e.g., recommended use before app creation). The presence of annotations partially compensates, but the lack of output schema and usage guidance leaves some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (name, accountId) already described in the schema. The description does not add any extra context about the parameters, so it meets the baseline but provides no added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Check Data Forest app name availability and validity' clearly states the action (check) and the resource (app name). It distinguishes itself from sibling tools like ncloud_dataforest_check_account_name and ncloud_dataforest_create_app, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no when-to-use or when-not-to-use guidance. It does not mention that this tool is typically used before creating an app to validate the name, nor does it contrast with other dataforest tools. Agents lack context on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_create_accountB
Create a new Data Forest account
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Account name (lowercase + numbers + '-', 2-16 chars) | |
| password | Yes | Account password (letters + numbers + special chars, 8-20 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint: false already indicates non-destructiveness. The description adds no behavioral context beyond the verb 'Create', such as side effects, return value, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently communicates the purpose. It is appropriately concise, though it could include more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, no output schema), the description is incomplete. It fails to mention what the tool returns, uniqueness requirements (related to check_account_name sibling), or any error handling behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has comprehensive descriptions for both parameters (name and password), covering format and length constraints. The description does not add any extra parameter information, meeting the baseline for 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Create' and the resource 'Data Forest account', which distinguishes it from sibling tools like get_account_detail, list_accounts, check_account_name, and delete_account.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as checking name availability with check_account_name first, or any prerequisites for account creation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_create_appB
Create a new Data Forest app (Kafka, Zeppelin, Spark, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | App name (lowercase + numbers + '-', 3-15 chars) | |
| lifetime | Yes | App lifetime in seconds (300-604800, or -1 for permanent) | |
| accountId | Yes | Account unique identifier (Base62-encoded UUID) | |
| appTypeId | Yes | App type and version (e.g. KAFKA-2.4.0) | |
| queueName | Yes | YARN queue name (e.g. longlived, batch, dev) | |
| components | Yes | App component configurations | |
| description | No | App description (max 2048 chars) | |
| dependentIds | No | Dependent app IDs required for creation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false, and the description adds no behavioral traits beyond the creation action. It does not disclose whether the operation is synchronous, expected response, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the purpose without extraneous wording. Every word is necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 8 parameters (6 required) and nested component structure, the description is too brief. It does not explain return values, how to manage the created app, or how to configure components. No output schema provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are fully documented in the schema. The description adds no additional meaning beyond the schema, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'Create' and the resource 'Data Forest app', with examples of app types (Kafka, Zeppelin, Spark). Among sibling tools, there is no other create_app tool, so it is well-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus alternatives, nor does it mention prerequisites or when not to use it. No exclusions or context are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_delete_accountADestructiveIdempotent
⚠️ Destructive: Delete a Data Forest account. Set confirm=true to execute. Check checkHasResource first.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID, required) | |
| confirm | No | Must be true to execute deletion |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint and idempotentHint. The description reinforces destructiveness and adds practical behavioral context (confirm flag and prerequisite check), though it does not mention idempotency or irreversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three terse, front-loaded sentences with no fluff. Warning icon and key instructions are immediately visible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Sufficient for a straightforward delete: covers the necessary confirmation and prerequisite. Lacks mention of return value or permission requirements, but adequate given simplicity and existing annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions (100% coverage). The description adds no additional parameter meaning beyond what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete) and resource (Data Forest account), includes a warning icon for destructiveness, and distinguishes from sibling tools like get and check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage advice: set confirm=true and check checkHasResource first. Suggests a prerequisite check but does not explicitly name alternative tools for that check.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_delete_appADestructiveIdempotent
⚠️ Destructive: Delete a Data Forest app. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID, required) | |
| confirm | No | Must be true to execute deletion |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructive and idempotent behavior. The description adds the 'confirm' safety mechanism and a warning emoji, which is helpful context beyond annotations. However, it does not elaborate on consequences of deletion (e.g., irreversibility).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (two short sentences) and front-loaded with a warning indicator. Every word serves a purpose with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a delete operation with no output schema, the description adequately explains how to execute (confirm parameter). It could mention idempotency or prerequisites, but the annotation hints and simplicity make this sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The description reinforces the confirm parameter's role but adds no new semantic information beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delete' and the resource 'Data Forest app', making the tool's purpose unambiguous. It also includes a warning icon and execution requirement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for execution ('Set confirm=true') but does not specify when to use this tool versus other delete tools (e.g., account or app deletion alternatives). No explicit exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_get_account_detailBRead-only
Get detailed information of a Data Forest account including HDFS quotas
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
ReadOnlyHint annotation already declares it's read-only. The description adds the specific inclusion of HDFS quotas, which provides some context beyond annotations. However, it does not disclose error behavior or other side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly conveys the purpose. It is concise and front-loaded with key information, but could be slightly expanded without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool (one parameter, read-only, no output schema), the description is somewhat adequate. However, it omits details on the exact output structure beyond quotas, which would help an agent understand the return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; the schema already describes the 'id' parameter as a Base62-encoded UUID. The description does not add any additional meaning or constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (get detailed information) and the resource (Data Forest account), including specific content (HDFS quotas). It distinguishes from sibling tools like ncloud_dataforest_list_accounts by focusing on a single account's detail, though not explicitly said.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., list_accounts, check_account_resource). No prerequisites or context provided, such as needing an account ID from a prior list call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_get_app_basic_settingARead-only
Get default creation settings for a Data Forest app type (components, queues, limits)
| Name | Required | Description | Default |
|---|---|---|---|
| accountId | Yes | Account unique identifier (Base62-encoded UUID) | |
| appTypeId | Yes | App type and version (e.g. DEV-1.0.0, KAFKA-2.4.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows the tool is safe. The description adds context about the returned content (components, queues, limits), which is useful but does not disclose any additional behavioral traits beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the key action and resource. Every part is meaningful with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema, the description provides useful information about the return content (components, queues, limits), which helps the agent understand what to expect. It is nearly complete for a simple read tool, though more structure details could be added.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already described in the schema. The description does not add any extra meaning or usage guidance for the parameters. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('default creation settings'), and the scope ('for a Data Forest app type'). It distinguishes from sibling tools by specifying it returns creation defaults (components, queues, limits), which is unique among read-only dataforest tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ncloud_dataforest_get_app_type_template or ncloud_dataforest_get_app_detail. It does not specify prerequisites, context, or exclude scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_get_app_detailARead-only
Get detailed information of a Data Forest app (state, components, links)
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the tool is known to be read-only. The description adds that it returns 'state, components, links', which provides some behavioral context but does not elaborate on potential side effects or authorization needs beyond what annotations suggest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the tool's purpose and the type of information returned. Every word is necessary; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity (1 parameter, no output schema), the description adequately covers purpose and output. It could benefit from clarifying what 'components' and 'links' refer to, but overall sufficient for an agent to understand when to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'id'. The description does not add any semantic detail beyond the schema's description of the parameter as 'App unique identifier (Base62-encoded UUID)'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool gets detailed information of a Data Forest app, listing specific attributes (state, components, links). The verb 'Get' and resource 'app detail' are specific and distinguish it from sibling tools like list_apps or get_app_basic_setting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not guidance is provided. The tool's purpose is implied as a standard detail retrieval for a specific app, but it doesn't mention alternatives or exclusions among similar Data Forest tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_get_app_type_idsARead-only
Get available Data Forest app type ID list (e.g. DEV-1.0.0, KAFKA-2.4.0, ZEPPELIN-0.10.1)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, covering safety. The description adds no extra behavioral context (e.g., no side effects, auth needs, or rate limits). It provides examples of output but does not describe any other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that conveys the purpose and provides illustrative examples. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters, no output schema, and read-only annotations, the description is adequate. It explains the purpose and gives examples of the IDs. However, it does not mention if the list is static or dynamic, or any prerequisites, but these are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, and schema coverage is 100%. The description adds value by listing example app type IDs, which helps the user understand the expected output format. Baseline 4 for zero-param tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves available Data Forest app type IDs, with concrete examples (DEV-1.0.0, KAFKA-2.4.0, ZEPPELIN-0.10.1). It distinguishes itself from sibling tools like ncloud_dataforest_list_accounts or ncloud_dataforest_get_app_detail by specifying the exact resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. However, the tool's simplicity (no parameters) implies it is used to query available app type IDs before creating or configuring an app. The description lacks when-not and alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_get_app_type_templateBRead-only
Get YARN service template for a Data Forest app type
| Name | Required | Description | Default |
|---|---|---|---|
| appTypeId | Yes | App type and version (e.g. DEV-1.0.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation, but it does not disclose any additional behavioral traits such as error handling, return format, or side effects. Given the annotation, the bar is lowered, but the description adds minimal context beyond the obvious.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—single sentence, front-loaded with verb and resource, no redundant words. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description covers the core purpose. However, given the large number of sibling tools, additional context about return value or usage scenarios would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter appTypeId is fully described in the input schema ('App type and version (e.g. DEV-1.0.0)'). The tool description does not add any additional meaning or context for the parameter, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The tool description clearly states it retrieves a YARN service template for a Data Forest app type. The verb 'Get' and specific resource 'YARN service template' distinguish it from other dataforest getters, though it could elaborate on what the template contains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like ncloud_dataforest_get_app_basic_setting or ncloud_dataforest_get_app_detail. No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_get_kerberos_keytabARead-only
Download the Kerberos keytab file for a Data Forest account. The response is a binary file: pass savePath to write it to disk, otherwise it is returned inline as base64 (≤256 KB).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID) | |
| savePath | No | Local file path to save the .keytab file to (recommended) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is covered. The description adds genuine behavioral context beyond that: the response is binary, savePath writes it to disk, and inline returns are base64 capped at 256 KB. That is useful operational detail not in the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the purpose, followed by the response-format detail. No filler; every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema present, the description carries the return-format burden and does so: binary file, disk or inline base64 with a size cap. Minor gaps (e.g., error behavior if the keytab does not exist) are not covered, but the essentials for correct invocation are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented, which sets a baseline of 3. The description nonetheless clarifies the practical effect of savePath (writes to disk) versus omitting it (inline base64), adding decision-relevant meaning beyond the schema text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Download) and resource (Kerberos keytab file for a Data Forest account), which cleanly distinguishes it from the sibling ncloud_dataforest_reset_kerberos_keytab. An agent can identify the operation without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (fetch the keytab for an account) but gives no explicit when-to-use guidance, no prerequisites, and never names the alternative operation reset_kerberos_keytab. Usage is inferable but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_kill_containerCDestructiveIdempotent
Restart a specific container in a Data Forest app component
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) | |
| containerName | Yes | Container name (e.g. shell-0, broker-1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate destructiveHint=true and idempotentHint=true. The description merely says 'Restart', adding no additional context about side effects, state changes, or required states. It does not contradict annotations but fails to expand upon them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but the choice of 'Restart' instead of 'Kill' misaligns with the tool name, reducing clarity. The sentence is front-loaded but could be more accurate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and only two parameters, the description lacks details on prerequisites (e.g., app must be running), return values, or error conditions. For a destructive operation, more context is needed for safe agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters with descriptions (id as Base62-encoded UUID, containerName with examples). Schema description coverage is 100%, so the description adds no further meaning beyond what the schema already provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Restart' and the resource 'specific container in a Data Forest app component', which is specific and differentiates it from sibling tools like ncloud_dataforest_kill_master. However, the tool name 'kill_container' contradicts the described action, causing potential confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_dataforest_start_app, ncloud_dataforest_stop_app, or ncloud_dataforest_kill_master. No conditions, prerequisites, or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_kill_masterCDestructiveIdempotent
Restart the Application Master of a Data Forest app
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=true and idempotentHint=true, but the description adds no behavioral details beyond 'Restart'. The name 'kill_master' contradicts the restart action, causing confusion about the tool's true effect. No disclosure of side effects, such as downtime or state changes, is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (one sentence), but it is ambiguous and fails to clearly convey the action. Conciseness is okay, but the lack of clarity reduces effectiveness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a single parameter and no output schema, the description should at least indicate what happens after a successful restart (e.g., return status, downtime). The current description is too minimal and does not provide enough context for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter 'id', which is described as 'App unique identifier (Base62-encoded UUID)'. The tool description adds no additional meaning, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The tool name 'kill_master' suggests termination, but the description says 'Restart the Application Master'. This mismatch creates confusion about the actual action, making the purpose unclear. A specific verb and resource is stated, but the inconsistency undermines clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like ncloud_dataforest_kill_container or other Data Forest management tools. The description does not specify prerequisites or context for restarting the Application Master.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_list_accountsARead-only
List all Data Forest accounts
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds no behavioral traits beyond that. It does not mention any caveats like pagination or limits, but given the annotation coverage, the description is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Perfectly concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is basic. Without an output schema, it does not specify what the response contains (e.g., list of account IDs or details). For a simple tool, this is adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has no parameters, so schema coverage is 100%. The description correctly omits parameter details. Baseline 4 for zero parameters is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all Data Forest accounts. It uses specific verb 'List' and resource 'Data Forest accounts', distinguishing it from siblings like get_account_detail (single account) and create_account.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like get_account_detail or check_account_name. The description is minimal and does not provide contextual cues for selection among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_list_appsARead-only
List all apps for a Data Forest account
| Name | Required | Description | Default |
|---|---|---|---|
| accountId | Yes | Account unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description confirms the read nature but adds no additional behavioral context (e.g., pagination, rate limits). No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words. Efficiently conveys the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with 1 param, the description is adequate but could mention return format or pagination to improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter, so baseline is 3. The description adds no parameter info beyond what schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'List' and resource 'apps for a Data Forest account'. It distinguishes from siblings like ncloud_dataforest_list_accounts and ncloud_dataforest_get_app_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives, no prerequisites or context. Agents are not told when to choose this over similar list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_reset_kerberos_keytabB
Reset Kerberos keytab for a Data Forest account
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral context. It only states 'Reset' without disclosing any side effects, such as whether this invalidates existing credentials or requires authorization. A reset operation implies disruption, but this is not explicitly communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that states the core action and resource without any extraneous words. It is front-loaded and every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description is insufficient. It does not indicate what happens after a successful reset (e.g., no output format, no confirmation of change). A more complete description would mention, for example, that a new keytab is generated or that multiple services need updating.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'id', which is fully documented in the input schema. The description does not add any additional context beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb 'Reset' and resource 'Kerberos keytab for a Data Forest account'. This clearly distinguishes it from the sibling tool 'ncloud_dataforest_get_kerberos_keytab' which retrieves the keytab. The purpose is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when a keytab should be reset versus other operations. There is no mention of prerequisites, contextual triggers, or conditions that warrant a reset.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_reset_passwordB
Reset password for a Data Forest account
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID) | |
| password | Yes | New password (letters + numbers + special chars, 8-20 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so description must cover behavioral traits. It only states 'Reset password' without disclosing effects like session invalidation, notification, or idempotency. This is insufficient for safe usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, efficiently conveying the core purpose. However, it sacrifices necessary detail for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, and the description does not indicate return type or success/failure signals. For a mutation tool, this lack of context reduces safe usability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with detailed constraints on both parameters. The description adds no additional meaning beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (reset) and resource (password for Data Forest account). It is distinct from sibling tools like ncloud_dataforest_create_account or ncloud_dataforest_get_account_detail, as it is the only password reset operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. No prerequisites, caveats, or when-not-to-use mentioned. The description is purely functional.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_set_container_countCIdempotent
Change container count for a Data Forest app component
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) | |
| componentName | Yes | Component name (e.g. shell, broker) | |
| containerCount | Yes | New container count |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description merely repeats 'change' without adding behavioral details like scaling behavior, effect on existing containers, or error conditions. Minimal value added beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with verb and resource. No redundancy, every word contributes directly to the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and the description doesn't explain return values or confirm success. With three parameters and no advanced context (like whether scaling is immediate or gradual), the description feels incomplete for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter descriptions. The description adds 'app component' but doesn't significantly enhance understanding beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Change) and resource (container count for a Data Forest app component). It uses specific verbs and identifies the target. However, it doesn't differentiate from sibling tools like start/stop or kill container, missing opportunity for clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. No prerequisites, context, or exclusions provided. Among many similar Data Forest tools, explicit usage instruction is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_set_lifetimeCIdempotent
Change lifetime (running duration) for a Data Forest app
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) | |
| lifetime | Yes | New lifetime in seconds (300-604800) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false. The description adds no additional behavioral context beyond what is already structured. It does not mention consequences of changing lifetime (e.g., whether it takes effect immediately, if the app restarts, or any required states).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of a single sentence that efficiently conveys the core functionality. However, it could be slightly expanded to include critical usage context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and involves mutation, the description lacks important context such as side effects, required prior states (e.g., app must be stopped?), or whether the change is immediate. Annotations provide some safety info but not enough for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for both parameters (id and lifetime). The description does not add extra meaning beyond the schema, but the schema is complete. Thus, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Change lifetime') and the resource ('Data Forest app'). It uses a specific verb and resource, distinguishing it from other dataforest tools like ncloud_dataforest_set_container_count or ncloud_dataforest_set_quota. However, it could be more precise by explicitly mentioning 'running duration' in a more formal term.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidelines are provided. The description lacks any indication of when to use this tool versus alternatives (e.g., when to change lifetime vs. start/stop the app). There is no guidance on prerequisites or context requirements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_set_quotaBIdempotent
Change HDFS quota for a Data Forest account
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Account unique identifier (Base62-encoded UUID) | |
| spaceTb | Yes | Max storage in TB (200-500, 100TB increments, default: 200) | |
| namespace | Yes | HDFS namespace (koya or tata) | |
| fileCountMillion | Yes | File count limit in millions (1-5, default: 1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is idempotent and non-destructive, so the description's burden is reduced. However, it adds no additional behavioral context (e.g., whether changes take effect immediately, affect running jobs, or require a restart). It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, short sentence with no extraneous words. It is concise and front-loaded with the key information, though it could be slightly more structured for completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and the tool's complexity (changing resource limits), the description is too sparse. It does not indicate what the tool returns (e.g., updated quota, confirmation, error), leaving the agent without a complete picture of the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters are fully described in the input schema (100% coverage), so the description adds no extra meaning beyond what is already provided. The baseline of 3 is appropriate as the schema does the necessary work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Change') and the resource ('HDFS quota for a Data Forest account'), making the tool's purpose unambiguous. It distinguishes itself from sibling tools like create_account, delete_account, and get_account_detail by focusing specifically on quota modification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives (e.g., when to adjust quota vs. create a new account or modify other settings). There is no mention of prerequisites, frequency limits, or conditions under which quota changes are appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_start_appAIdempotent
Start a stopped Data Forest app
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, so the description adds no extra behavioral details. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence that is front-loaded with the verb and resource, containing no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple start operation with one parameter, the description is adequate. However, it could mention the effect on an already-started app (idempotent behavior) or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'id', and the tool description does not add any meaning beyond the schema's existing description 'App unique identifier (Base62-encoded UUID)'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Start' and resource 'stopped Data Forest app', clearly distinguishing it from sibling tools like stop_app, list_apps, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool, prerequisites (app must be stopped), or alternatives. The description simply states the action without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataforest_stop_appAIdempotent
Stop a running Data Forest app
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | App unique identifier (Base62-encoded UUID) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description only says "Stop" with no detail on shutdown behavior, timeout, or error states. Annotations provide idempotentHint and destructiveHint, but description adds minimal context beyond those.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundant information. Efficiently communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but for a simple stop operation with one parameter and clear annotations, description is adequate. However, lacks details on return value or post-stop state.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter 'id' is well-documented in schema with description and constraints (Base62-encoded UUID). Description does not add extra meaning beyond schema coverage, so baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb "stop" and resource "running Data Forest app", clearly distinguishing from sibling tools like start_app and delete_app.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit usage guidance or exclusions; only implied that it stops a running app. Does not state when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataquery_cancelADestructiveIdempotent
⚠️ Destructive: Cancel a running query execution on Ncloud Data Query. The query will be terminated and partial results may be lost.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute cancellation | |
| executionId | Yes | Query execution ID to cancel (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true, but the description adds valuable context: the query will be terminated and partial results may be lost. This goes beyond what annotations provide, making the behavioral impact clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences plus an emoji, front-loaded with the warning. Every word is necessary and no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of a cancellation tool and no output schema, the description sufficiently explains the outcome (query terminated, partial results lost). It could mention the return value or that confirmation is required, but schema covers the latter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema documents parameters adequately. The description does not add additional meaning beyond what the schema provides, earning the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool cancels a running query execution, using the verb 'Cancel' and specifying the resource 'running query execution'. It distinguishes from sibling tools like ncloud_dataquery_get_result or ncloud_dataquery_list_queries by its destructive action, but does not explicitly compare.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a running query needs to be stopped, but it does not provide explicit guidance on when not to use it or alternatives. Context from sibling tools suggests it should be used instead of waiting for completion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataquery_executeB
Execute a SQL query synchronously on Ncloud Data Query (Trino-based serverless query service). Returns results directly with pagination support.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | SQL query to execute | |
| isReuse | No | Whether to reuse cached query results (default: false) | |
| timeout | No | Query execution timeout in seconds (1-60, default: 20) | |
| database | No | Database name for query execution | |
| projectId | No | Project ID for query execution | |
| dataSource | No | Data source name for query execution | |
| reuseMaxAge | No | Max age in minutes for reusing cached results (1-10080, default: 60). Required if isReuse=true | |
| executionParameters | No | Query execution parameters (for parameterized queries with '?') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description should disclose behavioral traits. It mentions synchronous execution and pagination support but lacks details on side effects (e.g., does it support INSERT/UPDATE?), authentication needs, rate limits, or result format. For a query execution tool, these are significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the action and service. No unnecessary words. Efficiently communicates the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks information about return values, pagination mechanics, and supported SQL features. No output schema exists, so the description should compensate. The phrase 'pagination support' is vague and does not explain how to paginate. Incomplete for a tool with 8 parameters and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 8 parameters. The tool description adds no additional meaning beyond the schema (e.g., no explanation of how to use 'executionParameters' for parameterized queries). Baseline 3 is appropriate since high schema coverage reduces the need for extra param info.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Execute a SQL query synchronously'), the service ('Ncloud Data Query (Trino-based serverless query service)'), and key behavior ('Returns results directly with pagination support'). It distinguishes from async siblings by specifying 'synchronously'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus its async counterpart or other related tools. The description does not mention prerequisites, limitations, or scenarios where alternatives are preferred. The only implicit hint is the word 'synchronously'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataquery_execute_asyncA
Execute a SQL query asynchronously on Ncloud Data Query. Returns execution ID immediately. Use ncloud_dataquery_get_result to retrieve results.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | SQL query to execute | |
| isReuse | No | Whether to reuse cached query results (default: false) | |
| database | No | Database name for query execution | |
| dataSource | No | Data source name for query execution | |
| reuseMaxAge | No | Max age in minutes for reusing cached results (1-10080, default: 60). Required if isReuse=true | |
| executionParameters | No | Query execution parameters (for parameterized queries with '?') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden. It discloses async execution and immediate return of execution ID, but omits side effects, error conditions, rate limits, or permission requirements. More detail would be beneficial for an execution tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. The first sentence states the action and return value; the second tells the follow-up tool. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description mentions the return value (execution ID) and the follow-up tool. It could mention query validity or time limits, but for a simple tool it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add parameter-specific details beyond what the schema provides. No enhancement to parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (execute SQL query asynchronously), the resource (Ncloud Data Query), and the key behavior (returns execution ID immediately). It distinguishes itself from sibling tools like ncloud_dataquery_get_result and ncloud_dataquery_cancel by mentioning the async return and follow-up tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly directs the agent to use ncloud_dataquery_get_result to retrieve results, which is good guidance for the next step. However, it does not compare when to use async vs synchronous exec, nor mention any prerequisites like database connectivity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataquery_get_resultARead-only
Get query execution result by execution ID. Supports pagination with offset. Use after async query execution or to fetch next page of sync query results.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | Offset for pagination (default: 0) | |
| pageSize | No | Number of rows per page (1-1000, default: 100) | |
| executionId | Yes | Query execution ID (returned from execute or execute_async) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the tool is read-only. The description adds context about pagination and usage sequence (after async or for next page), which is valuable beyond the annotation. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states purpose, second adds usage context and pagination. No redundant words. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations and complete schema, the description covers purpose, usage context, and pagination. It could mention return format, but the tool has no output schema, so it's adequate. Complete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all three parameters (executionId, offset, pageSize). The description mentions pagination with offset but does not add meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves query execution results by execution ID, and distinguishes from siblings like ncloud_dataquery_execute by specifying use after async execution or for pagination. The verb 'get' and resource 'query execution result' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: after async query execution or to fetch the next page of sync query results. It also mentions pagination support. It lacks explicit exclusion of other scenarios but provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dataquery_list_queriesARead-only
List query execution history on Ncloud Data Query with optional status filtering and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| status | No | Filter by query status | |
| pageSize | No | Items per page (1-500, default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals the tool is read-only. The description adds the context of listing history with filtering, but does not provide additional behavioral details beyond what annotations cover. It is consistent and non-contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the tool's purpose and key features (listing history with status filter and pagination). No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with no output schema and full annotation coverage, the description provides sufficient context: it says what the tool does, the optional filters, and that it's read-only. It does not explain return format, but that is not required since there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters, each with clear descriptions. The description adds high-level context ('optional status filtering and pagination') that aligns with the schema but does not introduce new meaning or constraints beyond the structured definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'List' and resource 'query execution history', clearly stating the function. It mentions optional filtering and pagination, which adds specificity. However, it does not explicitly differentiate from sibling tools like ncloud_dataquery_get_result or ncloud_dataquery_cancel, though the name and description make the distinction clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for browsing history with optional status filter and pagination, but it lacks explicit guidance on when to use this tool versus related siblings (e.g., when to use get_result for a specific query or cancel to stop a running query). No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_check_schema_compatibilityARead-only
Check if a new schema is compatible with the latest existing schema for a Data Stream topic
| Name | Required | Description | Default |
|---|---|---|---|
| schema | Yes | New schema definition as JSON string to validate | |
| topicId | Yes | Topic ID | |
| schemaType | Yes | Schema type |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint: true, which the description aligns with. The description does not disclose additional behavioral traits such as what happens on compatibility failure, or any side effects. It adds minimal transparency beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence of 16 words. It is front-loaded and contains no unnecessary information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is fairly complete given the tool's complexity (3 parameters, readOnly). It states inputs and the comparison target. However, it does not clarify what 'compatible' means (e.g., breaking changes), which is a minor gap for a compatibility check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all parameters. The description does not add extra meaning beyond what is in the schema, such as clarifying the format of the 'schema' parameter or the allowed 'schemaType' values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Check' and the resource 'a new schema is compatible with the latest existing schema for a Data Stream topic'. It is specific and distinguishable from sibling tools like ncloud_datastream_create_schema and ncloud_datastream_get_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage before creating or updating a schema, but it does not explicitly provide guidance on when to use this tool versus alternatives like ncloud_datastream_create_schema or ncloud_datastream_get_schema. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_create_connectorA
Create a connector (Object Storage sink) for a Data Stream topic. Only one connector per topic. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, preview without creating | |
| roleNrn | Yes | NRN of the Data Stream service role for connector access | |
| topicId | Yes | Topic ID to create connector for | |
| location | Yes | Storage path in s3a://{bucket}/{path} format | |
| dateFormat | Yes | Date format for sub-path: NONE, YEAR, MONTH, DAY, HOUR | |
| exportType | No | Connector type (currently only OBJECT_STORAGE) | OBJECT_STORAGE |
| flushCount | No | Messages per file (default: 5000) | |
| schemaType | No | Message value serialization (default: STRING) | |
| description | No | Connector description (max 200 chars) | |
| consumerSpec | Yes | Consumer spec: SMALL (1 container, 250KB/s per partition) or MEDIUM (2 containers, 500KB/s per partition) | |
| flushInterval | No | File creation interval in minutes (default: 10) | |
| includeTopicInPath | Yes | Whether to create topic name directory in storage path |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false. The description adds the behavioral constraint 'Only one connector per topic' and hints at dry-run capabilities. It does not contradict annotations. For a create tool, it could disclose more about idempotency or asynchronous behavior, but the added constraint is useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, each providing essential information: what the tool does and a key usage tip. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While concise, the description omits prerequisites (e.g., topic existence, valid roleNrn) and does not mention potential asynchronous creation or response format. Given 12 parameters and no output schema, a bit more context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema fully documents parameters. The description adds minimal value beyond schema: it notes 'Object Storage sink' (confirming purpose) and mentions dryRun usage. Baseline 3 is appropriate as the description does not significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a connector (Object Storage sink) for a Data Stream topic' with a specific verb (create) and resource (connector). It also adds the constraint 'Only one connector per topic', which distinguishes it from sibling tools like update or delete connectors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: it creates an Object Storage sink connector for a topic. The tip 'Use dryRun=true to preview' guides safe usage, and the one-per-topic constraint implies when to use alternatives (update/delete). However, it does not explicitly state when not to use or direct to specific sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_create_schemaB
Create a schema for a Data Stream topic (AVRO, JSON, or PROTOBUF)
| Name | Required | Description | Default |
|---|---|---|---|
| schema | Yes | Schema definition as JSON string | |
| topicId | Yes | Topic ID to create schema for | |
| schemaType | Yes | Schema type |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral details beyond the annotation (destructiveHint: false). It doesn't mention schema validation, overwrite behavior, or whether changes take effect immediately. The annotation provides minimal safety info, and the description adds little further.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no fluff. It is appropriately sized for the tool's simplicity, though it could be slightly more structured by including key constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description does not specify the expected output (e.g., schema details or success message), nor does it mention that the topic must exist. Given the lack of an output schema and minimal annotations, the description is incomplete for an agent to fully understand the tool's behavior and requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% from the input schema, so the baseline is 3. The description lists allowed types (AVRO, JSON, PROTOBUF) but this is already present in the schema enum. No additional meaning is added beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the resource ('schema for a Data Stream topic'), and enumerates allowed schema types (AVRO, JSON, PROTOBUF). It distinguishes this tool from sibling tools like list_schemas, get_schema, delete_schema, and check_schema_compatibility.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as prerequisites (e.g., topic must exist) or when to use check_schema_compatibility first. The description lacks usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_create_topicA
Create a new topic on the Data Stream service. Topic name must include the account prefix (use get_topic_prefix first). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Topic name including prefix (e.g. h4j6l-mytopic). Max 200 chars, lowercase+numbers+hyphen | |
| dryRun | No | If true, preview without creating | |
| partitions | No | Number of partitions 1~16 (default: 1) | |
| description | No | Topic description (max 200 chars) | |
| retentionMs | No | Message retention in ms (default: 86400000 = 24h) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare non-destructive (destructiveHint=false). Description adds dry-run preview capability and prefix requirement. Does not mention failure modes or quotas, but sufficient given annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. First sentence states core purpose, second provides critical usage details. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description covers creation purpose, prerequisites, and preview. Lacks post-creation response details, but agent can infer or use sibling tools. Adequate for complexity (5 params).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions. Description adds valuable context: name must include prefix (not in schema hints) and reinforces dryRun's purpose, improving semantic clarity beyond schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the resource ('topic'), and the service ('Data Stream') with a specific verb. It distinguishes from siblings like list/update/delete by focusing on creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit prerequisites: name must include account prefix and encourages dry-run for preview. Implicitly distinguishes from update/delete by context, but lacks explicit when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_delete_connectorADestructiveIdempotent
⚠️ Destructive: Delete a Data Stream connector. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute the destructive operation | |
| topicId | Yes | Topic ID | |
| connectorId | Yes | Connector ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already set destructiveHint=true and idempotentHint=true. The description adds context by explicitly warning 'Destructive' and requiring confirm=true, which reinforces the behavior and clarifies execution requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a single sentence with a warning emoji, front-loading the destructive nature. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (simple delete, 3 params), the description is mostly complete. It covers the destructive behavior and confirmation requirement. However, it lacks details on post-deletion outcomes or prerequisites, which could enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description only references the confirm parameter but does not add new meaning beyond the schema's description. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete a Data Stream connector') and specifies the resource (connector). It distinguishes itself from sibling tools like create_connector and get_connector by explicitly mentioning deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a warning emoji and states it is destructive, requiring confirm=true to execute. This provides clear guidance on when to use (i.e., with confirmation) but does not explicitly mention when not to use or provide alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_delete_schemaADestructiveIdempotent
⚠️ Destructive: Delete a schema from a Data Stream topic. May affect message serialization/deserialization. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute the destructive operation | |
| topicId | Yes | Topic ID | |
| resourceId | Yes | Schema resource ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint and idempotentHint. The description adds context about potential side effects on message serialization/deserialization, which goes beyond the annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—just one sentence with a warning and condition. It is front-loaded with the most critical information (destructive nature and action).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation, the description covers the essentials: what it does and the precondition to execute. It does not explain return values (no output schema) or reversibility, but these are acceptable given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description adds little beyond what is already in the schema. It mentions the confirm parameter requirement, which is also documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and resource (schema from a Data Stream topic). It distinguishes from sibling tools (create, list, get, delete) by indicating it is the destructive operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the condition for use: 'Set confirm=true to execute.' It also warns about potential effects on serialization/deserialization. It does not explicitly mention when to use alternatives, but the context of sibling tools makes this clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_delete_topicADestructiveIdempotent
⚠️ Destructive: Permanently delete a Data Stream topic. All messages in this topic will be lost. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute the destructive operation | |
| topicId | Yes | Topic ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds context beyond annotations: messages will be lost, and confirm flag is required. Annotations already indicate destructive and idempotent, so description reinforces and specifies these details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff. Uses warning emoji and front-loads key destructive nature and action required. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a delete operation: covers purpose, destruction, parameter usage, and safety requirement. No output schema expected, so return value omission is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and description adds meaning by explaining the confirm parameter's role as a safety gate and the topicId parameter's purpose. This helps the agent understand critical parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'permanently delete a Data Stream topic' with verb and resource. Distinct from sibling tools like create or update by explicitly being a deletion operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit instruction to set confirm=true to execute, which guides safe usage. Does not explicitly state when not to use, but the destructive warning implies caution.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_get_connectorARead-only
Get connector information for a Data Stream topic (one connector per topic)
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID to query connector |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, consistent with 'Get'. The description adds that it retrieves info for one connector per topic, but this doesn't disclose additional behavioral traits beyond what annotations provide. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 13 words, concise and front-loaded. No superfluous words, every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with one parameter and no output schema, the description provides sufficient context: what it does, the constraint, and the parameter. It could be improved by linking to related tools (e.g., list_topics), but overall it's reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description 'Topic ID to query connector'. The description's 'one connector per topic' adds context but doesn't significantly enhance meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'connector information', and specifies the context 'for a Data Stream topic' with the constraint 'one connector per topic'. This effectively distinguishes it from sibling tools like create, update, and delete connectors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when connector information is needed, but lacks explicit guidance on when to use this tool vs alternatives (e.g., list_topics, get_topic). No 'when not to use' or comparative context is provided, though the 'one connector per topic' hint offers minimal differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_get_registry_configARead-only
Get schema registry compatibility configuration for a Data Stream topic
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description confirms a read operation via 'Get'. It does not add significant behavioral details beyond what annotations provide, such as error handling or authentication requirements, which is acceptable since annotations cover safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 8 words, front-loaded with the action and resource, with no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal; it does not explain what the compatibility configuration entails, the return format, or potential edge cases. Given the tool's simplicity and lack of output schema, it is adequate but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter (topicId) described as 'Topic ID'. The description does not add additional meaning beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get schema registry compatibility configuration for a Data Stream topic' clearly states the verb ('Get') and the specific resource ('schema registry compatibility configuration'), distinguishing it from siblings like ncloud_datastream_get_registry_info which retrieves broader registry information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by specifying the resource, but provides no explicit guidance on when to use this tool versus alternatives (e.g., ncloud_datastream_get_topic, ncloud_datastream_update_registry_config) or any prerequisites like topic existence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_get_registry_infoARead-only
Get schema registry endpoint and modifiability info for a Data Stream topic
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's claim of retrieving info is consistent. However, the description adds no additional behavioral context beyond what the annotation provides (e.g., error handling, idempotency, or data freshness).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence (12 words) that front-loads the key information. Every word is necessary and contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description sufficiently conveys what the tool returns (endpoint and modifiability info). It could be more complete by mentioning idempotency or typical use cases, but it is adequate for a straightforward read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'topicId' is fully described in the input schema with a description of 'Topic ID'. The tool description adds no extra meaning or constraints beyond the schema, which has 100% coverage. Baseline score 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('Get') and the resource ('schema registry endpoint and modifiability info for a Data Stream topic'). It uses a specific verb+resource pattern and distinguishes from sibling tools like ncloud_datastream_get_topic, which retrieves topic details, not registry-specific info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when you need registry info for a specific topic, but it provides no explicit guidance on when to use this tool versus alternatives (e.g., ncloud_datastream_get_registry_config). No 'when to use' or 'when not to use' advice is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_get_schemaARead-only
Get detailed schema definition for a specific schema resource
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID | |
| resourceId | Yes | Schema resource ID (from list schemas response) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation indicates safe read-only behavior, and the description does not contradict it but adds no additional context about side effects or behavior beyond the annotation. It is adequate but not enhanced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 8 words with no redundancy or filler. Every word is necessary and the message is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with two required parameters and no output schema, the description is minimally adequate. However, it does not explain what the schema definition includes or clarify the context of 'schema resource', leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for both parameters (topicId and resourceId). The description does not add any additional meaning beyond what the schema already provides, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and resource 'detailed schema definition for a specific schema resource', clearly distinguishing it from sibling tools like list_schemas and create_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_datastream_list_schemas or ncloud_datastream_create_schema. The description simply states what it does without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_get_topicARead-only
Get detailed information of a specific Data Stream topic
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description ('Get detailed information') is consistent. However, no additional behavioral traits are disclosed (e.g., response structure, rate limits). The description adds minimal value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. It efficiently conveys the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal for a tool with no output schema. It does not detail what 'detailed information' includes (e.g., configuration, partitions). While the tool is simple, the agent might benefit from knowing the response scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for the single parameter 'topicId'. The tool description does not add extra meaning beyond what the schema provides, so baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the specific resource ('a specific Data Stream topic'). It is distinct from sibling tools like 'ncloud_datastream_list_topics' (list all) and 'ncloud_datastream_create_topic' (create).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., when you have a topicId and need details vs. listing all topics with list_topics). The description does not provide context on prerequisites or exclude scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_get_topic_prefixARead-only
Get the topic name prefix for the Data Stream service. The prefix is automatically prepended to topic names and is unique per account.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds context that the prefix is automatically prepended and unique per account, which aids understanding beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action verb 'Get'. Every sentence adds value with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's purpose and the nature of the prefix. It could explicitly state the output format (e.g., returns a string), but the context is sufficient for a simple read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and the schema coverage is 100%. The description provides essential context about the prefix's role, meeting the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves the topic name prefix for the Data Stream service. It explains the prefix is automatically prepended and account-specific, distinguishing it from sibling tools like ncloud_datastream_list_topics or ncloud_datastream_get_topic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to obtain the prefix, but it does not explicitly state when to use it versus alternatives, nor does it provide when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_list_schemasBRead-only
List schemas registered for a Data Stream topic
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default: 0) | |
| size | No | Page size (default: 10) | |
| topicId | Yes | Topic ID to query schemas | |
| schemaId | No | Filter by schema registry ID | |
| schemaType | No | Filter by schema type |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include readOnlyHint=true, so the agent knows this is a read-only operation. The description adds no further behavioral context (e.g., pagination, result format), but it is consistent with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that efficiently communicates the tool's purpose. Every word earns its place, though it could be slightly more informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters and no output schema, the description is too minimal. It does not explain what 'schemas registered' means, the return format, or how filtering works, leaving significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 5 parameters. The tool description does not add any additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'schemas registered for a Data Stream topic', making the purpose specific and distinguishable from sibling tools like ncloud_datastream_get_schema or ncloud_datastream_list_topics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of context, prerequisites, or conditions that would help an agent decide when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_list_topicsBRead-only
List all topics on the Data Stream serverless streaming service
| Name | Required | Description | Default |
|---|---|---|---|
| sortBy | No | Sort field: createdDate (default) or topicName | |
| descending | No | Sort descending (default: true) | |
| searchText | No | Search by topic name or description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behaviors beyond the readOnlyHint annotation. It lacks details such as pagination, whether the list includes all topics in the region, or any limits. The annotation already indicates read-only, so the description adds minimal value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently states the tool's purpose. No unnecessary words, and it is front-loaded with the key action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks information about the return value (e.g., structure of topics) since there is no output schema. For a list operation, it should at least mention that it returns a list of topic objects. The optional parameters (sortBy, descending, searchText) are not referenced, leaving the agent to infer their purpose from the schema only.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all three optional parameters. The description does not add parameter information, so the baseline score of 3 is appropriate. The description's claim of 'list all topics' slightly conflicts with the presence of optional filters, but this is minor.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('all topics') on a specific service ('Data Stream serverless streaming service'). It is specific and distinguishable from sibling tools like ncloud_datastream_get_topic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., ncloud_datastream_get_topic for a single topic, or other listing tools). No exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_send_messageB
Send a message to a Data Stream topic. NOTE: Requires Sub Account credentials (main account keys are not allowed for this API).
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Message key for partitioning | |
| topic | Yes | Topic name (full name including prefix) | |
| value | Yes | Message value (STRING type supported) | |
| partition | No | Specific partition index (0-based). If omitted, sent to random partition |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the burden of behavioral disclosure. It indicates a write operation ('send') but omits details about side effects, return values, error behavior, or rate limits. The credential note is a partial disclosure, but insufficient overall.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—one sentence plus a brief note—with no wasted words. It is front-loaded with the action and efficiently communicates the key requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, and no annotations, the description is too minimal. It lacks context about the return value, error handling, or how this tool fits into the Data Stream workflow. The credential note is useful but insufficient for complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema already describes all parameters. The description does not add additional semantic meaning beyond what the schema provides, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Send' and the resource 'message to a Data Stream topic', providing a clear purpose. It uses a specific verb+resource structure and distinguishes from sibling datastream tools (like list or create topics) by describing a distinct action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a critical usage guideline: 'Requires Sub Account credentials (main account keys are not allowed for this API).' However, it does not provide guidance on when to use this tool versus alternatives, nor does it exclude any specific scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_update_connectorBIdempotent
Update a Data Stream connector settings
| Name | Required | Description | Default |
|---|---|---|---|
| roleNrn | Yes | NRN of the Data Stream service role | |
| topicId | Yes | Topic ID | |
| location | Yes | Storage path in s3a://{bucket}/{path} format | |
| dateFormat | Yes | Date format for sub-path | |
| exportType | No | Connector type | OBJECT_STORAGE |
| flushCount | No | Messages per file (default: 5000) | |
| schemaType | No | Message value serialization (default: STRING) | |
| connectorId | Yes | Connector ID to update | |
| description | No | Connector description (max 200 chars) | |
| consumerSpec | Yes | Consumer spec: SMALL or MEDIUM | |
| flushInterval | No | File creation interval in minutes (default: 10) | |
| includeTopicInPath | Yes | Whether to create topic name directory in storage path |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent (idempotentHint: true) and non-destructive (destructiveHint: false) behavior, and the description's 'Update' is consistent. However, the description does not add extra behavioral details beyond annotations, such as whether updates are partial or full replacements, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the tool's function. It is not verbose and every word serves a purpose, though it could be slightly more informative without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 12 parameters, 7 required, and no output schema, the description is too minimal. It does not explain the update operation's semantics, such as which parameters are updatable, how conflicts are handled, or the expected outcome. Richer context would improve agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for all 12 parameters (100% coverage), so the schema already explains each parameter's meaning. The description does not add additional context or group parameters, but it is not required given the schema completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the resource ('Data Stream connector settings'), which distinguishes it from sibling tools like create, get, or delete. It is specific enough to convey the core purpose, though it could mention which settings are updatable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternative tools (e.g., create or delete connector). Prerequisites, such as requiring an existing connector, are not mentioned. The description offers no contextual cues for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_update_registry_configAIdempotent
Update schema registry compatibility setting for a Data Stream topic
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID | |
| compatibility | Yes | true: enable BACKWARD compatibility check, false: disable (NONE) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, so the safety profile is known. The description adds that this updates a compatibility setting, but does not disclose any side effects (e.g., impact on schema validation for existing schemas) or required permissions. The description adds marginal value beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is clear, concise, and front-loaded with the action and resource. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update of a boolean setting with two parameters and no output schema, the description is adequate. It covers the main purpose and, combined with annotations and schema, provides sufficient context. Could mention potential impacts on schema validation, but not necessary for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters. The description does not add any additional meaning about parameters beyond what the schema provides. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it updates the schema registry compatibility setting for a Data Stream topic, using a specific verb ('update') and identifying the resource and context. It distinguishes from siblings like get_registry_config (read) and check_schema_compatibility (check).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., get_registry_config, check_schema_compatibility). There is no mention of prerequisites, such as requiring an existing registry configuration.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_datastream_update_topicAIdempotent
Update a Data Stream topic settings (partitions can only be increased, not decreased)
| Name | Required | Description | Default |
|---|---|---|---|
| topicId | Yes | Topic ID to update | |
| partitions | Yes | Number of partitions (can only increase) | |
| description | Yes | Topic description (max 200 chars) | |
| retentionMs | Yes | Message retention in ms |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false. The description adds a behavioral constraint (partitions only increase) beyond annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, front-loaded sentence with no wasted words. Essential information is conveyed efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high schema coverage and no output schema, the description covers the key behavioral constraint. Could be slightly more explicit about all required fields being updated, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with good parameter descriptions. The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'a Data Stream topic'. It includes a critical constraint (partitions can only be increased), which distinguishes it from related tools like create, delete, and get topic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (update an existing topic) and provides a key constraint. However, it does not explicitly state when not to use it or mention alternative tools by name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_acgADestructiveIdempotent
⚠️ Destructive: Delete an Access Control Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (required) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| accessControlGroupNo | Yes | ACG number to delete (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the critical behavioral detail that confirm=true is required to execute, which is not covered by the destructiveHint annotation. This explains the safety mechanism. The idempotentHint annotation is not elaborated, but the confirmation requirement is valuable context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence with a clear warning prefix. Every word serves a purpose, front-loading the destructive nature and immediately indicating the execution requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward delete operation, the description covers the essential behavior: destructive, requires confirmation, and identifies the resource. The annotations provide safety hints. It lacks details about dependencies or errors, but these are not critical for a simple ACG deletion.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing baseline meaning for all parameters. The description adds specific instruction that confirm must be true to execute, enriching the semantic understanding of the confirm parameter beyond its schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete an Access Control Group' with a specific verb and resource, distinguishing it from sibling operations like ncloud_delete_vpc or ncloud_delete_subnet. The destructive warning immediately identifies the action's nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., VPC existence, ACG not in use) or scenarios where deletion is appropriate. The confirm flag is mentioned but not as a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_asgADestructiveIdempotent
⚠️ Destructive: Permanently delete an Auto Scaling Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| autoScalingGroupNo | Yes | Auto Scaling Group number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint=true and idempotentHint=true. The description adds important context beyond annotations: the operation is permanent and requires confirm=true to execute. This explains the behavior of being gated by a confirmation flag, which annotations do not capture. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with an emoji warning. It immediately conveys the destructive nature, the action, and the required confirmation step. No redundant or unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with two parameters and no output schema, the description covers the essential aspects: destructive action, permanence, and the confirm flag. It does not explain return values, but that is not needed without an output schema. It could mention prerequisites, but the operation is straightforward and the schema covers parameter details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both confirm and autoScalingGroupNo already described. The description's mention of 'Set confirm=true to execute' adds no new meaning beyond the schema's own description of the confirm parameter. The description does not elaborate on autoScalingGroupNo beyond what schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'delete' and the specific resource 'Auto Scaling Group', and adds 'Permanently' to convey irreversibility. This distinguishes it from sibling tools like ncloud_delete_launch_config or ncloud_delete_vpc, which target different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by warning 'Destructive' and 'Permanently delete', suggesting this is for intentional deletion only. However, it does not explicitly state when to use it instead of alternatives (e.g., update_asg) or provide exclusions. The confirm=true instruction is a parameter-level guideline, not a tool-level usage directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_block_storageADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more block storage instances. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| blockStorageInstanceNoList | Yes | List of block storage instance numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly warns 'Destructive' and notes 'Permanently delete', adding meaningful context about irreversibility. It also explains the confirm=true requirement, which goes beyond the annotations' destructiveHint and idempotentHint by detailing the safety gating mechanism.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence with a leading warning emoji, immediately conveying destructive impact, followed by the critical confirmation requirement. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter destructive operation with annotations covering idempotency and destructiveness, the description sufficiently covers purpose, the confirmation guard, and the scope (one or more instances). It omits prerequisites like detaching the volume first, but this is not critical given the simple schema and existing annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already fully described. The description's mention of 'Set confirm=true' adds no new semantic value beyond the schema's own wording ('Must be true to actually execute'), yielding a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: 'Permanently delete one or more block storage instances.' This clearly distinguishes it from sibling delete operations (e.g., delete_snapshots, delete_nas_volumes) by naming the exact resource type and scope (block storage).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives, such as delete_snapshots or detach_block_storage. It implies usage only via the provided operation name and general delete semantics, with no exclusions or contextual hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_bucketADestructiveIdempotent
⚠️ Destructive: Permanently delete an Object Storage bucket. The bucket must be empty. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, but the description adds meaningful context: 'Permanently delete', the empty-bucket requirement, and the confirm=true safeguard. The warning emoji also reinforces the destructive nature. This goes beyond the structured annotation without contradicting it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly-packed sentence with no waste. It front-loads the destructive warning, states the action, and gives both the precondition and the required confirmation flag. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two parameters, no output schema, and strong annotations, the description covers the essential aspects: purpose, precondition, and confirmation mechanism. It could mention error behavior if the bucket is not empty, but it's already sufficient for the agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both confirm and bucketName are fully described in the input schema. The description adds a small reinforcing note about confirm=true, but most parameter meaning is already in the schema. This meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states exactly what the tool does: 'Permanently delete an Object Storage bucket.' The verb 'delete' and specific resource 'Object Storage bucket' clearly distinguish it from other deletion tools like ncloud_delete_object or ncloud_delete_multiple_objects. It also adds a crucial precondition (bucket must be empty).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear conditions for use: the bucket must be empty and confirm=true must be set. This effectively tells the agent when it's appropriate to invoke the tool and what's required. It doesn't explicitly mention alternatives or when not to use, but the context is clear given the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_cache_config_groupADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud Cache config group. A group still applied to an instance cannot be deleted — delete the instance first. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| configGroupNo | Yes | Config group number to delete (from ncloud_list_cache_config_groups) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint=true and idempotentHint=true annotations, the description adds meaningful behavioral context: deletion is permanent, there is a dependency that prevents deletion if the group is in use, and the confirm flag is a required safety switch. This gives the agent a clear mental model of the operation's consequences and prerequisites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, with the danger warning front-loaded and the critical precondition and execution flag stated efficiently. Every sentence earns its place; there is no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a delete operation with 3 parameters and no output schema, the description covers the essential points: what is deleted, that it is permanent, the condition blocking deletion, and the required confirm flag. It could theoretically mention what the API returns or how to verify success, but that is not necessary for a correctly formed call, so this is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter (confirm, regionCode, configGroupNo) already has a meaningful description. The tool description does not add new parameter semantics beyond restating that confirm=true is required, which is already present in the schema. Thus the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('delete') and resource ('Cloud Cache config group') with an explicit permanence qualifier ('Permanently delete'). This clearly distinguishes it from sibling delete tools that target different resource types such as ncloud_delete_cache_instance or ncloud_delete_bucket.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides concrete guardrails: it tells the agent that a group still applied to an instance cannot be deleted defining a when-not situation, and instructs to delete the instance first as a prerequisite. It also requires confirm=true to execute, which is operational guidance. The only minor gap is that it does not explicitly name an alternative tool, though the action 'delete the instance first' implicitly points to ncloud_delete_cache_instance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_cache_instanceADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud DB for Cache (Redis/Valkey) instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral context beyond the destructiveHint annotation by specifying 'permanently delete' and explicitly requiring 'Set confirm=true to execute.' This informs the agent of both the irreversibility and the needed confirmation, which is valuable for a destructive action. It does not contradict any annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly crafted sentence that front-loads the destructive warning and clearly states the action and requirement. Every word earns its place: warning, permanence, resource type, and the execution prerequisite. No wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no output schema) and the strong annotations, the description sufficiently covers the core context: what is deleted, that it's permanent, and that confirmation is required. It does not document secondary effects or prerequisites, but for a straightforward delete operation, the provided information is complete enough for an agent to act correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described, so the baseline is 3. The description adds value by explicitly stating 'Set confirm=true to execute,' which reinforces the confirm parameter's critical role in enabling the destructive operation. This explanation improves the agent's understanding of how to correctly invoke the tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a Cloud DB for Cache (Redis/Valkey) instance.' The verb 'delete' is specific, the resource type is explicit, and the 'permanently' qualifier distinguishes it from other cache-related operations. It clearly differentiates from sibling tools by narrowing scope to Cache instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys when to use this tool—when you want to permanently delete a Cache instance—but it does not explicitly mention alternatives or when-not-to-use scenarios. While the context is clear, it lacks explicit exclusionary guidance or references to alternative tools for similar operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_cache_manual_backupADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more Cloud Cache manual backup files. Backups are identified by instance number plus file name (from ncloud_list_cache_manual_backup_details), not by a backup ID. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| fileNameList | Yes | Backup file names to delete (e.g. ['20220315', '20220322']) — from ncloud_list_cache_manual_backup_details | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number the backups belong to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds crucial context: the confirm=true requirement for execution and the identification method (instance + filename, not backup ID). This goes beyond the annotations by explaining the confirmation guardrail and how to target backups correctly. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with a clear warning prefix, then the action, identification method, and execution requirement. Every sentence earns its place, and the destructive warning is front-loaded for safety.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with a confirmation flag, the description covers what, how, and the guardrail. It does not describe the response format or whether the operation is synchronous, but given no output schema and the presence of idempotentHint, this is a minor gap. The reference to the listing tool for inputs is sufficient for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions already cover all parameters (100% coverage). The description adds meaning by stating that fileNameList values come from ncloud_list_cache_manual_backup_details and that confirm must be true to execute. This explains the operational semantics beyond the schema's field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (delete) and resource (Cloud Cache manual backup files), and clarifies the identification method (instance number plus file name, not backup ID). This clearly distinguishes it from sibling tools like ncloud_delete_cache_instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage for manual backup deletion and explicitly references the sibling tool ncloud_list_cache_manual_backup_details for obtaining file names, which gives the agent a clear source for inputs. However, it does not explicitly state when not to use this tool versus other deletion tools, though context makes it obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_certificateADestructiveIdempotent
⚠️ Destructive: Permanently delete a registered certificate. Ensure it is not in use by any Load Balancer, CDN+, or Global Edge. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| certificateNo | Yes | Certificate number to delete (from ncloud_list_certificates) | |
| certificateName | Yes | Certificate name (must match exactly for verification; older certificates may have up to 30 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds the permanent nature of deletion, the confirmation requirement, and the dependency check, which is meaningful context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, with the destructive warning front-loaded and no unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete tool with no output schema, the description covers purpose, preconditions, confirmation, and dependency checks. An agent has enough to safely invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are already described. The description restates confirm=true and mentions the certificate source but adds no new semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Permanently delete a registered certificate.' The mention of Load Balancer, CDN+, and Global Edge dependencies helps distinguish this from other certificate deletion tools like ncloud_edge_delete_certificate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit preconditions: ensure the certificate is not in use by Load Balancer, CDN+, or Global Edge, and set confirm=true to execute. However, it does not explicitly name alternative tools or conditions for choosing another deletion method.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_custom_resourceADestructiveIdempotent
⚠️ Destructive: Delete a user-defined custom resource from Cloud Insight. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| resourceId | Yes | Custom resource ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds a warning symbol and reiterates that confirm=true is required, which is also in the schema. It does not reveal additional behavioral traits beyond what annotations provide, but it does not contradict them either.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a clear warning symbol, actionable instruction, and resource context. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple deletion tool with full annotations and schema coverage, the description is adequate. It clearly communicates the destructive nature and the required confirmation. The lack of an output schema and the simplicity of the operation make the description complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for both parameters, and the description adds no further parameter-level meaning. The baseline of 3 applies because the schema carries the semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete') and the target ('a user-defined custom resource from Cloud Insight'), distinguishing it from sibling create/update/get/list tools. The resource scope and cloud context are explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied by the verb 'Delete' and the resource name, but there is no explicit guidance on when to use this versus alternatives or when not to use it. No exclusions or conditions are mentioned beyond the confirm flag.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_deny_allow_groupADestructiveIdempotent
⚠️ Destructive: Permanently delete a Network ACL Deny-Allow Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| networkAclDenyAllowGroupNo | Yes | Deny-Allow Group number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint. The description adds the permanence of deletion and the confirm=true safety mechanism, providing valuable behavioral context beyond the annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning icon and explicit instruction. Every word adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with full schema coverage and annotations, the description sufficiently conveys the action, destructive nature, and confirmation requirement. It could mention prerequisites (e.g., disassociating the group) but this is not critical for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters have descriptions. The description's 'Set confirm=true to execute' mirrors the confirm parameter's schema description, adding no new parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a Network ACL Deny-Allow Group' with a specific verb and resource. It distinguishes itself from sibling tools like create, get, or set operations on deny-allow groups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context that this is a destructive operation and instructs the user to set confirm=true to execute. However, it does not explicitly mention alternatives or when not to use this tool compared to other deny-allow group operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_fabric_clusterADestructiveIdempotent
⚠️ Destructive: Permanently delete a fabric cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| fabricClusterNo | Yes | Fabric cluster number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations already marking destructiveHint and idempotentHint, the description adds valuable behavioral context by stating the operation is destructive, permanent, and gated by the confirm parameter. This goes beyond the annotation flags and clarifies the execution prerequisite.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence, front-loaded with the destructive warning, and packs essential information (permanence, confirmation requirement) with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a delete tool with simple parameters and no output schema, the description covers all necessary context: the action, the destructive/permanent nature, and the required confirm flag. It is fully sufficient for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both confirm and fabricClusterNo having clear descriptions. The description reiterates the confirm requirement but doesn't add new parameter meaning beyond what the schema already provides, keeping it at the high-coverage baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('delete') and the resource ('fabric cluster'), with the important qualifier 'permanently' indicating irreversibility. It is specific enough to distinguish from sibling tools by resource type, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on how to execute the operation ('Set confirm=true to execute'), which is an essential usage condition. It does not mention when to use this over other delete tools, but the resource-specific naming and the explicit confirmation requirement give sufficient context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_groupADestructiveIdempotent
⚠️ Destructive: Permanently delete an IAM group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| groupId | Yes | Group ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint=true, idempotentHint=true), the description adds critical behaviors: the deletion is permanent and requires confirm=true to execute. This explains the safety mechanism and warns of irreversibility. It does not contradict the annotations and provides extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that includes a warning emoji, the action, and the critical confirm gate. Every word earns its place, and it is front-loaded with the destructive warning, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with two parameters and no output schema, the description covers the essential information: the action is destructive, permanent, and requires confirmation. It does not describe prerequisites (e.g., whether the group must be empty) or return values, but given the low complexity and the annotations, the description is sufficiently complete for an agent to use it safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions (groupId and confirm). The description reinforces the confirm parameter's purpose ('Set confirm=true to execute') but does not add new semantics beyond what the schema already states. Thus baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Permanently delete an IAM group.' The verb 'delete' with the specific resource 'IAM group' distinguishes it from sibling tools like ncloud_create_group or ncloud_attach_policy_to_group. It also includes the critical confirm requirement, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use the tool (to permanently delete an IAM group) and explicitly states the prerequisite of setting confirm=true to execute. It does not mention alternatives or exclusions, but the resource type is clearly named, so an agent can infer when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_init_scriptsADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more init scripts. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| initScriptNoList | Yes | List of init script numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as destructive and idempotent, but the description adds critical context: the operation is permanent, supports multiple scripts, and requires confirm=true to execute. This goes beyond the structured fields by explaining the confirmation mechanism and the irreversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the destructive warning and clearly states the action and the confirmation requirement. Every word earns its place with no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter delete tool with no output schema, the description plus schema fully cover the essentials: what the tool does, the confirmation flag, and the input list. The destructive warning adds important safety context. Some might expect a note about return values or error cases, but given the low complexity, this is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters (initScriptNoList and confirm) having descriptions. The description itself adds no additional parameter information beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action with a specific verb ('delete') and resource ('init scripts'), and specifies 'permanently' and 'one or more', making the scope explicit. It distinguishes this from other init script tools like list, get, and create.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating the action, but does not explicitly mention when to use this tool versus alternatives or any prerequisites (e.g., obtaining script numbers from list_init_scripts). No exclusions are provided, but the context is clear enough for a simple delete operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_integrationADestructiveIdempotent
⚠️ Destructive: Delete a Cloud Insight integration. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| integrationId | Yes | Integration ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint and idempotentHint, and the description adds the specific resource type and the critical behavioral detail that confirm=true is required to execute. It does not contradict the idempotent hint and offers meaningful context beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two short sentences, with the destructive warning front-loaded and the key confirmation instruction included. Every word contributes to understanding the tool's purpose and usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with two parameters, the description covers the destructive nature, the specific resource, and the confirmation requirement. Annotations cover idempotency and destructiveness, and no output schema requires return-value explanation. Minor gap: it doesn't explicitly state permanence or post-delete effects, but the destructive warning sufficiently implies them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters clearly described in the schema. The tool description merely repeats the confirm=true requirement already present in the schema, adding no new parameter semantics. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb 'Delete' and resource 'Cloud Insight integration', distinguishing it from sibling create, update, get, and list operations. The destructive warning reinforces the tool's purpose without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite (confirm=true) and warns of destructive behavior, but it does not explicitly state when to use this tool versus alternatives like ncloud_get_integration or ncloud_list_integrations. Usage is implied rather than explicitly contrasted with read or update tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_launch_configADestructiveIdempotent
⚠️ Destructive: Permanently delete a launch configuration. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| launchConfigurationNo | Yes | Launch configuration number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond the destructiveHint annotation by specifying the deletion is 'permanently' and by disclosing the confirmation mechanism ('Set confirm=true to execute'). This informs the agent that the operation is irreversible and requires an explicit opt-in, which is not captured by the annotations alone. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loaded with a clear destructive warning. '⚠️ Destructive: Permanently delete a launch configuration. Set confirm=true to execute.' Each sentence serves a distinct purpose and there is no redundant or verbose content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple delete operation, the destructive annotations, and fully documented parameters, the description covers the essential safety and execution context. It might have mentioned side effects (e.g., impact on related resources) or return values, but given the 100% schema coverage and clear annotations, it is sufficiently complete for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for both parameters: confirm ('Must be true to actually execute the destructive operation') and launchConfigurationNo ('Launch configuration number to delete'). The description's mention of 'Set confirm=true to execute' reiterates what the schema already explains. No additional parameter semantics are provided beyond the schema's 100% coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a launch configuration.' The verb 'delete' and the specific resource 'launch configuration' precisely identify the tool's function, distinguishing it from sibling tools like ncloud_list_launch_configs and ncloud_create_launch_config. The 'permanently' keyword adds an important qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any context on when to use this tool versus alternatives. It does not mention related operations like listing or creating launch configurations, nor does it state prerequisites or exclusions. The only guidance is the confirm requirement, which is more about execution than usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_lb_listenersADestructiveIdempotent
⚠️ Destructive: Delete listeners from a load balancer. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| loadBalancerInstanceNo | Yes | Load balancer instance number | |
| loadBalancerListenerNoList | Yes | List of listener numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, but the description adds the important confirm=true execution gate and a visual warning. This goes beyond the annotation by explaining the required safety mechanism, even though the schema also documents the confirm parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with a destructive warning, and contains no filler. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive deletion tool with a well-described schema, the description covers the essential operation and the confirmation requirement. No output schema exists, so omitting return-value details is acceptable. It could be more complete by mentioning prerequisites or side effects, but it is sufficient for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for all three parameters with descriptions. The tool description only reiterates the confirm=true instruction, which adds no new meaning beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete listeners from a load balancer' – a specific verb and resource. This distinguishes it from sibling tools like create/list/change listeners, even though alternative tools are not named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the verb and resource: use this to delete listeners. The destructive warning and confirm flag imply caution, but there is no explicit guidance on when to choose this over alternative listener management operations (e.g., changing config).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_load_balancersADestructiveIdempotent
⚠️ Destructive: Permanently delete load balancer instances. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| loadBalancerInstanceNoList | Yes | List of load balancer instance numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include destructiveHint=true, but the description adds behavioral context by specifying 'Permanently' and requiring confirm=true. This goes beyond the annotation by clarifying the irreversible nature and the need for explicit confirmation. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence with a clear warning emoji. It fronts the destructive nature and immediately tells the agent what to do (set confirm=true). No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive delete operation, the description covers the critical facts: permanence, the need for confirmation, and the target resource. Minor gaps like behavior when confirm=false or post-deletion effects are not mentioned, but given the annotations and simple schema, it is sufficiently complete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both confirm and loadBalancerInstanceNoList are already documented in the schema. The description's mention of 'Set confirm=true to execute' is redundant with the schema's confirmation requirement, adding no new semantic meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action: 'Permanently delete load balancer instances.' This distinguishes it from sibling tools that list, get, or create load balancers. The verb 'delete' combined with the resource makes the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when permanent deletion of load balancers is needed) and provides a key execution guideline ('Set confirm=true to execute'). However, it does not explicitly mention alternatives or when not to use it, such as using delete_lb_listeners for removing only listeners.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_login_keysADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more login keys. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| keyNameList | Yes | List of login key names to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint, idempotentHint), the description adds the crucial behavioral detail that deletion is permanent and requires setting `confirm=true`, a non-obvious safeguard not conveyed by the annotations. This adds meaningful context without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with a clear warning and a concise action statement, followed by the essential execution requirement. Every sentence earns its place with no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with two well-documented parameters, relevant annotations, and no output schema, the description sufficiently covers the destructive nature, the confirm gate, and the resource scope. It does not elaborate on side effects or prerequisites, but none are essential for this operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both `confirm` and `keyNameList` already have descriptive schema text. The tool description only repeats the confirm requirement without additional parameter-level insights, so it adds no semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Permanently delete one or more login keys.' This uses a specific verb ('delete'), resource ('login keys'), and scope ('one or more'), which distinguishes it from sibling tools like ncloud_list_login_keys, ncloud_create_login_key, and ncloud_import_login_key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage: it is a destructive operation requiring `confirm=true` to execute. It implies when to use (when deleting login keys) but does not explicitly reference alternatives or exclusion scenarios, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_maintenanceADestructiveIdempotent
⚠️ Destructive: Delete a planned maintenance schedule from Cloud Insight. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| maintenanceId | Yes | Planned maintenance ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as destructive and idempotent. The description adds the crucial behavioral requirement that confirm=true must be set to execute, which is not covered by the annotations. The destructive warning is redundant but consistent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with a warning prefix, front-loading the destructive nature. Every word contributes to the core meaning, with no unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward delete tool with two parameters, full schema coverage, and relevant annotations, the description captures the essential behavior and confirmation requirement. It omits peripheral details like permissions and return values, but those are not critical given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for both parameters (100% coverage). The description's mention of confirm=true essentially restates the schema's own description, adding no new semantic meaning beyond what is already structured.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete a planned maintenance schedule from Cloud Insight', using a specific verb and resource. It distinguishes itself from sibling tools like ncloud_create_maintenance, ncloud_update_maintenance, and ncloud_list_maintenances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (to delete a planned maintenance schedule), and the confirm=true note offers an operational guideline. It does not explicitly mention alternatives or exclusions, but the delete scope is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_member_server_imagesADestructiveIdempotent
⚠️ Destructive: Delete one or more member server image instances. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| memberServerImageInstanceNoList | Yes | List of member server image instance numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the confirm gate and explicitly warns 'Destructive', which goes beyond the destructiveHint annotation by explaining the execution requirement. It does not contradict the idempotentHint annotation and reinforces the destructive nature clearly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with the warning and key instruction front-loaded. Every word earns its place, making it highly efficient and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with a confirm flag, the description covers the essential context: destructive potential, execution requirement, and target resource. It lacks details on return values or side effects, but given the absence of an output schema and the straightforward nature, the description is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters (confirm and memberServerImageInstanceNoList), covering 100% of the parameters. The description's mention of 'Set confirm=true' mirrors the schema's confirm description without adding new semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Delete') on a specific resource ('member server image instances'), including the batch nature ('one or more'). This distinguishes it from similar sibling tools like ncloud_delete_server_images, which targets a different resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides critical usage guidance by stating that confirm=true is required to execute the destructive operation. This is an explicit operational prerequisite. However, it does not explicitly discuss when to use this tool versus alternatives beyond the resource type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_metrics_groupBDestructiveIdempotent
⚠️ Destructive: Delete one or more Cloud Insight rule templates (metrics groups).
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion. | |
| prodKey | Yes | Product key (cw_key) the metrics groups belong to | |
| metricsGroupIds | Yes | Metrics group IDs to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, and the description's '⚠️ Destructive' merely restates that. It adds the clarification that a metrics group is a Cloud Insight rule template, but omits the schema's confirm=true gate and says nothing about irreversibility or what happens to attached rules.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, warning front-loaded, zero filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, batch-capable delete tool with no output schema, the description leaves the confirmation requirement and the sibling-tool choice to be inferred from the schema and tool list. It is minimally adequate but not self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so prodKey, metricsGroupIds, and the confirm flag are already fully documented in the schema. The description adds no parameter-level meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Delete) and resource (Cloud Insight rule templates / metrics groups) with batch scope ('one or more'). It does not distinguish itself from close siblings such as ncloud_delete_metrics_group_by_id or ncloud_delete_metrics_group_force, but the core action is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no preconditions, and no mention of the alternative deletion tools (by-id, force). An agent has no signal for choosing between the three delete variants.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_metrics_group_by_idBDestructiveIdempotent
⚠️ Destructive: Delete a Cloud Insight rule template by product key and metrics group ID.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion. | |
| prodKey | Yes | Product key (cw_key) | |
| metricsGroupId | Yes | Metrics group ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description's 'Destructive' warning merely duplicates the destructiveHint annotation. It adds no additional behavioral context such as irreversibility, cascading effects on related resources, or confirmation requirements. With annotations already covering safety, the description contributes minimal extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that includes a warning icon and clearly states the action and key parameters. No superfluous content, making it highly efficient for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with annotations covering destructive behavior and schema covering parameters, the description is minimally adequate. However, it lacks context about related tools, the relationship between rule templates and metrics groups, and any side effects beyond the deletion itself, which limits its completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description's mention of 'product key and metrics group ID' aligns with the schema but adds no new semantic detail. The confirm parameter's crucial requirement ('Must be true to execute deletion') is only in the schema, not echoed in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete), the resource type (Cloud Insight rule template), and the identifying fields (product key and metrics group ID). It is specific and distinguishes itself from the basic 'delete_metrics_group' by including 'by_id', though it could more explicitly mention related force-delete variants.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided regarding when to use this tool versus alternatives like ncloud_delete_metrics_group_force or ncloud_delete_metrics_group. The description does not mention prerequisites, conditions, or exclusions, leaving the agent to infer context from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_metrics_group_forceADestructiveIdempotent
⚠️ Destructive: Force delete rule templates (metrics groups) together with ALL event rules related to them. Pass the groups as returned by ncloud_get_rules_by_metrics_group. This is irreversible.
| Name | Required | Description | Default |
|---|---|---|---|
| groups | Yes | Metrics groups and their related event rules ([{id, ruleGroupItemDtoList}], from ncloud_get_rules_by_metrics_group) | |
| confirm | No | Must be true to execute force deletion. | |
| prodKey | Yes | Product key (cw_key) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, so the bar is lower, but the description adds real value beyond them: it discloses the blast radius (all related event rules are destroyed with the group) and that the operation is irreversible. It doesn't discuss the confirm gating or any permission/auth requirement, keeping it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the destructive warning, then the required input provenance, then irreversibility. Every sentence earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, cascading mutation with no output schema, the description covers danger, blast radius, prerequisite call and irreversibility. The only notable omission is any mention of the confirm flag, but the schema's 100% description coverage for that field compensates.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents id, ruleGroupItemDtoList, prodKey and the confirm flag. The description only restates the sourcing of the groups array (the get_rules_by_metrics_group reference) and adds nothing about the confirm parameter, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (force delete) and resource (rule templates/metrics groups) and explains the cascade: deletion of ALL related event rules. This implicitly distinguishes it from the non-force ncloud_delete_metrics_group, but it never names that sibling, so an agent must infer the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an actionable prerequisite ('pass the groups as returned by ncloud_get_rules_by_metrics_group'), which is clear workflow context. However, it never states when to choose this force variant over ncloud_delete_metrics_group, nor any exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mongodb_instanceADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud DB for MongoDB instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds behavioral context beyond those flags: the deletion is permanent and requires confirm=true to execute. This enhances understanding of the tool's impact without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning icon, stating the destructive action and the confirmation requirement. Every word earns its place, and there is no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with only two parameters and annotations covering destructive/idempotent behavior, the description covers the essential context: permanent deletion and the need for confirm=true. It does not explain return values or async behavior, but this is not a significant gap given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with meaningful descriptions for both parameters. The description merely reiterates the confirm parameter's role ('Set confirm=true to execute') without adding new information or clarifying nuances beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete') and the specific resource ('Cloud DB for MongoDB instance'), which distinguishes it from sibling deletion tools for other resources. The warning and confirmation requirement further clarify the tool's destructive scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when a MongoDB instance needs to be deleted and provides the key execution guideline ('Set confirm=true to execute'). It does not mention explicit exclusions or alternatives, but the resource-specific naming makes the usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mongodb_usersADestructiveIdempotent
⚠️ Destructive: Delete users from a Cloud DB for MongoDB instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMongoDbUserList | Yes | List of users to delete | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds crucial context that confirm=true is required to execute, preventing accidental deletion. It also explicitly warns 'Destructive'. No contradiction with annotations. It does not elaborate on all consequences (e.g., irreversibility details), but the confirm requirement adds significant transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the destructive warning and includes the essential execution condition. No filler or redundant words; every part is actionable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple delete operation, the description is largely adequate: it mentions the destructive nature and confirm requirement. However, it does not describe expected return values or behavior when confirm is false, and lacks any mention of prerequisites (e.g., list users first). With good annotation and schema support, these gaps are minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with descriptions for all parameters including confirm's safety role. The description does not add new meaning beyond the schema—it repeats the confirm requirement. Baseline of 3 is appropriate since the schema already provides adequate parameter clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delete' and the resource 'users from a Cloud DB for MongoDB instance'. It distinguishes from sibling tools like ncloud_add_mongodb_users and ncloud_change_mongodb_users by indicating deletion specifically. The destructive warning and confirm requirement further clarify intent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by describing the operation, but it does not explicitly state when to use this tool versus alternatives (e.g., 'Use this to remove users, for adding use ncloud_add_mongodb_users'). No exclusions or prerequisites are provided beyond the confirm flag, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_monitor_groupBDestructiveIdempotent
⚠️ Destructive: Delete one or more Cloud Insight monitoring target groups. This will permanently remove the groups.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion. | |
| prodKey | Yes | Product key (cw_key) the monitor groups belong to | |
| monitorGroupIds | Yes | Monitor group IDs to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is structurally covered. The description reinforces permanence ('permanently remove the groups') and flags destructiveness with a warning emoji, but adds no new behavioral detail such as recoverability, cascading effects, or how 'confirm' is enforced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler; the destructive warning is front-loaded ahead of the action, which is the right ordering for an irreversible operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a fully covered schema, existing destructive annotations, and no output schema, the description covers what an agent needs to invoke the tool safely. It could still note the confirm-flag requirement in prose or the force-delete alternative, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (confirm, prodKey, monitorGroupIds) are already documented, including the 'must be true to execute deletion' guard. The description adds nothing beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Delete) and resource (Cloud Insight monitoring target groups) and notes it operates on 'one or more' groups, resolving the singular-name ambiguity. However, it does not distinguish itself from the sibling ncloud_delete_monitor_group_force, leaving the agent to guess which delete variant applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the force-delete sibling or the update variant, and no stated prerequisites beyond what the schema implies. A destructive tool with a close alternative urgently needs that routing information, and none is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_monitor_group_forceADestructiveIdempotent
⚠️ Destructive: Force delete monitoring target groups together with ALL event rules related to them. Pass the groups as returned by ncloud_get_rules_by_monitor_group. This is irreversible.
| Name | Required | Description | Default |
|---|---|---|---|
| groups | Yes | Monitor groups and their related event rules ([{id, ruleGroupItemDtoList}], from ncloud_get_rules_by_monitor_group) | |
| confirm | No | Must be true to execute force deletion. | |
| prodKey | Yes | Product key (cw_key) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered; the description nonetheless adds real value by disclosing the cascade ('ALL event rules related to them') and explicit irreversibility. It slightly under-specifies by not mentioning that the confirm flag must be set (though the schema documents it).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the destructive warning and ending on the irreversibility constraint. Nothing is wasted and the most important caveat leads.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, no-output-schema tool whose annotations already signal destructiveness and idempotency, the description covers scope, irreversibility, and input provenance. The remaining gap is the missing contrast with the non-force delete tool, which matters given how many similar delete siblings exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The sentence about sourcing groups 'as returned by ncloud_get_rules_by_monitor_group' reinforces the schema's own description of the nested rule list but adds no new format or constraint detail beyond it, and prodKey/confirm receive no elaboration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specifies a concrete verb and resource (force delete monitoring target groups) plus the cascade scope ('together with ALL event rules related to them'), which is genuinely differentiating information. However, it never names the non-force sibling ncloud_delete_monitor_group, so the agent must infer why 'force' is needed rather than being told.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: 'Force' and the cascade wording hint at when this is appropriate, and 'Pass the groups as returned by ncloud_get_rules_by_monitor_group' tells the agent how to source input, not when to choose this over ncloud_delete_monitor_group or the metrics-group equivalents. No explicit when-to-use or when-not guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mssql_instanceADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud DB for MSSQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true and idempotentHint=true, so the description's 'Destructive' label is redundant. However, it adds the crucial requirement that confirm=true must be set to execute, which is important behavioral context not in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that leads with a warning and states the action and the required confirmation. Every word is purposeful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete operation, this description covers the essential points: what is deleted, permanence, and the required confirmation. The schema handles parameter details, and annotations handle safety flags, making the description complete for this simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the schema (100% coverage). The description merely restates the confirm requirement already present in the schema, adding no new meaning for either parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('delete') and identifies the exact resource ('Cloud DB for MSSQL instance'), distinguishing it from sibling tools like delete_mssql_server. The word 'permanently' adds clarity about the operation's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for deleting MSSQL instances but provides no explicit alternatives or when-not-to-use guidance. The instruction to set confirm=true is a usage prerequisite, but it doesn't help choose between this and related delete tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mssql_serverADestructiveIdempotent
⚠️ Destructive: Delete a Slave server instance from a Cloud DB for MSSQL cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number to delete (Slave only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, but the description adds value by warning with '⚠️ Destructive' and explicitly stating 'Set confirm=true to execute.' This reveals the safety gate beyond annotation data. It does not contradict annotations and adds useful context about the deletion's destructive nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with a warning emoji effectively communicates the destructive action and confirmation requirement. No wasted words; every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with two parameters, the description adequately covers the destructive nature, the slave scope, and the confirm gate. Annotations provide the safety profile, and no output schema is present, so return-value details are not required. It is complete enough for an agent to select and invoke the tool correctly, though it could mention irreversibility explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, and the schema already describes the confirm requirement ('Must be true to actually execute the destructive operation'). The description's phrase 'Set confirm=true to execute' merely repeats schema info, adding no new meaning. The baseline of 3 is appropriate since the schema carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action: 'Delete a Slave server instance from a Cloud DB for MSSQL cluster.' It uses a specific verb and resource, and the 'Slave' qualifier distinguishes it from sibling tools like ncloud_delete_mssql_instance that delete the entire instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for deleting a slave server instance and explicitly mentions the confirm requirement for execution. However, it does not explicitly state when not to use this tool or compare it to alternatives like deleting the whole MSSQL instance. The scope is clear enough for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_multiple_objectsADestructiveIdempotent
⚠️ Destructive: Delete multiple objects from an Object Storage bucket in a single request. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket | |
| objectKeys | Yes | Array of object keys to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true, and the description adds the critical safeguard: 'Set confirm=true to execute'. This goes beyond the structured hints, informing the agent that a confirmation flag gates execution. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the warning symbol, and contains zero filler. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the annotations cover destructive/idempotent behavior and the schema documents all parameters, the description provides adequate context for a bulk delete tool. It doesn't describe return values, but no output schema exists, and the core safety and usage details are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all three parameters with descriptions, including the confirm parameter's explicit purpose. The description's mention of 'Set confirm=true' reinforces the existing schema documentation but adds no new meaning beyond it. With 100% schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Delete' with the resource 'multiple objects from an Object Storage bucket' and scopes it 'in a single request'. This clearly distinguishes it from sibling tools like ncloud_delete_object (single object) and ncloud_delete_bucket (whole bucket).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'in a single request' signals the batch deletion use case, and the sibling tools list includes ncloud_delete_object for singular deletes, implying the contrast. However, it does not explicitly state when-not to use it or name alternatives, leaving some inference required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mysql_databasesADestructiveIdempotent
⚠️ Destructive: Delete databases from a Cloud DB for MySQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number | |
| cloudMysqlDatabaseNameList | Yes | List of database names to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, but the description reinforces this with a warning emoji and adds critical behavioral context: 'Set confirm=true to execute.' This tells the agent that the operation is destructive and requires explicit confirmation, which is beyond what the annotations alone communicate. No contradiction exists between the description and annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, each earning its place: the first states the destructive purpose, and the second specifies the safety mechanism. It is front-loaded with a warning and is highly concise with no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete operation with three parameters and no output schema, the description covers the core intent and the confirmation safeguard. It could mention potential prerequisites or side effects (e.g., data loss), but the annotations and schema fill the gap reasonably well, making the description sufficient for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all three parameters. The description's mention of 'Set confirm=true to execute' aligns with the confirm parameter's schema description but adds no new meaning. With high schema coverage, the baseline is 3, and the tool description does not elevate it further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete databases from a Cloud DB for MySQL instance,' which uses a specific verb (delete) and resource (databases from a Cloud DB for MySQL instance). This distinguishes it from sibling tools like ncloud_delete_mysql_users and ncloud_delete_mysql_instance, which target different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, such as ncloud_add_mysql_databases or ncloud_delete_mysql_users. It only states the action and the confirmation requirement, leaving the agent to infer usage from the name and purpose. There are no prerequisites, exclusions, or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mysql_instanceADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud DB for MySQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructive and idempotent, but the description adds that deletion is permanent and requires confirm=true, clarifying the actual execution gate and irreversibility beyond the annotation flags.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence with a clear warning symbol, front-loading the destructive nature and execution requirement. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with comprehensive schema and annotations, the description covers the essential information: what is deleted, permanence, and the confirm gate. It does not need to explain return values due to lack of output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters, so baseline is 3. The description reinforces the confirm parameter's purpose but adds no new semantic information about cloudMysqlInstanceNo beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Permanently delete a Cloud DB for MySQL instance' with a specific verb and resource, clearly distinguishing it from sibling tools like ncloud_delete_mysql_server or ncloud_delete_mysql_databases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. It only warns about destructiveness and the confirm parameter; no mention of when to choose this over ncloud_delete_mysql_server or other delete operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mysql_serverADestructiveIdempotent
⚠️ Destructive: Delete a Slave or Recovery server instance from a Cloud DB for MySQL cluster. Master/Standby cannot be deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| regionCode | No | Region code (default: first region) | |
| cloudMysqlServerInstanceNo | Yes | Cloud MySQL server instance number to delete (Slave or Recovery only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the confirm=true requirement and the master/standby restriction, which are not fully covered by the destructiveHint annotation. It also opens with a ⚠️ Destructive warning, reinforcing the safety profile. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short, front-loaded sentences. The warning appears first, followed by the action and the key constraints. Every sentence conveys essential information without unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a delete tool with no output schema, the description covers the critical aspects: what is deleted, what cannot be deleted, and the confirm flag. It missing potential details like cluster impact or error states, but given the simplicity and schema coverage, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all three parameters with descriptions (100% coverage). The description repeats the confirm=true behavior and the slave/recovery restriction but does not add new meaning beyond the schema, such as regionCode usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete), the resource (Slave or Recovery server instance), and the scope (from a Cloud DB for MySQL cluster). It explicitly excludes Master/Standby, which distinguishes it from sibling tools like ncloud_delete_mysql_instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use (delete Slave or Recovery) and when-not-to-use (Master/Standby cannot be deleted). It also provides the execution condition 'Set confirm=true to execute', giving clear operational guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_mysql_usersADestructiveIdempotent
⚠️ Destructive: Delete users from a Cloud DB for MySQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number | |
| cloudMysqlUserNameList | Yes | List of user names to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, setting a solid baseline. The description adds a valuable behavioral detail: the operation only executes when confirm=true, which is not captured in the annotations. The warning emoji also reinforces the destructive nature. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence. It front-loads the critical destructive warning, then states the action and the key execution requirement. Every word earns its place, with no redundant or irrelevant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity destructive operation with good annotations and fully described schema parameters, the description is adequate. It covers what is deleted and how to execute. It could theoretically mention consequences (e.g., irreversible loss) or prerequisites, but the destructive hint and confirm flag already convey the essential safety context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already fully documented. The description's mention of 'confirm=true' adds no new information beyond the schema's confirm parameter description. It doesn't elaborate on the user list or instance number further, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete), the resource (users from a Cloud DB for MySQL instance), and distinguishes it from sibling tools like ncloud_delete_mysql_databases or ncloud_delete_mysql_instance. The tool name and description align perfectly, leaving no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool (to delete MySQL users) and includes an essential usage instruction: 'Set confirm=true to execute.' It doesn't explicitly mention alternatives or exclusions, but for this straightforward destructive operation, the context is sufficient to guide an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_nas_snapshotADestructiveIdempotent
⚠️ Destructive: Permanently delete a NAS volume snapshot. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| nasVolumeSnapshotInstanceNo | Yes | NAS volume snapshot instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint and idempotentHint. The description adds the confirmation requirement ('Set confirm=true to execute') and the permanence of deletion, which are valuable behavioral details beyond the annotation flags. No contradiction detected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a warning emoji, front-loading the destructive nature. Every word is purposeful and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter delete tool with annotations, the description covers the action, permanence, and confirm requirement. It could mention retry safety or error behavior, but given the low complexity and annotation coverage, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers both parameters with full descriptions (100% coverage), so the description adds little beyond reinforcing the confirm parameter's necessity. The schema already states 'Must be true to actually execute the destructive operation'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Permanently delete a NAS volume snapshot', specifying the verb and resource. The 'NAS volume snapshot' qualifier distinguishes it from generic snapshot deletion tools like ncloud_delete_snapshots.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the action 'delete' and the resource name, but there is no explicit when-to-use guidance or comparison with alternatives such as ncloud_restore_nas_volume_with_snapshot or ncloud_change_nas_snapshot_config. The confirm=true instruction is more about parameter usage than tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_nas_volumesADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more NAS volume instances. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| nasVolumeInstanceNoList | Yes | List of NAS volume instance numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given annotations already declare destructiveHint=true, the description adds value by stating 'Permanently' and the requirement for a confirmation flag, explaining a behavioral safeguard. It also clarifies the plural nature, but does not discuss return values or side effects beyond deletion, which is acceptable for a destructive operation with annotations covering safety.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—two short sentences. It front-loads the critical warning with 'Destructive:' and then specifies the action and the confirmation requirement. Every word adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with two parameters and provided annotations, the description conveys the essential information: the action, the target resource, and the confirm guard. Without an output schema, it does not describe return data, but that is not critical for a destructive call. It lacks explicit guidance on prerequisites (e.g., existing volumes) but remains sufficiently complete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for both parameters (100% coverage). The description repeats the confirm=true requirement, which adds marginal emphasis but no new parameter details. It does not elaborate on the format or structure of nasVolumeInstanceNoList beyond what the schema states, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete'), the resource ('NAS volume instances'), and supports plural usage ('one or more'). It distinctly identifies this as a deletion tool for NAS volumes, differentiating it from sibling tools like delete_nas_snapshot or other delete operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes an explicit prerequisite ('Set confirm=true to execute') which is useful guidance. However, it does not mention alternatives (e.g., listing volumes first with ncloud_list_nas_volumes) or when not to use this tool, leaving the context partially implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_nat_gatewayADestructiveIdempotent
⚠️ Destructive: Permanently delete a NAT Gateway instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| natGatewayInstanceNo | Yes | NAT Gateway instance number to delete | |
| returnPublicIpInstance | No | Also return (release) the public IP instance assigned to the public NAT Gateway. Default: true |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description adds that the deletion is permanent and requires confirm=true to execute, providing useful behavioral context beyond the annotation. This does not contradict any annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning emoji, effectively communicating the destructive nature and confirmation requirement without any waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple deletion operation, the schema documents all parameters, and annotations cover the safety profile. The description adds permanence and confirmation context. No output schema is needed, and the tool definition is sufficiently complete for an agent to select and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters, including confirm and returnPublicIpInstance. The description's mention of 'confirm=true' mirrors the schema description, adding no new information. Baseline of 3 applies since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'delete' and resource 'NAT Gateway instance', with 'Permanently' emphasizing the irreversible nature. This distinguishes it from sibling tools like create_nat_gateway or set_nat_gateway_description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool (to permanently remove a NAT Gateway) and the requirement to set confirm=true, but it does not explicitly name alternatives or exclusion conditions. The context is clear enough that no confusion with sibling tools arises.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_network_aclADestructiveIdempotent
⚠️ Destructive: Permanently delete a Network ACL. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| networkAclNo | Yes | Network ACL number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it destructive and idempotent. The description adds that deletion is permanent and that confirm=true must be set to execute, which is valuable behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with a clear warning prefix and essential instruction. No verbose filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with two parameters and no output schema, the description covers purpose, destructiveness, and confirmation requirement. It lacks potential caveats (e.g., if the ACL is in use), but that's acceptable given the low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents both parameters with 100% coverage. The description's mention of confirm=true mirrors the schema and adds no new semantic detail, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'delete' with the resource 'Network ACL' and notes permanence, clearly distinguishing it from sibling tools like ncloud_delete_acg or ncloud_remove_network_acl_* rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for deleting a Network ACL but does not provide explicit guidance on when to use it versus alternatives, nor any exclusions. No alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_network_interfaceADestructiveIdempotent
⚠️ Destructive: Permanently delete a network interface. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| networkInterfaceNo | Yes | Network interface number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds value by emphasizing permanence ('Permanently delete') and revealing the confirm=true guardrail, which is critical behavioral context beyond the annotations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with the destructive warning front-loaded using the ⚠️ symbol. Every element serves a purpose: it communicates the resource, the action, the permanence, and the required confirmation. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple two-parameter destructive tool with no output schema. The description, combined with annotations and schema, covers the essential context: what is deleted, permanence, and the confirm flag requirement. It could potentially mention side effects like what happens to associated resources, but that is not necessary for such a focused delete operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (confirm and networkInterfaceNo) already well-documented in the input schema. The description reinforces the confirm parameter's purpose but does not add meaning beyond what the schema provides, so a baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a network interface.' This is a specific verb+resource combination that distinguishes it from sibling operations like create, attach, or detach network interfaces. The addition of 'Set confirm=true to execute' also clarifies the required execution guard.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is for deleting a network interface and implies the usage context through the destructive warning and confirm requirement. It does not explicitly mention alternatives or when-not-to-use scenarios, but the clear delete semantics provide sufficient context for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_objectADestructiveIdempotent
⚠️ Destructive: Permanently delete an object from an Object Storage bucket. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to delete | |
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds the critical behavioral detail that deletion is permanent and requires explicit confirmation (confirm=true), which goes beyond the annotation flags by explaining the safety gate and irreversible nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with a warning emoji up front, followed by the action and execution requirement. Every word contributes value; no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple delete operation with three well-documented parameters and no output schema. The description covers the purpose, permanence, and confirmation requirement, which is sufficient for an agent to select and safely invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all three parameters (bucketName, key, confirm). The description echoes the confirm parameter behavior but adds no new meaning beyond what the schema already provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Permanently delete an object from an Object Storage bucket.' It specifies the verb (delete), the resource (object in a bucket), and the permanence, distinguishing it from sibling tools like ncloud_delete_multiple_objects and ncloud_delete_bucket.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear operational context by warning 'Destructive' and instructing the agent to 'Set confirm=true to execute.' It implies the prerequisite that confirm must be true, but it does not explicitly mention when to use this tool over alternatives (e.g., ncloud_delete_multiple_objects).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_pipelineADestructiveIdempotent
⚠️ Destructive: Permanently delete a SourcePipeline pipeline. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| projectId | Yes | Pipeline ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true, so the description doesn't need to restate those. It adds value by noting the action is 'Permanently delete' (irreversibility) and the confirm=true guardrail, which is essential behavior not captured in annotations. This is sufficient for an agent to understand the safety requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The warning emoji and word 'Destructive' front-load the critical safety context, followed by the action and the required confirmation flag. Every word earns its place, making it highly efficient and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive delete operation with only two parameters and no output schema, the description is adequately complete. It communicates the permanent effect, the confirmation mechanism, and the resource type. It could mention how to obtain the projectId (e.g., via list_pipelines) or state the expected return, but these are minor gaps given the annotations and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters ('projectId' and 'confirm') already described clearly. The description's mention of 'Set confirm=true to execute' is redundant with the schema's confirm description, adding no new semantic information. Therefore it earns the baseline score for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete') and the resource ('a SourcePipeline pipeline'), making the tool's purpose unambiguous. It also distinguishes itself from sibling pipeline tools (e.g., create, update, run, cancel) by being the delete operation. The mention of 'confirm=true' adds a critical execution detail without blurring the core purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case: when you need to permanently remove a SourcePipeline pipeline. It clearly states the destructive nature and the required confirm flag, giving context for when to invoke it. However, it does not explicitly mention alternatives or when not to use it (e.g., canceling a running pipeline vs. deleting a definition), but the intent is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_placement_groupADestructiveIdempotent
⚠️ Destructive: Permanently delete a placement group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| placementGroupNo | Yes | Placement group number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare destructiveHint: true and idempotentHint: true, so the description's '⚠️ Destructive' label repeats that. However, it adds behavioral context by stating 'permanently' and explicitly requiring the confirm flag to be set to true for execution, which is a critical safety guardrail. The description does not contradict the annotations and adds the confirm requirement on top of the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long and immediately conveys the core action and safety condition. The warning emoji and 'Destructive' label are efficient and the confirm instruction is direct. No unnecessary words are used.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (two parameters, no output schema), the description covers the essential action and the critical confirm guardrail. It does not mention any prerequisites or side effects (e.g., whether the placement group must be empty), but the presence of annotations and schema coverage mitigates the need for more detail. Overall, it is sufficiently complete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for both parameters (confirm and placementGroupNo), covering 100% of parameters. The description adds no additional parameter semantics beyond restating the confirm requirement, so the parameters are adequately documented but not enhanced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Permanently delete a placement group.' The verb 'delete' and object 'placement group' are specific, and the warning icon distinguishes it as a destructive operation. It is unambiguous and differentiates well from sibling tools like ncloud_remove_placement_group_server, which removes servers rather than deleting the group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (to permanently delete a placement group) and gives an explicit execution requirement: 'Set confirm=true to execute.' It does not, however, explicitly mention alternatives or exclusions, such as noting that removing a server from a group uses a different tool. The destructive nature is highlighted, which serves as a cautionary guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_policiesADestructiveIdempotent
⚠️ Destructive: Permanently delete two or more user-created (custom) IAM policies at once. Every sub account, group and role they are assigned to loses those permissions immediately. System-managed policies cannot be deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| policyIdList | Yes | Policy IDs to delete (2 or more). For a single policy use ncloud_delete_policy |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, yet the description adds significant behavioral context beyond them: the immediate blast radius ('Every sub account, group and role they are assigned to loses those permissions immediately'), the system-managed exclusion, and the confirm=true execution gate. This meaningfully exceeds what the annotations convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences with zero waste: the destructive warning leads, then the action, then the consequence, then the confirmation requirement. Every sentence earns its place and no information is duplicated from the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive batch operation with full schema coverage and annotations carrying the safety profile, the description covers everything an agent needs: what is deleted, the consequence, the limitation, and how to execute. No output schema exists, but for a delete operation the absence of return-value documentation is a minor gap that does not hinder correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents both confirm ('Must be true to actually execute the destructive operation') and policyIdList ('2 or more... For a single policy use ncloud_delete_policy'). The description's 'Set confirm=true' and 'two or more' reinforce critical safety semantics but add no new information beyond the schema, matching the high-coverage baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Permanently delete'), a specific resource ('user-created (custom) IAM policies'), and a precise scope ('two or more... at once'). The 'two or more' qualifier plus the schema's explicit 'For a single policy use ncloud_delete_policy' cleanly distinguishes it from the singular sibling ncloud_delete_policy that appears in the tool list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys when to use this tool: batch deletion of 2+ custom policies, and it states an exclusion ('System-managed policies cannot be deleted'). The routing to the alternative for single-policy deletion lives in the schema parameter description rather than the main description, which keeps this from a 5, but the guidance is present and unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_policyADestructiveIdempotent
⚠️ Destructive: Permanently delete a user-created (custom) IAM policy. Every sub account, group and role it is assigned to loses those permissions immediately — check ncloud_get_policy_resources first. System-managed policies cannot be deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| policyId | Yes | Policy ID to delete (see ncloud_list_policies) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint and idempotentHint annotations, the description discloses the permanent nature of the deletion and the immediate revocation of permissions for every sub account, group, and role. It also surfaces the confirm=true execution requirement and the system-managed policy guardrail. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense, front-loaded sentences carry the destructive warning, the consequence, the prerequisite check, the exclusion, and the execution instruction. Every clause earns its place with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides all essential context for safe invocation: what is destroyed, the impact scope, the prerequisite read operation, the policy-type restriction, and the confirmation flag. No output schema exists, but for a destructive delete tool the description is sufficiently complete; the only minor omission is naming the batch-delete sibling, which does not impede calling this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both confirm and policyId fully described in the input schema. The description reiterates confirm=true but adds no new parameter-level semantics beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Permanently delete a user-created (custom) IAM policy.' It also clarifies scope by excluding system-managed policies. However, it does not explicitly distinguish itself from the sibling ncloud_delete_policies (plural), so the agent must infer that this tool handles a single policy rather than batch deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives actionable guidance: check ncloud_get_policy_resources before deleting, and notes that system-managed policies cannot be deleted, which is a clear exclusion. It also instructs the agent to set confirm=true to execute. It stops short of naming ncloud_delete_policies as the alternative for batch operations, so the when-to-use-this-vs-that guidance is incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_postgresql_databasesADestructiveIdempotent
⚠️ Destructive: Delete databases from a Cloud DB for PostgreSQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number | |
| cloudPostgresqlDatabaseList | Yes | List of databases to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, but the description adds critical behavioral context: the operation requires confirm=true to execute, reinforcing the destructive nature. This goes beyond the annotations by explaining the safety mechanism, which is valuable for an agent to avoid accidental data loss.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one short sentence with a clear warning prefix. It front-loads the destructive warning and essential execution requirement, with no redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with no output schema, the description adequately covers key aspects: destructive warning, confirm flag, and scope (databases from an instance). It doesn't explain return values or prerequisites, but those are not critical for a delete operation, and the schema handles parameter documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage of all three parameters (confirm, cloudPostgresqlInstanceNo, cloudPostgresqlDatabaseList) with descriptions. The description only reiterates the confirm=true requirement, which is already in the schema, adding no new semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete databases) and the target resource (Cloud DB for PostgreSQL instance), distinguishing it from sibling tools like delete_postgresql_instance or delete_postgresql_users. The verb 'Delete' and resource scope are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for deleting databases from a PostgreSQL instance but does not explicitly compare with alternatives or state exclusions. The confirm=true instruction provides operational guidance, but the 'when to use vs. alternatives' aspect is only inferred from the name and context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_postgresql_instanceADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud DB for PostgreSQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds 'Permanently' and the confirmation requirement, offering context about irreversibility and a safety guardrail. It doesn't contradict the annotations and provides useful behavioral transparency beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning emoji. Every word earns its place, and the critical confirmation note is included without any waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter destructive operation with annotations and no output schema, the description is sufficiently complete. It covers the operation's purpose, irreversibility, and the confirm requirement. It doesn't explain return values, but that is not necessary given the lack of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description reinforces that confirm must be true to execute, which adds slight meaning beyond the schema, but it doesn't provide deeper parameter semantics (e.g., format, examples, or constraints) for cloudPostgresqlInstanceNo.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'delete' and resource 'Cloud DB for PostgreSQL instance', clearly distinguishing it from sibling tools like ncloud_delete_postgresql_read_replica or ncloud_delete_postgresql_databases. The scope is unambiguous and immediately actionable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly states the destructive nature and the requirement to set confirm=true to execute, which is key usage guidance. However, it doesn't explicitly contrast with alternative delete tools for PostgreSQL components, such as read replicas or databases, so it lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_postgresql_read_replicaADestructiveIdempotent
⚠️ Destructive: Delete a Cloud DB for PostgreSQL Read Replica instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudPostgresqlReadReplicaInstanceNo | Yes | Cloud PostgreSQL Read Replica instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true and idempotentHint=true. The description adds the confirm=true requirement, but this is also documented in the schema parameter description, so it adds minimal new behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with a warning prefix; highly efficient and front-loaded. Every word adds value, and the structure is immediately clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with complete schema and annotations, the description covers the essential action and safety gate. It doesn't mention irreversibility or prerequisites, but annotations mitigate this and no output schema is expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the schema (100% coverage). The description does not add any parameter semantics beyond stating the confirm requirement, which is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Delete') and resource ('Cloud DB for PostgreSQL Read Replica instance'), clearly distinguishing it from deleting the primary PostgreSQL instance or other resources. It is concise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives such as ncloud_delete_postgresql_instance or ncloud_create_postgresql_read_replica. The context is implied but no alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_postgresql_usersADestructiveIdempotent
⚠️ Destructive: Delete users from a Cloud DB for PostgreSQL instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudPostgresqlUserList | Yes | List of users to delete | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, but the description adds a critical behavioral detail: 'Set confirm=true to execute.' This clarifies that the operation is a no-op without confirmation, which is not evident from annotations. It provides a warning and prerequisite for invocation, enhancing transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with a warning prefix and action. Every word earns its place; front-loaded with 'Destructive' and directly actionable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a delete operation with a well-described schema and annotations, the description is adequate. It states the action, resource, and confirmation requirement. It lacks mention of edge cases like idempotency or consequences of deleting nonexistent users, but given the concise nature and schema richness, it's sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 3 parameters with descriptions (coverage 100%), including the confirm flag's requirement. The description restates the confirm behavior but adds no new parameter-level meaning beyond the schema. It reinforces the confirmation requirement, but that's already documented. Baseline of 3 applies due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete users from a Cloud DB for PostgreSQL instance' with a specific verb and resource. It distinguishes from sibling delete tools for the same service (e.g., delete_postgresql_databases, delete_postgresql_instance) by specifying 'users'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit when-to-use guidance or alternatives. It only gives the operation and a confirmation requirement. While the tool name and context imply usage, it does not contrast with other delete operations for the same service, so an agent would need to infer context from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_product_schemaADestructiveIdempotent
⚠️ Destructive: Delete a user-defined custom schema from Cloud Insight. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| cw_key | Yes | Product key (cw_key) of the schema to delete | |
| confirm | No | Must be true to actually execute the destructive operation | |
| prodName | Yes | Product name of the schema to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, and the description reinforces this with a '⚠️ Destructive' warning. It adds behavioral value by disclosing the safety guard: the operation only executes when confirm=true.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that covers the destructive nature, target resource, and required confirm flag. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low parameter complexity, full schema coverage, and annotations, the description is nearly complete for a simple destructive delete operation. It covers what is deleted, the destructive implication, and the execution requirement, though it does not mention irreversibility explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes all three parameters with clear definitions, including the confirm default false. The description adds marginal meaning by emphasizing confirm=true, but mostly duplicates schema content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (delete), the resource (user-defined custom schema from Cloud Insight), and the context (Cloud Insight). It is distinct from sibling tools like get_product_schema, create_custom_schema, and update_product_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by marking the operation as destructive and explicitly instructing that confirm=true is required to execute. It does not enumerate alternatives, but the delete-only scope makes this unnecessary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_public_ipADestructiveIdempotent
⚠️ Destructive: Delete a public IP instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| publicIpInstanceNo | Yes | Public IP instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description reinforces this with a warning. It adds important behavioral context: the confirm parameter must be true to actually execute, preventing accidental deletions. This goes beyond the structured annotation information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the critical warning and action. It includes no filler and is immediately scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with annotations covering destructive and idempotent behavior, the description is sufficient. It explains the resource and the confirmation requirement. The lack of an output schema is acceptable given the straightforward nature of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes both parameters with 100% coverage. The description reiterates the confirm parameter's requirement ('Set confirm=true to execute') but does not add additional semantic value beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Delete a public IP instance.' It uses a specific verb and resource, distinguishing it from other delete tools and making the tool's purpose immediately obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on how to use the tool ('Set confirm=true to execute'), which is essential for safe execution. It implicitly conveys when to use this tool (to delete a public IP) without mentioning alternatives, but the instruction is explicit enough for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_roleADestructiveIdempotent
⚠️ Destructive: Permanently delete an IAM role. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| roleNo | Yes | Role ID (roleNo) to delete | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint=true), the description adds critical behavioral detail: the operation is 'permanently' destructive and requires explicit confirmation to execute. This enhances the agent's understanding of consequences and safeguards.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence conveys the destructive nature, the target resource, and the execution requirement. Every word earns its place, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation, the description covers purpose, parameter requirement, and safety warning. It does not mention potential side effects on dependent resources, but these are not explicitly requested and the annotation already flags destructiveness, making it sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for both parameters (roleNo and confirm), covering 100% of parameter semantics. The description's mention of 'confirm=true' duplicates the schema's explanation without adding new meaning, so it stays at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete') and the resource ('IAM role'), making it unambiguous. It also distinguishes itself from sibling tools like ncloud_create_role and ncloud_list_roles by specifying deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by warning 'Destructive' and requiring 'confirm=true to execute'. It lacks explicit alternatives or when-not-to-use guidance, but the context is sufficient for an agent to know this is the deletion tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_route_tableADestructiveIdempotent
⚠️ Destructive: Permanently delete a route table. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| routeTableNo | Yes | Route table number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructive and idempotent, but the description adds the critical safety behavior that confirm=true is required to execute. It also emphasizes permanence, which goes beyond the structured metadata and helps the agent understand the risk before invoking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a warning emoji, front-loading the destructive nature and action. It is concise and free of redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with two parameters and annotations, the description covers the purpose, destructive nature, and confirmation requirement. It lacks notes on side effects or prerequisites, but given the simple scope and annotation support, it is mostly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with both parameters documented (routeTableNo and confirm). The description adds no additional parameter semantics, but the schema already provides sufficient detail, so baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Permanently delete a route table' with a specific verb and resource, distinguishing it from sibling route table management tools like create or add-route tools. The destructive warning prefix reinforces the action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no explicit guidance on when to use this tool versus alternatives, such as prerequisites like detaching subnets first or conditions preventing deletion. No alternatives or when-not-to-use scenarios are mentioned, leaving the agent to infer usage solely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_rule_groupADestructiveIdempotent
⚠️ Destructive: Delete one or more Cloud Insight event rule groups. This permanently removes the rule groups and stops their monitoring alerts.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion. If false or omitted, returns a confirmation prompt. | |
| prodKey | Yes | Product key (cw_key) the rule groups belong to | |
| ruleGroupIds | Yes | Rule group (Event Rule) IDs to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so safety is partly covered. The description adds meaningful consequence detail beyond the annotations: deletion is permanent and it stops the rule groups' monitoring alerts, which is the key operational impact an agent should surface.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact clauses with the destructive warning front-loaded via the ⚠️ marker, and every sentence carries information. It could be marginally tighter but there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete with full schema coverage, an output schema unnecessary, and annotations covering idempotency/destructiveness, the description supplies adequate purpose and consequence context. The only gap is routing guidance to the singular sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so prodKey, ruleGroupIds, and the confirm flag are fully documented in the schema. The description adds nothing about parameters (notably omitting the confirm=true gate), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Delete) and resource (Cloud Insight event rule groups) with a clear scope hint ('one or more') that implicitly separates it from the singular sibling ncloud_delete_rule_group_by_id. It never names that sibling, so the differentiation is inferred rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and the closest alternative (ncloud_delete_rule_group_by_id) is never mentioned. The phrase 'one or more' weakly implies batch usage but the agent must infer when to pick this tool over its per-ID sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_rule_group_by_idBDestructiveIdempotent
⚠️ Destructive: Delete a Cloud Insight event rule by product key and rule group ID.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion. | |
| prodKey | Yes | Product key (cw_key) | |
| ruleGroupId | Yes | Rule group ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description repeats the `destructiveHint` annotation with a warning emoji but provides no additional behavioral context. It does not disclose the confirmation requirement, idempotency details, side effects, or consequences beyond 'delete'. With annotations already providing the destructive hint, this adds no new transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence with a clear warning prefix. Every word is purposeful, no filler, and the structure front-loads the destructive warning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite being minimal, the tool is simple and the schema/annotations cover the critical confirm flag and destructive/idempotent hints. The description is complete enough for an agent to understand the core operation, although it omits explicit mention of confirm=true, which is still available in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters are documented in the schema (100% coverage), and the description does not add any parameter-specific meaning. The phrase 'by product key and rule group ID' maps to the existing schema fields but adds no details beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the exact operation: 'Delete a Cloud Insight event rule by product key and rule group ID.' This is a specific verb (Delete) and resource (Cloud Insight event rule) with the method of identification (product key and rule group ID), which distinguishes it from generic `delete_rule_group` and other rule-group related siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like `ncloud_delete_rule_group` or `ncloud_delete_metrics_group_by_id`. The description only restates the operation and does not mention prerequisites, exclusions, or alternative tool choices. Implied usage is only that it needs product key and rule group ID.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_scaling_policyADestructiveIdempotent
⚠️ Destructive: Delete a scaling policy from an Auto Scaling Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| policyName | Yes | Scaling policy name to delete | |
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the critical behavioral detail of the confirm flag requirement, which is not covered by annotations (only destructiveHint and idempotentHint are present). It reinforces the destructive nature already declared by the annotation, providing useful context without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence that front-loads the destructive warning and states the purpose and the key execution requirement. There is zero wasted wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (3 simple parameters, no output schema), the description, combined with the annotations and full schema coverage, provides all necessary context for an AI agent to select and invoke the tool correctly. No additional information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are fully documented in the schema. The description adds no new parameter information beyond echoing the confirm requirement already present in the schema, which meets the baseline but does not go beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and the target resource (scaling policy from an Auto Scaling Group). It is specific and distinguishes this tool from siblings like ncloud_put_scaling_policy and ncloud_list_scaling_policies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for deleting scaling policies and explicitly instructs the user to set confirm=true to execute. It does not explicitly name alternatives or exclusion criteria, but for a destructive delete operation, the context is clear and sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_scheduled_actionADestructiveIdempotent
[⚠️ DESTRUCTIVE] Delete a scheduled action from an Auto Scaling Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| autoScalingGroupNo | Yes | Auto Scaling Group number | |
| scheduledActionName | Yes | Scheduled action name to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already disclose destructiveHint=true and idempotentHint=true. The description adds the critical requirement 'Set confirm=true to execute,' which is also present in the schema's confirm parameter description. While this behavioral detail is important and prominently placed, it is redundant with the schema, so the description adds limited new context beyond structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence with a clear warning prefix. It is front-loaded with the destructive nature and states the action and safety requirement concisely. Every phrase is necessary and there is no verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with 3 parameters, 100% schema coverage, and annotations, the description provides sufficient context. It tells what is deleted, the target resource (Auto Scaling Group), and the confirmation requirement. The lack of output schema is acceptable for a delete tool, and no return value explanation is critical for this kind of operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all three parameters, including the confirm requirement. The description does not add any parameter details beyond what the schema already documents, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation: 'Delete a scheduled action from an Auto Scaling Group.' The verb+resource is specific, and the word 'Delete' distinguishes it from sibling tools like ncloud_put_scheduled_action and ncloud_list_scheduled_actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (deleting a scheduled action) but does not explicitly state when to use this tool versus alternatives, nor does it mention related operations like creating or listing scheduled actions. The sibling list provides context, but the description itself contains no usage guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_server_imagesADestructiveIdempotent
⚠️ Destructive: Delete one or more server images (serverImageNo from ncloud_get_server_images). For user-created member images use ncloud_delete_member_server_images. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| serverImageNoList | Yes | List of server image numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is partly covered; the description reinforces it with a warning glyph and, more valuably, discloses that the call is gated behind confirm=true rather than executing on submission. It does not say what cascade effects deletion has on servers using the image or whether the delete is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short, front-loaded clauses: warning and action first, routing second, execution gate last. No filler sentences and nothing buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter destructive tool with full schema coverage, an output schema is unnecessary, and the annotations plus description together cover safety, scope, routing, and the confirm gate. An agent has everything needed to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description adds genuine meaning by identifying where serverImageNo values come from (ncloud_get_server_images) and by framing confirm as the execution switch. The confirm flag is already described in the schema, so the added value is modest rather than decisive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Delete one or more server images'), names the batch scope, and explicitly distinguishes itself from the near-identical sibling ncloud_delete_member_server_images. An agent can route between the two without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives the selection condition against the alternative ('For user-created member images use ncloud_delete_member_server_images'), points to the source of the required IDs (ncloud_get_server_images), and states the execution gate (confirm=true). All three usage-relevant facts are present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_snapshotsADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more block storage snapshot instances. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| blockStorageSnapshotInstanceNoList | Yes | List of snapshot instance numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint and idempotentHint. The description adds that deletion is permanent and requires confirm=true to execute, providing a safety interlock beyond the boolean destructive hint. It also alerts with '⚠️ Destructive,' adding useful context about irreversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the destructive warning, the resource being operated on, and the execution requirement. It is front-loaded with the warning and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter destructive tool with good schema coverage and idempotent/destructive annotations, the description covers the core behavior and safety mechanism. It could mention what happens when confirm=false, but that is implied by the schema default and the explicit 'Set confirm=true to execute.' Overall it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the schema (confirm and blockStorageSnapshotInstanceNoList) with meaningful descriptions. The tool description adds no extra parameter semantics beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool permanently deletes one or more block storage snapshot instances. The verb 'delete' and specific resource 'block storage snapshot instances' distinguish it from sibling deletion tools like ncloud_delete_block_storage or ncloud_delete_nas_snapshot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives, nor does it mention prerequisites such as listing snapshots first to obtain instance numbers. The only usage-related instruction is 'Set confirm=true to execute,' which concerns parameter behavior rather than tool selection context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_sub_accountADestructiveIdempotent
⚠️ Destructive: Permanently delete a sub account. All associated permissions and access will be revoked. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| subAccountId | Yes | Sub account ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by detailing consequences: 'All associated permissions and access will be revoked.' It also discloses the confirmation requirement ('Set confirm=true to execute'), which is not present in annotations. This provides valuable safety context for an irreversible operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise with two sentences. The destructive warning is front-loaded with an emoji, and every phrase ('permanently delete', 'permissions revoked', 'confirm=true') conveys essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with strong annotations, the description is sufficient. It covers the action, consequences, and the required confirmation flag. It does not describe return values or error scenarios, but these are less critical for a straightforward destructive tool without an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented. The description adds a behavioral note about confirm=true, connecting the parameter semantics to the destructive action. This reinforces the confirmation requirement beyond the schema's default-value description, adding value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a sub account'. It uses a specific verb ('delete') and resource ('sub account'), and the warning emoji emphasizes destructive intent. This distinguishes it from sibling tools like ncloud_list_sub_accounts and ncloud_create_sub_account.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a key usage guideline: 'Set confirm=true to execute.' This tells the agent the prerequisite for execution. While it doesn't explicitly mention alternatives or exclusions, the confirm-flag requirement is a clear condition for safe usage, which is sufficient for a destructive operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_sub_account_access_keyADestructiveIdempotent
⚠️ Destructive: Permanently delete a sub account's API access key. Any client still using this key will start failing immediately and the key cannot be restored — to disable a key temporarily use ncloud_set_sub_account_access_key_status instead. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| accessKey | Yes | Access key to delete (see ncloud_list_sub_account_access_keys) | |
| subAccountId | Yes | Sub account ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the destructiveHint/idempotentHint annotations by disclosing concrete consequences: irreversibility ('cannot be restored'), immediate impact on clients ('will start failing immediately'), and the confirmation gate required to execute. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with zero filler: the destructive warning is front-loaded, consequences are compressed into one clause, and the alternative plus confirm requirement fit in one final sentence. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter destructive delete, the description covers everything an agent needs: what is destroyed, the permanence and blast radius, the alternative for non-destructive needs, and the confirmation mechanism. No output schema exists, but return values are not critical for a delete operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters including the confirm guardrail and accessKey lookup hint. The description's 'Set confirm=true to execute' reinforces but does not add meaning beyond the schema's own parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (delete), a specific resource (sub account's API access key), and the permanent nature of the action. It actively distinguishes itself from the closest sibling behavior by referencing ncloud_set_sub_account_access_key_status for the non-destructive alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool (permanent removal) versus the alternative (temporary disable via ncloud_set_sub_account_access_key_status). Also specifies the mandatory confirm=true guardrail as a precondition for execution.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_subnetADestructiveIdempotent
⚠️ Destructive: Permanently delete a subnet. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| subnetNo | Yes | Subnet number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses destructive behavior via warning icon and 'Permanently delete', and discloses the confirm guard. This goes beyond annotations by explaining the safety mechanism. No contradiction with idempotentHint/destructiveHint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with a warning, no filler words. Each clause adds essential information (action+permanence, execution condition).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with full schema coverage and annotations, the description is adequate: it states action, permanence, and execution condition. It omits potential prerequisites like disassociating dependencies, but this is not critical for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already fully describes both parameters (subnetNo and confirm), including confirm's necessity. The description reinforces 'confirm=true' but adds no extra semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (delete) and resource (subnet) with the specific verb 'delete' and object 'subnet', distinguishing it from sibling create/list/get tools. The word 'Permanently' reinforces the action's completeness.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States that confirm=true is required to execute, giving a clear usage condition. However, it does not explicitly mention when not to use or provide alternatives, though the tool's purpose is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_target_groupsADestructiveIdempotent
⚠️ Destructive: Permanently delete target groups. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| targetGroupNoList | Yes | List of target group numbers to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description reinforces this with '⚠️ Destructive' and 'Permanently delete,' adding the irreversibility aspect. It also discloses a critical behavioral requirement: the confirm parameter must be true for the operation to execute. This adds meaningful context beyond the annotation, clarifying both the risk and the safeguard.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a clear warning and an explicit conditional for execution. Every word is purposeful, with no filler or repetition. It efficiently conveys the core action, the destructive nature, and the necessary confirmation step.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two parameters, no output schema) and the existing annotations, the description is largely complete. It covers the essential context: the action (delete), the target resource (target groups), the permanent impact, and the required confirmation. It could optionally mention that multiple target groups can be deleted at once (implied by the plural schema), but this is not a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are fully documented. The description adds no new semantics beyond the schema: it only restates the confirm requirement. Since the schema already explains each parameter adequately, the description provides marginal additional value, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Permanently delete target groups.' The verb 'delete' combined with the resource 'target groups' is specific and unambiguous. The name itself also clearly reflects this purpose, and there is no confusion with sibling tools like ncloud_list_target_groups or ncloud_get_target_group_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by naming the action (delete target groups) and the requirement to set confirm=true for execution. However, it does not explicitly describe when to use this tool versus other related tools, nor does it provide alternative suggestions or exclusions. The guidance is minimal beyond the destructive warning and confirmation prerequisite.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_vpcADestructiveIdempotent
⚠️ Destructive: Permanently delete a VPC. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to delete | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint. The description adds the confirm=true execution requirement and the permanence of the deletion, which are not present in the annotations, providing useful safety context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the warning and action. Every word is necessary and there is no wasted content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive delete with full schema coverage and annotations, the description covers the essential behavior. It does not address dependencies (e.g., subnets), but this is not critical for the core operation given the tool's straightforward nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% parameter descriptions for vpcNo and confirm. The description only repeats the confirm=true requirement already in the schema, adding no new semantic meaning beyond what the schema documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Permanently delete a VPC' with a specific verb and resource, distinguishing it from sibling VPC operations like create or get. The warning icon and 'Destructive' label further reinforce the action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied by the delete verb and the confirm parameter instruction, but no explicit when-to-use or alternative comparisons are provided. There are no exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_delete_vpc_peeringADestructiveIdempotent
⚠️ Destructive: Permanently delete a VPC Peering connection. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| vpcPeeringInstanceNo | Yes | VPC Peering instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While annotations already include destructiveHint=true, the description adds value by explicitly stating 'Permanently delete' and by disclosing the confirm=true safety guard, which is a behavioral trait not fully captured by the annotation. The idempotentHint=true annotation is not contradicted, and the description adds context about irreversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that includes a warning symbol, the destructive action, and the key confirmation requirement. Every word earns its place, with no unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with clear annotations and schema, the description covers the critical aspects: the destructive, permanent nature and the safety switch. It does not explain what happens after deletion or any dependencies, but those are not essential for a tool with this simplicity and annotation coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with clear descriptions, including the confirm flag's purpose. The description's 'Set confirm=true to execute' restates the schema's confirm description but does not add new details about parameter formats or relationships. Baseline 3 is appropriate given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('delete') and the resource ('VPC Peering connection'), and adds the adverb 'Permanently' to convey irreversibility. It is specific enough, though it does not explicitly differentiate from sibling tools like ncloud_accept_reject_vpc_peering or ncloud_set_vpc_peering_description, which operate on the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for deleting a VPC peering connection and requires confirm=true to execute, giving a clear precondition. However, it does not mention when not to use it or provide alternatives, so usage guidance is minimal but not misleading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_detach_block_storageAIdempotent
Detach block storage instances from their servers
| Name | Required | Description | Default |
|---|---|---|---|
| blockStorageInstanceNoList | Yes | List of block storage instance numbers to detach |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, which cover the safety profile. The description does not add behavioral context beyond the action itself, such as whether data remains intact, whether the server needs to be stopped, or what happens to the detached storage afterward.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise, front-loaded with the action, and contains no redundant information. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one parameter, full schema coverage, and annotations, the description is mostly complete. However, it omits any context about the effects of detaching (e.g., whether the storage remains attached to the account, whether the server must be stopped, or any post-conditions) which would be helpful for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter blockStorageInstanceNoList, with a clear description. The tool description adds no additional semantics beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'detach', the resource 'block storage instances', and the target 'from their servers'. This is specific and distinguishes it from sibling tools like attach_block_storage or delete_block_storage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you want to detach block storage from servers) but does not explicitly mention alternatives or exclusions. The context is clear enough from the action, but there is no guidance on prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_detach_network_interfaceAIdempotent
Detach a network interface from a server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to detach from | |
| networkInterfaceNo | Yes | Network interface number to detach |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false, covering the operation's safety profile. The description adds the 'from a server instance' scoping but does not disclose additional behavioral traits such as whether the server must be stopped, whether the operation is reversible, or any post-condition effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of eight words: 'Detach a network interface from a server instance.' Every word earns its place with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with full schema coverage, annotations, and no output schema, the description is complete enough to understand the operation. It clearly identifies the action and objects involved, though it does not mention any prerequisites or return behavior, which are not necessary for this level of complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters (networkInterfaceNo and serverInstanceNo) having descriptions. The tool description adds the relationship 'from a server instance' but does not provide additional parameter-level meaning beyond what the schema already states, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Detach' with a clear resource ('network interface') and target ('server instance'), unambiguously distinguishing it from siblings like ncloud_attach_network_interface, ncloud_create_network_interface, and ncloud_delete_network_interface.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (use when you need to detach a network interface from a server) but does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. The sibling list provides context, but the description itself lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_detach_policy_from_groupADestructiveIdempotent
⚠️ Destructive: Remove one or more IAM policies from a group. Policy IDs are sent in the request body as policyIdList (the API takes no policy ID in the path). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute | |
| groupId | Yes | Group ID | |
| policyId | No | Single policy ID to detach. Merged into policyIdList when sent; kept for backward compatibility | |
| policyIdList | No | List of policy IDs to detach. Provide this or policyId |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With destructiveHint=true already in annotations, the description still adds the ⚠️ Destructive warning, the confirmation guard, and the body-vs-path placement detail. This provides useful behavioral context beyond what annotations and schema alone convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two compact sentences with no filler. The destructive warning and core action are front-loaded, followed by the API-specific placement detail and the confirm requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with annotations present and no output schema, the description covers the action, warning, required confirmation flag, and parameter placement. It relies on the schema for groupId and the policyId/policyIdList choice, which is acceptable since schema coverage is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, giving a baseline of 3. The description adds meaning by explaining that policy IDs are transmitted via policyIdList in the request body and that no policy ID belongs in the path, complementing the schema's per-parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Remove one or more IAM policies from a group') with a clear verb and resource. It distinguishes this tool from close siblings like attach_policy_to_group and detach_policy_from_sub_account by naming the target resource ('group').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clarifies the key execution requirement (set confirm=true) and an API nuance (policy IDs go in the body as policyIdList, not in the path). It does not explicitly name alternative sibling tools or when-not-to-use conditions, but the verb and resource make the primary use case clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_detach_policy_from_sub_accountADestructiveIdempotent
⚠️ Destructive: Remove one or more IAM policies from a sub account. Policy IDs are sent in the request body as policyIdList (the API takes no policy ID in the path). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute | |
| policyId | No | Single policy ID to detach. Merged into policyIdList when sent; kept for backward compatibility | |
| policyIdList | No | List of policy IDs to detach. Provide this or policyId | |
| subAccountId | Yes | Sub account ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true, so the safety profile is covered. The description adds useful context by stating that policy IDs go in the request body and that confirm=true is required, but it does not disclose permissions, reversibility, or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences front-load the destructive warning and action, then immediately give the two operational details an agent needs: body placement and confirm=true. There is no filler or redundant explanation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive mutation with full parameter schemas and safety annotations, the description is largely complete: it states the action, target, required confirmation, and a non-obvious API transport detail. It lacks only explicit sibling-selection guidance, which is already penalized under usage guidelines, and there is no output schema to describe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents each parameter. The description reinforces that policy IDs travel in policyIdList and that confirm must be true, but these details largely duplicate what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Remove one or more IAM policies') and the target resource ('from a sub account'). This distinguishes it from nearby siblings like detach_policy_from_group and delete_policy, and the 'one or more' phrasing signals batch support.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance about when to use this tool versus attach_policy_to_sub_account or detach_policy_from_group. It explains mechanics (body parameter, confirm flag) but not the decision context that would route an agent to the correct sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_disable_flow_logAIdempotent
Disable FlowLog on a network interface. Stops capturing network traffic logs.
| Name | Required | Description | Default |
|---|---|---|---|
| networkInterfaceNo | Yes | Network interface number to disable FlowLog on |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, so safety is covered. The description adds useful behavioral detail by stating that capturing of network traffic logs stops, which goes beyond the annotations and helps the agent understand the effect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the action, and contains no redundant or filler content. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter operation with idempotency and non-destructive annotations, the description adequately covers purpose and effect. There is no output schema, but the operation is straightforward enough that this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the only parameter, networkInterfaceNo, with 100% coverage. The description does not add additional parameter semantics beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Disable') and resource ('FlowLog on a network interface'), clearly stating what the tool does. It also distinguishes from the sibling 'enable_flow_log' tool by specifying the opposite action and adding the effect 'Stops capturing network traffic logs.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use the tool: when you need to disable FlowLog on a network interface. It does not explicitly mention alternatives or exclusions, but the context is clear and the sibling enable tool is obvious from naming.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_disassociate_public_ipAIdempotent
Disassociate a public IP from its currently associated server instance
| Name | Required | Description | Default |
|---|---|---|---|
| publicIpInstanceNo | Yes | Public IP instance number to disassociate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description's contribution is modest. It adds that the IP is disassociated from its 'currently associated' server, implying it must be attached, but does not disclose further effects such as the IP becoming available or network implications. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly written sentence that conveys the action, target, and context without any redundant words. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description plus schema provide sufficient context. It could mention that the public IP itself is not deleted, but the simple nature and annotations make the current level adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage for the single parameter, and the description does not add additional meaning beyond the parameter's own description. Baseline of 3 is appropriate since the schema carries the semantic weight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Disassociate') and resource ('public IP from its currently associated server instance'), clearly distinguishing it from sibling tools like associate, create, and delete. It is concise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the action's context (disassociating a public IP from its server), which is enough to infer when to use it. However, it does not explicitly name alternatives or specify when not to use it, so it falls short of full explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_apply_domainAIdempotent
Apply pending changes to a Global DNS domain (publish DNS records)
| Name | Required | Description | Default |
|---|---|---|---|
| domainId | Yes | Domain ID to apply |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false, covering safety and destructive behavior. The description adds the key behavioral context that this is a 'publish' action that makes pending changes live, which is valuable beyond the annotations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of ten words, front-loaded with the verb and resource. It contains zero redundant information and is highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, no output schema, and clear annotations, the description is sufficiently complete. It explains the core operation (applying/publishing changes) while relying on schema and annotations for parameter and safety details. A minor gap is not defining 'pending changes', but sibling tools make this inferable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the parameter 'domainId' described as 'Domain ID to apply'. The description does not add any extra meaning to the parameter, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Apply') and clearly identifies the resource ('pending changes to a Global DNS domain') with a clarifying parenthetical ('publish DNS records'). It distinguishes this tool from sibling DNS operations like list, create, delete, and rollback, which focus on different actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'apply pending changes' implies this tool is used after making DNS record edits, but it does not explicitly state when to use it or mention alternatives. It lacks clear context such as 'use after create/update/delete records' or exclusions, leaving usage guidance mostly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_create_domainB
Create a new Global DNS domain
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Domain name (e.g., example.com) | |
| comment | No | Optional comment for the domain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false, and the description does not contradict that. However, the description discloses no additional behavioral traits: it does not mention that the created domain might need activation/apply, what state it enters after creation, or any name constraints beyond the schema. The verb 'Create' implies a mutation but adds little beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero filler. It immediately states the action and resource, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with complete schema and no output schema, the description is mostly sufficient. However, it misses workflow context: a newly created Global DNS domain likely needs to be applied (see sibling ncloud_dns_apply_domain) to become effective, yet this is not mentioned. An agent might assume creation alone fully activates the domain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% – both 'name' and 'comment' have descriptive text. The tool description itself adds no parameter-specific meaning, so it receives the baseline score of 3 for a fully documented schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new Global DNS domain', which is a specific verb (create) and resource (Global DNS domain). It distinguishes from siblings like ncloud_dns_create_records (records) and ncloud_dns_delete_domain (deletion).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites, follow-up steps (e.g., applying the domain via ncloud_dns_apply_domain), or cases where a different tool would be more appropriate. The agent must infer usage solely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_create_recordsB
Create DNS records for a specific Global DNS domain
| Name | Required | Description | Default |
|---|---|---|---|
| records | Yes | Array of DNS records to create | |
| domainId | Yes | Domain ID to create records for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the verb 'Create'. Annotations only include destructiveHint=false, which indicates non-destructive but does not clarify batch behavior, idempotency, validation, or whether existing records are affected. The description carries a low disclosure burden but fails to add any meaningful behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It immediately states the action and target resource, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple create operation with a rich schema that documents all parameters. However, the description lacks context about multiple record creation (array input), how to obtain domainId, or any caveats about record types. It is minimally complete but leaves gaps for an agent to infer behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are well-documented in the schema. The description itself does not add additional parameter semantics, making the baseline 3 appropriate. No parameter meanings are explained beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Create DNS records for a specific Global DNS domain'. The verb 'Create' and resource 'DNS records' are specific, and 'for a specific Global DNS domain' adds scope. This distinguishes it from sibling tools like ncloud_dns_update_records and ncloud_dns_delete_records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided about when to use this tool versus alternatives. The verb 'Create' implies usage when creating DNS records, but there is no mention of prerequisites (e.g., domain must exist), exclusions, or comparison with update/delete tools. This is essentially no guidance beyond the tool's name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_delete_domainADestructiveIdempotent
⚠️ Destructive: Permanently delete a Global DNS domain. All records under this domain will be removed. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| domainId | Yes | Domain ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by specifying that deletion is permanent, cascades to all records, and requires confirm=true to execute. The warning emoji and explicit consequences provide valuable behavioral disclosure that annotations do not cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence. It front-loads the destructive warning, clearly states the action, consequence, and required confirmation flag, with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete tool with annotations covering idempotency and destructiveness, the description effectively conveys the essential context: permanence, cascading deletion, and confirmation requirement. No output schema exists, so no return-value explanation is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no extra parameter information beyond what the schema already states. The mention of confirm=true is redundant with the schema's confirm description, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a Global DNS domain.' It specifies the resource and distinguishes from record-level operations by noting all records under the domain will be removed, differentiating it from sibling tools like ncloud_dns_delete_records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (to delete an entire DNS domain) but does not explicitly mention alternatives or when-not to use it. It lacks a direct reference to sibling tools for deleting individual records, leaving the guidance implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_delete_recordsADestructiveIdempotent
⚠️ Destructive: Delete DNS records from a Global DNS domain. This permanently removes the specified records. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| domainId | Yes | Domain ID to delete records from | |
| recordIds | Yes | Array of record IDs to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as destructive and idempotent, so the description's 'Destructive' and 'permanently removes' are somewhat redundant. However, it adds critical behavioral context: 'Set confirm=true to execute.' This reveals a safety mechanism (confirmation flag) not present in the annotations, which is valuable for correct invocation. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, front-loaded with the destructive warning. It efficiently conveys the action, consequences, and the confirmation requirement. While there is slight redundancy between 'Destructive' and 'permanently removes,' every sentence earns its place—no filler or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with no output schema, the description is nearly complete. It covers what is deleted, the permanent nature, and the confirm=true requirement. It could explicitly state what happens when confirm is false (e.g., no-op), but the implication is clear. A minor improvement would be to mention the default, but the schema handles that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear descriptions for domainId, recordIds, and confirm. The description adds no extra parameter-level meaning beyond what the schema already provides (e.g., 'specified records' maps to recordIds, but the schema already says that). Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action: 'Delete DNS records from a Global DNS domain.' This uses a specific verb (delete) and resource (DNS records), and distinguishes it from sibling tools like create, update, or list records. The addition of 'permanently removes' and the confirmation requirement reinforces its distinct destructive purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when you need to remove DNS records. It states 'Delete' and 'permanently removes,' which is unambiguous. However, it does not explicitly name alternatives (like update_records for modifying), so it falls short of a 5. Still, the context is clear and there are no misleading exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_get_domain_detailARead-only
Get detailed information about a specific Global DNS domain
| Name | Required | Description | Default |
|---|---|---|---|
| domainId | Yes | Domain ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description merely echoes this with 'Get detailed information' without adding context such as what fields are returned, error behavior, or any special constraints. The description provides no behavioral insights beyond what the annotation already communicates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It is front-loaded with the action ('Get') and resource ('detailed information') and is appropriately brief for a simple getter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should ideally indicate what kind of detailed information is returned (e.g., records, TTL, status). It only says 'detailed information', which is vague. For a simple one-parameter tool with a readOnlyHint, this is adequate but leaves room for improvement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (domainId is described as 'Domain ID to query'). The tool description adds no additional parameter semantics beyond the schema, which is the baseline for high coverage. No further elaboration is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Get detailed information about a specific Global DNS domain.' This clearly differentiates it from sibling tools like ncloud_dns_list_domains (which lists domains) and other DNS operations. The scope is explicit and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you need details for a specific domain) but does not explicitly state when to use this tool versus alternatives, nor does it name any sibling tools for comparison. Sibling differentiation is inherent from the name, but no direct guidance or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_get_query_countBRead-only
Get DNS query count monitoring data for Global DNS domains
| Name | Required | Description | Default |
|---|---|---|---|
| domainId | No | Filter by specific domain ID | |
| baseTimeUnit | Yes | Time unit for aggregation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description's 'Get ... monitoring data' aligns with that. However, the description adds no additional behavioral context beyond the annotation—no mention of aggregation behavior, time range limits, domain filtering semantics, or what the returned data contains. With annotations present, the bar is lower, but the description still contributes minimal value beyond what the annotation and schema already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. It front-loads the verb and directly states the resource and scope. Perfectly appropriate size for the information conveyed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with only two parameters and a readOnly annotation, but no output schema exists. The description does not indicate the return format, time range behavior, or how domainId affects the data (e.g., aggregate vs. specific domain). This leaves some ambiguity for an agent deciding whether this tool meets its needs, warranting a slightly below-average completeness score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both 'domainId' ('Filter by specific domain ID') and 'baseTimeUnit' ('Time unit for aggregation') have clear descriptions in the schema. The tool description adds no parameter-specific meaning beyond that, so it neither helps nor harms. Baseline of 3 applies because the schema fully handles parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Get') and resource ('DNS query count monitoring data') with a scope ('for Global DNS domains'). However, it does not explicitly distinguish this tool from the similar sibling ncloud_gtm_get_query_count, which also provides query count but for Global Traffic Manager. The name and phrase 'Global DNS domains' provide some differentiation, but the description alone would not clearly tell an agent when to choose one over the other.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not mention when to use this tool versus alternatives, nor any exclusions or prerequisites. Given the existence of ncloud_gtm_get_query_count and other DNS monitoring tools in the sibling list, explicit guidance on context or alternatives would be valuable but is entirely absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_list_domainsARead-only
List Global DNS domains with pagination. Returns Spring Page structure (content, pageable, totalElements).
| Name | Required | Description | Default |
|---|---|---|---|
| page | Yes | Page number (0-based) | |
| size | Yes | Number of items per page | |
| domainName | No | Filter by domain name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond the readOnlyHint annotation by specifying the return structure as a Spring Page object with content, pageable, and totalElements. This gives the agent insight into the response format, which is useful for handling output. It does not contradict the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with two short sentences that front-load the main purpose and then provide return structure details. Every word adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list operation with readOnlyHint annotation and fully described schema parameters, the description provides the essential details: network scope, pagination, and return format. It could optionally mention the domainName filter, but the schema already covers this, so the description is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, including page (0-based), size, and domainName filter. The description's mention of pagination aligns with the page/size parameters but adds no additional meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'Global DNS domains', which is specific and distinguishes it from sibling tools like ncloud_dns_get_domain_detail and ncloud_dns_create_domain. The mention of pagination further clarifies the operation's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. It only states what the tool does, leaving the agent to infer usage context from the name and schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_list_lb_recordsARead-only
List available Load Balancer records for Global DNS integration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already discloses the safe read-only nature, lowering the bar. The description adds only minimal context ('available', 'Global DNS integration') and does not disclose additional behavioral details such as result format, ordering, or any potential limitations. It does not contradict the annotation, but contributes little beyond it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action ('List') and the object ('Load Balancer records'). Every word is purposeful, and the qualifier 'for Global DNS integration' adds critical context without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (no parameters, no output schema) and the read-only annotation, the description is nearly complete. It tells the agent what the tool does and when it applies. However, since there is no output schema, it would be slightly better if it described the return shape, but this is not critical for a simple list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and the schema is empty with 100% coverage. Per the rubric, a zero-parameter tool gets a baseline of 4. The description does not need to explain parameter semantics since there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the verb (List) and resource (Load Balancer records) with a specific scope (for Global DNS integration). It distinguishes this tool from nearby siblings like ncloud_dns_list_records by specifying 'Load Balancer records' rather than general DNS records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when needing Load Balancer records for Global DNS integration) but provides no explicit guidance on when not to use it or which alternative tools to consider. It does not reference any sibling tools or exclude scenarios, leaving usage context implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_list_recordsARead-only
List DNS records for a specific Global DNS domain with pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default 0) | |
| size | No | Number of items per page (default 100) | |
| domainId | Yes | Domain ID to list records for | |
| recordType | No | Filter by record type | |
| searchContent | No | Search filter for record content |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, and the description adds only the pagination behavior, which is already fully described by the schema's page/size parameters. No additional behavioral context, such as result ordering or filtering semantics, is provided beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that names the action, the resource, the scope, and the pagination trait with zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with full schema coverage and no output schema, the description is sufficient to select and invoke it. It could be stronger if it hinted at what a record object contains or how the recordType/searchContent filters combine, but nothing needed to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters (domainId, recordType, searchContent, page, size) are already documented in the schema. The description's mention of 'pagination' mirrors the schema without adding syntax, defaults, or filter-combination semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('List DNS records') and scopes it to a specific Global DNS domain, which is unambiguous on its own. However, it does not differentiate itself from the sibling ncloud_dns_list_lb_records, which also lists DNS-related records, so an agent must infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a specific Global DNS domain' implies the precondition that a domainId is known, but there is no explicit when-to-use guidance and no alternative tool named (e.g., ncloud_dns_list_lb_records). Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_rollback_domainADestructive
⚠️ Destructive: Rollback a Global DNS domain to the previously applied state. Pending changes will be discarded. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| domainId | Yes | Domain ID to rollback |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, the description adds concrete behavioral details: it warns '⚠️ Destructive', states 'Pending changes will be discarded', and requires 'Set confirm=true to execute.' This clearly discloses the destructive nature, the specific consequence (discarding pending changes), and the confirmation safeguard.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence. It front-loads the destructive warning, states the action, and gives the key requirement. No redundant or filler words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple rollback tool with two parameters, the description, combined with the schema and annotations, is nearly complete. It covers what the tool does, the side effects, and the confirmation requirement. It could mention prerequisites like the existence of a previously applied state, but this is likely implied by 'previously applied state.' No output schema is needed for a rollback operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description does not need to add parameter details. The only parameter-related mention is 'Set confirm=true to execute,' which duplicates the confirm parameter's schema description. No additional semantic value beyond the schema is provided, hence the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource: 'Rollback a Global DNS domain to the previously applied state' and clearly distinguishes this from sibling tools like ncloud_dns_apply_domain, ncloud_dns_delete_domain, and ncloud_dns_list_domains. It precisely states the action and the target resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use: when you want to revert a domain to its last applied state and discard pending changes. This provides clear context, though it does not explicitly name alternative tools or exclusions. The phrase 'Pending changes will be discarded' clarifies the scenario but could be stronger with an explicit 'use when...' statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_dns_update_recordsBIdempotent
Update DNS records for a specific Global DNS domain
| Name | Required | Description | Default |
|---|---|---|---|
| records | Yes | Array of DNS records to update | |
| domainId | Yes | Domain ID to update records for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations (idempotentHint: true, destructiveHint: false) already indicate safety for retries and non-destructive behavior. The description adds no additional behavioral context, such as whether the operation replaces the entire record set or updates individual records, but it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the essential action without redundant words. It is appropriately concise and free of filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update tool, the description is minimally sufficient given the rich schema and annotations. However, it omits important context such as the need to obtain existing record IDs (e.g., via list_records) and whether the records array replaces or patches existing entries. This could lead to incorrect invocation without additional research.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for both parameters (domainId and records), including nested record fields. The description adds no extra semantic value beyond what the schema already documents, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and resource ('DNS records') for a specific domain. However, it does not explicitly differentiate from the sibling tools ncloud_dns_create_records and ncloud_dns_delete_records, though the verb 'update' implies modification of existing records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like create or delete records. It does not mention prerequisites (e.g., needing existing record IDs) or scenarios where this tool is appropriate, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_copy_policyA
Duplicate a DRM policy (POST /api/v1/policy/{policyId}/copy — Public zone only). The copy is named 'Copy_' and gets a new policyId.
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | DRM policy ID to duplicate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses meaningful mutation behavior: the copy is named 'Copy_<original>' and receives a new policyId, and the zone restriction. It does not state whether all policy settings are inherited, what permissions are required, or reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence, front-loaded with the verb and resource, with the endpoint and naming behavior appended. No wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-param mutation tool with no annotations and no output schema, the description covers the essentials (endpoint, zone restriction, naming, new ID) but leaves open what the copy inherits and how success/failure surfaces. Adequate but with a clear gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents policyId. The description reinforces that policyId is the source being duplicated and that a new ID is generated, adding marginal meaning over the schema's own 'policy ID to duplicate'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Duplicate) and resource (DRM policy), plus the underlying endpoint, clearly distinguishing it from ncloud_drm_create_policy and ncloud_drm_update_policy. The naming/id outcome makes the operation unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'Public zone only' constraint implicitly scopes usage, but nothing explicitly contrasts copy versus create_policy or explains when to duplicate instead of creating fresh. It provides implied rather than explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_create_policyA
Create a new DRM policy with Widevine / PlayReady / FairPlay security settings
| Name | Required | Description | Default |
|---|---|---|---|
| persistent | Yes | Offline license retention (must be true if using rentalDuration) | |
| policyName | Yes | Policy name (3-20 chars: letters, numbers, '_') | |
| rentalDuration | Yes | Seconds until first playback must start after license acquisition (0~2147483647, default 0) | |
| drmPolicyConfig | Yes | Per-DRM policy settings (widevine/playready/fairplay) | |
| playbackDuration | Yes | License validity in seconds from first playback (0~2147483647, default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false. The description adds minimal behavioral context beyond the creation action itself. It does not disclose prerequisites (e.g., needing an existing site), side effects, permissions required, or return value behavior. With sparse annotations, the description carries a heavier burden that it fails to meet.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the essential action and resource. Every word earns its place, with no unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite a complex schema with nested objects and no output schema, the description offers only a high-level summary. It does not mention the hierarchical structure (drmPolicyConfig containing per-DRM settings), any prerequisites like site creation, or expected results. The schema does a lot of heavy lifting, but the description leaves key contextual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters and nested properties are already well documented. The description's mention of 'security settings' adds no additional meaning beyond what the schema already provides, keeping this at the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new DRM policy'), and specifies the three DRM security systems (Widevine / PlayReady / FairPlay). This distinguishes it from sibling tools like ncloud_drm_update_policy or ncloud_drm_delete_policy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is for creating a new policy (as opposed to updating/deleting existing ones), providing a clear usage context. However, it does not explicitly mention alternatives or when not to use it, which prevents a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_create_siteA
Create a new DRM site (binds a DRM policy; optionally registers a FairPlay certificate)
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | DRM policy ID (0 = Basic default, or a custom policy ID) | |
| siteName | Yes | Site name (3-20 chars: letters, numbers, '_') | |
| fairPlayCert | No | FairPlay Streaming certificate details |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint: false, and the description adds that the tool 'binds a DRM policy' and 'optionally registers a FairPlay certificate', which is useful context beyond the schema. However, it does not disclose potential side effects, prerequisites (e.g., whether the policy must exist), or what happens on failure. Given the sparse annotations, the description partially carries the burden but could be more transparent about the operation's effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficiently structured sentence: 'Create a new DRM site (binds a DRM policy; optionally registers a FairPlay certificate)'. It is front-loaded with the action and resource, and every word contributes meaning. No unnecessary content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 3 parameters, no output schema, and only the destructiveHint annotation, the description covers the core action but lacks details such as expected response, prerequisites for the policy or certificate, and any special constraints beyond what the schema states. It is adequate for a simple create operation but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: policyId, siteName, and fairPlayCert each have descriptions. The description adds minimal high-level context by linking policyId to 'binds a DRM policy' and fairPlayCert to 'optionally registers', but this does not go beyond what the schema already implies (fairPlayCert is not required). Per the baseline for high schema coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new DRM site', a specific verb+resource combination that distinguishes it from sibling tools like ncloud_drm_update_site, ncloud_drm_enable_site, and ncloud_drm_disable_site. The parenthetical adds concrete detail about binding a DRM policy and optionally registering a FairPlay certificate, which further clarifies the tool's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is for creating new sites, but it does not explicitly state when to use it versus the update/enable/disable alternatives. No exclusions or alternative tool references are provided. The purpose is clear from the name, but usage guidance is only implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_delete_policyADestructiveIdempotent
⚠️ Destructive: Permanently delete a DRM policy. Disable any site using this policy first. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| policyId | Yes | DRM policy ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint=true), the description discloses that deletion is permanent, that sites using the policy must be disabled first, and that confirm=true is required. These behavioral details materially inform the agent about safety requirements and consequences, going beyond what the structured annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences deliver a warning, the action, a prerequisite, and the confirmation requirement. Every sentence earns its place; there is no filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive two-parameter tool with safety annotations, the description covers the action, irreversibility, prerequisite, and execution gate. The absence of an output schema does not create a gap for this simple delete operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents policyId and confirm. The description restates the confirm requirement but adds no deeper semantic detail, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Permanently delete a DRM policy,' using a specific verb and resource with a permanence qualifier. This clearly distinguishes the tool from DRM get/update/disable operations, and no sibling tool competes for the same delete-policy action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit prerequisite ('Disable any site using this policy first') and an execution gate ('Set confirm=true to execute'). It doesn't explicitly name alternatives such as update_policy or disable_site, but the context is sufficient for an agent to know when this destructive action is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_disable_siteAIdempotent
Disable (deactivate) a DRM site. Disable a site before modifying its active policy.
| Name | Required | Description | Default |
|---|---|---|---|
| siteId | Yes | Site ID to disable |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering safety and repeatability. The description adds a workflow constraint (before policy modification) but does not elaborate on other behavioral aspects like what happens to the site while disabled or whether prerequisites (e.g., site exists) are required. This adds some context but not rich detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short, purposeful sentences. The first sentence states the core action, and the second adds essential usage context. There is zero redundant or filler content, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, state-change tool with no output schema and strong annotations, the description adequately covers the purpose and timing. It could mention what a successful response looks like or error conditions, but given the low complexity and existing annotations, the description is sufficiently complete for an agent to use effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% coverage with 'Site ID to disable.' The description does not add additional meaning beyond the schema—it only restates the resource type. With high schema coverage, baseline 3 is appropriate, and no extra parameter guidance is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Disable (deactivate) a DRM site.' This is a specific verb+resource combination that distinguishes it from sibling tools like enable, create, update, get, and list. The parenthetical 'deactivate' reinforces the meaning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence provides explicit usage context: 'Disable a site before modifying its active policy.' This tells the agent when to use this tool relative to a workflow. It does not explicitly list alternatives or when-not-to-use, but the context is clear enough for a simple disable operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_enable_siteAIdempotent
Enable (activate) a DRM site
| Name | Required | Description | Default |
|---|---|---|---|
| siteId | Yes | Site ID to enable |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, already covering the safety profile. The description adds minimal extra context ('activate' as a synonym) but no additional behavioral details such as effects on site status or logs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundant wording. Every word contributes to conveying the action and object.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple state-change action with one parameter and helpful annotations, the description is adequate but not richly detailed. It omits return value expectations or preconditions, but given the tool's simplicity and annotation coverage, this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (siteId with 'Site ID to enable'), so the description does not need to explain parameters. The tool description adds no further semantic value beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Enable (activate)' with a clear resource 'DRM site', immediately conveying the tool's function. It distinguishes itself from sibling tools like ncloud_drm_disable_site and ncloud_drm_update_site by its focus on activation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (enable a DRM site) but provides no explicit guidance on when to use this tool versus alternatives, nor any prerequisites or conditions. It is not misleading, but lacks explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_get_license_statisticsARead-only
Get DRM license issuance statistics/history for a site (filterable by content/user/device, time range, status)
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default 1) | |
| siteId | Yes | Site ID to query license statistics for | |
| status | No | Filter by license issuance result | |
| endTime | No | Query end time (Unix epoch milliseconds) | |
| pageSize | No | Items per page (1~100) | |
| startTime | No | Query start time (Unix epoch milliseconds) | |
| searchKeyword | No | Search term matching searchCondition | |
| searchCondition | No | Search field to filter by |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds no further behavioral context such as return format, pagination behavior, or whether results are aggregated or raw records. It does not contradict annotations, but also adds minimal value beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the tool's purpose and then lists the key filter dimensions. Every word earns its place with no redundancy or padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 8 parameters and no output schema, and the description covers the main purpose and filter types. However, it does not mention pagination parameters (pageNo/pageSize) or clarify whether the response is a list of records or aggregated statistics. Given the complexity and absence of an output schema, this is a noticeable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already documented. The description adds value by grouping the filters into meaningful categories ('content/user/device, time range, status'), which helps agents intuitively map their intent to the available parameters. This goes beyond the schema's individual parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get') and resource ('DRM license issuance statistics/history for a site'), and distinguishes this tool from siblings like ncloud_drm_get_site_logs or ncloud_drm_get_policy_logs. The filterable dimensions further clarify the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for querying license issuance history/statistics, but it does not explicitly state when to use it over alternatives or mention exclusions. The context is clear enough for a straightforward read-only stats tool, but no alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_get_policyARead-only
Get detailed configuration of a specific DRM policy
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | DRM policy ID (from ncloud_drm_list_policies) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already signals a safe read operation, lowering the bar for additional disclosure. The description adds 'detailed configuration' but does not elaborate on return format, fields included, or error behavior. With annotations covering the safety profile, this is adequate but not enriched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clearly worded sentence that is front-loaded with the verb and resource. There is no wasted wording or redundant information; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool with a readOnly annotation, the description is largely complete. It lacks an output schema, so it does not enumerate the fields returned in the 'detailed configuration', but this is a minor gap given the standard 'get detail' pattern. The source of the policyId in the schema helps the agent invoke it correctly, so overall it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has full 100% coverage for the single parameter policyId, and the schema description adds important context: 'DRM policy ID (from ncloud_drm_list_policies)'. This tells the agent where to obtain the ID, which goes beyond the bare type and name. The description does not need to compensate further because the schema is self-sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get detailed configuration of a specific DRM policy' uses a specific verb ('Get') and clearly identifies the resource ('detailed configuration of a specific DRM policy'). This distinguishes it from sibling tools like ncloud_drm_list_policies, which lists policies, and ncloud_drm_update_policy/delete_policy, which modify them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving details of a single policy but does not explicitly state when to use it versus alternatives. The parameter description hints that the policy ID comes from ncloud_drm_list_policies, which suggests a workflow, but no when-not or alternative guidance is provided. This is an implied usage, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_get_policy_logsBRead-only
Get event logs for a DRM policy
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N, default 1) | |
| endTime | No | Query end time (Unix epoch milliseconds) | |
| pageSize | No | Items per page (1~100) | |
| policyId | Yes | DRM policy ID to query logs for | |
| startTime | No | Query start time (Unix epoch milliseconds) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation aligns with the 'Get' operation, but the description adds no additional behavioral context such as pagination behavior, time range handling, or event log format. It merely restates the operation, providing no value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It is appropriately sized for a straightforward query operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and a minimal description, the tool lacks context about return format, pagination limits, or event types. The schema covers query parameters, but for a log retrieval tool this is a meaningful gap that could confuse agents needing to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all five parameters, so the schema handles semantic meaning. The tool description itself adds no parameter-specific information, but this is acceptable given the schema's completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('event logs for a DRM policy'), making it specific and distinct from sibling tools like ncloud_drm_get_site_logs. However, it does not explicitly name alternatives or contrast itself, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus other log-related tools such as ncloud_drm_get_site_logs or ncloud_search_logs. The description is a bare statement of functionality with no context about use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_get_siteBRead-only
Get detailed information about a specific DRM site
| Name | Required | Description | Default |
|---|---|---|---|
| siteId | Yes | Site ID (from ncloud_drm_list_sites) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description aligns with that. However, the description adds no behavioral context beyond 'detailed information' — it does not mention what fields are returned, whether the site must be enabled, or any other behavioral traits. Given the annotation covers the safety profile, this is acceptable but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that gets straight to the point. There is no redundant wording, and the key information (action + resource) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple read tool with one parameter and a readOnlyHint annotation. The input side is well covered by the schema. However, since there is no output schema, the description's phrase 'detailed information' is vague and does not specify what aspects of the site are returned (e.g., status, configuration, policy associations). This is a moderate gap, but overall the tool is simple enough that the description is minimally viable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the single parameter (siteId) with a clear explanation that it comes from ncloud_drm_list_sites. Since schema description coverage is 100%, the description adds nothing beyond what the schema already provides. The baseline 3 applies because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed information about a specific DRM site'), clearly indicating a read operation for a single site. It distinguishes from siblings like ncloud_drm_list_sites, ncloud_drm_create_site, and ncloud_drm_update_site by implying a specific site rather than a list or mutation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives. It does not mention that it complements ncloud_drm_list_sites, or that it is for retrieving details rather than creating/updating. The schema parameter description hints at a prerequisite (siteId from ncloud_drm_list_sites), but the description itself provides no usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_get_site_logsARead-only
Get event logs for a DRM site
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N, default 1) | |
| siteId | Yes | Site ID to query logs for | |
| pageSize | No | Items per page (1~100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, covering the safety profile. The description adds that it retrieves 'event logs', which clarifies the data type but does not disclose additional behaviors such as ordering, time range, or pagination behavior. Since the read-only nature is annotated, the description does enough for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words or repetition. It efficiently conveys the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only log retrieval with full schema coverage and readOnlyHint annotation, the description is minimally adequate. However, it lacks any broader context such as whether logs are recent, how they are sorted, or when this tool should be preferred. Without an output schema, it would benefit from a brief note on return format or filter behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (siteId, pageNo, pageSize) already have descriptions in the schema. The description does not add extra meaning beyond resourcing, but the schema fully documents the parameters. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('event logs for a DRM site'). It is specific enough to distinguish from sibling tools like ncloud_drm_get_policy_logs (policy logs vs event logs) and generic search_logs. The verb and resource are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention related tools like ncloud_drm_get_policy_logs or ncloud_search_logs, nor does it state any exclusions or prerequisites. The description is purely functional with no contextual usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_list_policiesARead-only
List DRM policies with pagination
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N, default 1) | |
| pageSize | No | Items per page (1~100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already establishes this as a safe read operation, lowering the bar for behavioral disclosure. The description adds that pagination is supported, a useful behavioral detail, but does not go further to describe response format, defaults, or other nuances, so it makes a modest contribution.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is a single, front-loaded sentence that conveys action, resource, and pagination without a single wasted word. It is appropriately sized for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward operation with two optional, fully documented parameters and a read-only annotation, the description is adequate. It clearly states the purpose and implies the return is a list, though it does not describe response details since no output schema is present. Slightly more detail about pagination behavior could improve it, but it is not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with pageNo and pageSize already well-described in the input schema. The description's mention of 'pagination' aligns with these parameters but adds no additional semantic meaning beyond what the schema provides, earning the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear action verb ('List') and specific resource ('DRM policies'), with a pagination qualifier that defines scope. This distinguishes it from sibling tools like get_policy (single fetch), create/update/delete_policy, and non-DRM policy listing tools via the 'DRM' prefix.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'List DRM policies' implies the primary use case (enumerating policies), and pagination suggests handling large result sets. However, it does not explicitly state alternatives (e.g., 'use get_policy for a single policy') or exclusions, so guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_list_sitesBRead-only
List One Click Multi DRM sites with pagination
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N, default 1) | |
| pageSize | No | Items per page (1~100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already tells the agent this is a safe, non-mutating read. The description adds only that results are paginated, which is useful but thin; it says nothing about default page behavior, ordering, or result shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the resource named first and the pagination qualifier second; nothing is wasted. It is under-elaborated rather than over-long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-param read tool with annotations covering safety and no output schema, the minimum is nearly met. However, the agent gets no indication of what a 'site' record contains or whether pagination defaults matter, so it is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so pageNo and pageSize are already fully documented in the schema with ranges and defaults. The description's 'with pagination' adds no syntax or constraint detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('One Click Multi DRM sites') plus the pagination scope. It is clearly distinguishable from ncloud_drm_get_site (singular fetch) by the plural 'sites' + list verb, though it never explicitly names or contrasts with that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance and no mention of alternatives such as ncloud_drm_get_site for a single site. The only implied usage is the 'list' verb itself, leaving the agent to infer when this beats the getter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_update_policyAIdempotent
Update a DRM policy. Disable any site using this policy before updating.
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | DRM policy ID to update | |
| persistent | Yes | Offline license retention | |
| policyName | Yes | Policy name (3-20 chars: letters, numbers, '_') | |
| rentalDuration | Yes | Seconds until first playback (0~2147483647) | |
| drmPolicyConfig | Yes | Per-DRM policy settings (widevine/playready/fairplay) | |
| playbackDuration | Yes | License validity in seconds from first playback (0~2147483647) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations (idempotentHint=true, destructiveHint=false) already establish that repeated updates are safe and non-destructive. The description adds valuable behavioral context not inferable from annotations: that sites actively using the policy must be disabled first, implying a risk of disruption or failure if this step is skipped. This is a meaningful disclosure beyond structured metadata, though it does not elaborate on failure modes or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The first sentence states the core action, and the second delivers the most critical usage warning. It is perfectly front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six required parameters, a complex nested policy configuration, and no output schema, the description is minimal. It covers the purpose and the single most important prerequisite, but does not mention what the operation returns, how to verify success, or whether the update replaces or merges existing policy settings. The rich schema mitigates but does not eliminate this gap, so this is a bare-minimum score rather than a serious deficiency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% description coverage for all six parameters, including nested drmPolicyConfig fields with detailed enums and constraints. The tool description adds no parameter-specific information, so the schema carries the full burden. Per the calibration baseline, when schema coverage is high, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource construction, 'Update a DRM policy,' which unambiguously identifies the tool's function. It clearly distinguishes itself from sibling tools like ncloud_drm_create_policy, ncloud_drm_delete_policy, and ncloud_drm_get_policy. The purpose is immediately understandable without needing to inspect the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit operational prerequisite: 'Disable any site using this policy before updating.' This tells the agent the necessary precondition and implies when caution is needed. However, it does not mention alternative tools (e.g., creating a new policy instead of updating an existing one) or explicitly state when not to use this tool, so it falls short of the highest bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_drm_update_siteBIdempotent
Update a DRM site (policy binding, name, or FairPlay certificate)
| Name | Required | Description | Default |
|---|---|---|---|
| siteId | Yes | Site ID to update | |
| policyId | Yes | DRM policy ID (0 = Basic default, or a custom policy ID) | |
| siteName | Yes | Site name (3-20 chars: letters, numbers, '_') | |
| fairPlayCert | No | FairPlay Streaming certificate details |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, establishing a safe, repeatable update. The description adds no behavioral context such as prerequisites (site must exist), effects on streaming, or validation of the FairPlay certificate. It does not contradict the annotations but provides little value beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, nine words long, and front-loaded with the action verb. Every word is meaningful, with no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too terse for a tool with a nested fairPlayCert object and three required fields. It fails to clarify that policyId and siteName are required even when only updating the certificate, which could mislead an agent. There is no output schema, and the description does not address return values or side effects, leaving important gaps despite schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters have descriptions in the schema (100% coverage), so the baseline is 3. The description's mention of 'policy binding, name, or FairPlay certificate' loosely maps to policyId, siteName, and fairPlayCert, adding some grouping but no additional semantics or clarity about required fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Update' and clearly identifies the resource as 'DRM site', further enumerating the updatable aspects (policy binding, name, or FairPlay certificate). This distinguishes it from sibling tools like ncloud_drm_create_site, ncloud_drm_get_site, and ncloud_drm_enable_site.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies an existing site via the 'Update' verb and lists what can be changed, but it lacks explicit when-to-use guidance or alternatives. It does not mention that policyId and siteName are required even when only updating the certificate, nor does it reference sibling tools to help an agent choose correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_add_certificate_to_slotB
Add a Global Edge Dedicated certificate (from Certificate Manager) to an existing certificate slot
| Name | Required | Description | Default |
|---|---|---|---|
| slotId | Yes | Certificate slot ID | |
| cmCertificateId | Yes | Certificate Manager certificate number (Global Edge Dedicated type) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false provided, the description does add some context: the certificate must be of Global Edge Dedicated type and sourced from Certificate Manager, and the target must be an existing slot. However, it doesn't explain whether adding a certificate replaces or coexists with existing ones in the slot, what permissions are required, or what the result is – notable gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that front-loads the action and the certificate type. No filler, though it is quite terse given it omits any behavioral detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter, no-output-schema tool it covers the essentials: what is added, from where, and to what. What is missing is the effect on the slot's existing contents and any precondition, which an agent would likely need before invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both slotId and cmCertificateId are already documented. The description reinforces which slot (existing) and which certificate type (Global Edge Dedicated from Certificate Manager) but adds no format or syntax detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Add') and resource ('a Global Edge Dedicated certificate ... to an existing certificate slot'), and constrains the certificate type and origin (Certificate Manager). This cleanly distinguishes it from siblings like ncloud_edge_remove_certificates_from_slot and ncloud_edge_delete_certificate, though it doesn't name them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no prerequisites, and no mention of alternatives such as ncloud_edge_provision_certificate or how this differs from ncloud_edge_update_certificate_tls. The only implicit usage cue is the tool name itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_check_profile_nameBRead-only
Check whether a Global Edge profile name is available (duplicate check)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Profile name to check (3-35 chars: letters, digits, '-', '_') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read with no side effects. The description adds the 'duplicate check' framing, which clarifies intent, but does not disclose the return semantics (e.g. boolean availability vs. error on conflict) or any rate/auth constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the core purpose front-loaded and nothing wasted. Appropriately sized for a one-parameter validation tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a trivial read-only check with a fully specified param and a readOnlyHint annotation, the description is adequate. However, with no output schema, it leaves the result semantics (what 'available' returns, and how a conflict surfaces) unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single 'name' parameter is fully documented with length (3-35) and character constraints. The description adds no syntax or meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear specific verb ('Check') and resource ('Global Edge profile name') plus the intent ('available'). An agent can distinguish it from sibling read tools like ncloud_edge_list_profiles, though it does not explicitly name a sibling to avoid.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or prerequisites. The parenthetical 'duplicate check' hints it precedes creation (ncloud_edge_create_profile), but the description never states that relationship or when to call this versus just attempting creation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_create_edgeA
Create a new Global Edge CDN edge with origin, caching, and distribution settings. Sub-objects not exposed as parameters use sensible defaults (no edge logging, no edge auth, no caching rules, no header policies, WHITELIST access control with empty lists). For full control use ncloud_edge_edit_edge after creation. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| cors | No | Add CORS headers (managed rule) | |
| hsts | No | Enable HSTS | |
| http2 | No | Enable HTTP/2 | |
| dryRun | No | If true, returns a preview without actually creating the edge | |
| cacheAge | No | Cache max-age (1 second to 365 days) | |
| edgeName | Yes | Edge name (3-35 chars: letters, digits, '-', '_') | |
| profileId | Yes | Profile ID to create the edge under | |
| originPath | No | Origin path appended to origin requests, e.g. /static/ | |
| originPort | No | Origin port number | |
| originType | Yes | Origin server type | |
| regionType | Yes | Service region: KOREA, JAPAN, or GLOBAL | |
| negativeTtl | No | Cache origin error responses (negative TTL) | |
| cacheAgeType | No | Cache max-age unit | DAYS |
| originRegion | No | Origin region (required for OBJECT_STORAGE or LOAD_BALANCER) | |
| protocolType | Yes | Service protocol: HTTPS or ALL (HTTP+HTTPS) | |
| httpCompression | No | Enable Gzip/Brotli compression | |
| cacheKeyHostname | No | Cache key hostname type | INCOMING_HOST_HEADER |
| customHostHeader | No | Host header value (required when forwardHostHeaderType is CUSTOM) | |
| originBucketName | No | Origin bucket name (required for OBJECT_STORAGE) | |
| removeVaryHeader | No | Remove Vary headers (other than Accept-Encoding) before caching | |
| accessControlType | No | Access control policy type | WHITELIST |
| certificateSlotId | No | Certificate slot ID (required for CUSTOM_DOMAIN served over HTTPS; see ncloud_edge_list_certificates) | |
| edgeLoggingRegion | No | Region of the edge-logging bucket (default KR) | |
| serviceDomainName | No | Domain name (required for NCP_DOMAIN_CUSTOM or CUSTOM_DOMAIN) | |
| serviceDomainType | Yes | Service domain type | |
| originProtocolType | No | Origin protocol type | HTTP |
| trueClientIpHeader | No | Forward the client IP header to the origin | |
| cacheRevalidateType | No | Stale object revalidation type | IF_POSSIBLE |
| cacheKeyQueryStrings | No | Query strings allowed in the cache key (required for ALLOW_SPECIFIC_STRING) | |
| originCustomLocation | No | Origin domain name (required for LOAD_BALANCER, API_GATEWAY, or CUSTOM) | |
| edgeLoggingBucketName | No | Enable edge logging into this Object Storage bucket (omit to disable logging) | |
| forwardHostHeaderType | No | Host header forwarding type | INCOMING_HOST_HEADER |
| largeFileOptimization | No | Enable large file optimization | |
| accessControlIpPolicies | No | Client IPs or CIDR blocks for access control | |
| cacheRuleDefinitionType | No | Default caching option | CACHING |
| edgeLoggingBucketPrefix | No | Log path prefix inside the logging bucket | |
| accessControlGeoPolicies | No | ISO 3166-1 alpha-2 country codes for access control | |
| accessControlRefererPolicies | No | Referer domains for access control | |
| cacheKeyIgnoreQueryStringType | No | How query strings are used in the cache key | ALL_ALLOWED |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries most of the burden and does well: it enumerates exactly which sub-objects get defaults (no edge logging/auth, no caching rules, no header policies, WHITELIST access control with empty lists) and offers a non-mutating dryRun preview. It doesn't state reversibility or permission requirements, but the defaults disclosure is genuinely valuable context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the purpose, then defaults, then the alternative route and preview. No wasted text, though the defaults clause is a dense run-on list.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 39-parameter creation tool with no output schema, the description covers the non-obvious behavior (defaulted sub-objects, preview mode, edit-after-create path) that the schema cannot express. It omits prerequisites and what the create response contains, but is otherwise complete enough to call correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the 39 parameters are already fully documented, including enums, defaults, and conditionally-required fields. The description adds only category-level framing and repeats the schema-documented dryRun flag, so baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Create), resource (Global Edge CDN edge), and the dimensions it configures (origin, caching, distribution). It also names the sibling ncloud_edge_edit_edge, so an agent can distinguish it from other edge tools without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear routing guidance: use this for initial creation, then ncloud_edge_edit_edge for full control, and dryRun=true to preview first. That covers when to use it and a preview path, though it stops short of stating prerequisites such as needing an existing profileId.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_create_profileC
Create a new Global Edge CDN profile
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name for the new profile (3-35 chars: letters, digits, '-', '_') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry destructiveHint=false, which is consistent with 'Create', so no contradiction. Beyond that the description adds nothing: it does not say whether the profile name must be unique, whether creation is idempotent, whether a domain must be attached afterward, or what happens on failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with zero waste and the verb leading. It is arguably under-specified rather than verbose, which is the only thing keeping it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter create tool with no output schema, the essentials are present, but a creation tool with an enforced unique name would benefit from noting the uniqueness/validation requirement or pointing at ncloud_edge_check_profile_name. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'name' parameter already documents its length and character constraints, so the schema does the heavy lifting. The description contributes no additional parameter meaning; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Create') and resource ('Global Edge CDN profile'), so the agent knows exactly what the tool produces. It does not differentiate from siblings like ncloud_edge_check_profile_name or ncloud_edge_rename_profile, which would be needed for a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of the closely related ncloud_edge_check_profile_name (name availability) or ncloud_edge_list_profiles siblings. The agent must infer usage entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_delete_certificateADestructiveIdempotent
⚠️ Destructive: Delete a Global Edge certificate slot. The slot must not be in use by any edge. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| slotId | Yes | Certificate slot ID to delete | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, so the safety profile is covered. The description adds value beyond them by disclosing the in-use precondition that causes failure and the confirm gate required to execute, which an agent needs to avoid a failed or unintended destructive call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: the destructive warning is front-loaded, followed by the precondition and the execution gate. No filler, and the most critical information comes first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive single-resource tool with full schema coverage and annotations, the description covers the precondition and confirmation requirement, which is what an agent needs to call it safely. It could add what happens to assets tied to the slot, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters are documented in the schema, so the schema does the heavy lifting. The description only echoes the confirm=true requirement and does not add format or semantic detail beyond that, matching the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Delete) and resource (Global Edge certificate slot), which reads clearly against generic certificate deletion siblings like ncloud_delete_certificate and ncloud_cm2_revoke_certificate. It does not explicitly distinguish itself from ncloud_edge_remove_certificates_from_slot, which also operates on slots, so sibling differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a concrete precondition -- the slot must not be in use by any edge -- and the confirm=true gate, which tells the agent when this call will succeed. It stops short of naming alternatives (e.g., removing certificates from the slot instead of deleting it) or explicitly stating when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_delete_edgeADestructiveIdempotent
⚠️ Destructive: Permanently delete one or more Global Edge CDN edges. Edges must be in Stopped status. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| edgeIds | Yes | Edge IDs to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds useful behavioral context beyond those hints: permanence, the stopped-status precondition, and the explicit confirm gate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded warning sentence with critical constraints and no filler. The warning emoji and colon aid quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive two-parameter mutation with no output schema, the description supplies the essential precondition and confirmation gate. The annotations cover the safety profile, so nothing critical is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already documents both confirm and edgeIds. The description repeats the confirm requirement and implies multiple IDs via 'one or more', adding little beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the specific verb 'delete' and resource 'Global Edge CDN edges', with scope 'one or more' and permanence. It clearly distinguishes itself from sibling mutation tools like ncloud_edge_stop_edge, ncloud_edge_edit_edge, and ncloud_edge_purge.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a clear prerequisite ('Edges must be in Stopped status') and an execution gate ('Set confirm=true to execute'). It does not explicitly name alternatives or exclusions such as using stop_edge first, so usage context is strong but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_delete_profileADestructiveIdempotent
⚠️ Destructive: Permanently delete a Global Edge CDN profile. All edges under this profile must be deleted first. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| profileId | Yes | Profile ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds value by explicitly stating the destructive nature with a warning symbol, the precondition about edges, and the requirement for a confirm flag. This additional context shows the tool's behavior beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no wasted words. It front-loads the destructive nature with a warning emoji, then states the action and prerequisites. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 2 parameters (both documented), no output schema, and annotations present, the description is complete. It covers the purpose, prerequisites, and execution requirement (confirm). No additional information seems necessary for the agent to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents both parameters (profileId and confirm). The description mentions the confirm parameter requirement, but this largely repeats the schema's description. Baseline 3 is appropriate because the description adds minimal additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: permanently delete a Global Edge CDN profile. It specifies the resource (profile) and action (delete), and distinguishes from sibling tools like ncloud_edge_delete_edge which are for edges, not profiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite: all edges under the profile must be deleted first. It also instructs the agent to set confirm=true to execute. However, it does not explicitly state when not to use this tool or mention alternatives, which would make it a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_edit_edgeA
Edit an existing Global Edge CDN edge configuration. Provide the full edge configuration as a JSON object (same shape as the create body: profileId, edgeName, distributionConfig, originalCopyConfig, cachingConfig, managedRule, headerPolicies, optimizationConfig, accessControl). regionType and serviceDomain cannot change — pass their current values.
| Name | Required | Description | Default |
|---|---|---|---|
| edgeId | Yes | Edge ID to edit | |
| configuration | Yes | Full edge configuration as JSON string (get current config from ncloud_edge_get_edge, modify, and pass here) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It usefully discloses full-replacement semantics (not a partial patch) and two immutable fields (regionType, serviceDomain must retain current values). It omits permission/authorization requirements, side effects on live traffic, and reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with the core operation front-loaded and the immutable-field caveat placed last where it is most needed. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter mutation with no output schema and no annotations, the description covers the essential call-time facts: full-body replacement and immutability of two fields. It is adequate, though it could say more about authorization or response behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes further by enumerating the expected fields of the configuration JSON (profileId, edgeName, distributionConfig, etc.) beyond the schema's bare 'JSON string', and flags which fields are immutable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Edit an existing Global Edge CDN edge configuration.' An agent can immediately tell this is a mutation of an existing edge rather than create/delete/get. It does not name a specific sibling (e.g., ncloud_edge_create_edge) to differentiate further.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage is present: it tells you to supply the full configuration and to pass current values for regionType/serviceDomain, which signals this is a full-replacement edit. However, it gives no explicit when-to-use vs. create/delete or prerequisites, and the 'get current config from ncloud_edge_get_edge' guidance lives only in the schema description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_get_certificateBRead-only
Get details of a Global Edge certificate slot (certificates provisioned in the slot)
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | Items per page (default 15) | |
| pageNo | No | Page number (default 1) | |
| slotId | Yes | Certificate slot ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already tells the agent this is a safe read. The description adds only the conceptual clarification of what a 'slot' contains; it does not disclose pagination behavior despite offset/pageNo parameters, nor any auth or scoping requirements. With annotations covering safety, this is a minimal but acceptable addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words, stating the verb and resource immediately. The parenthetical adds specificity compactly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with a fully documented schema and a readOnlyHint, this is nearly sufficient. However, with no output schema the description does not hint at the return shape or clarify the slot-vs-certificate relationship, leaving a small gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so slotId, offset, and pageNo are all documented in the schema (including defaults). The description adds no parameter-level meaning, which is the correct baseline when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (Global Edge certificate slot) and clarifies via the parenthetical that the slot holds provisioned certificates. However, the name says 'get_certificate' while the description describes a slot, a minor mismatch, and there is no differentiation from siblings like ncloud_edge_list_certificates or ncloud_edge_add_certificate_to_slot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no when-to-use guidance, no prerequisites, and no alternatives among the many edge certificate siblings (list_certificates, provision_certificate, get_purge_request, etc.). An agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_get_edgeARead-only
Get detailed configuration of a specific Global Edge CDN edge including origin, caching, and access control settings
| Name | Required | Description | Default |
|---|---|---|---|
| edgeId | Yes | Edge ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true is consistent with 'Get'. The description adds that it includes origin, caching, and access control settings, but does not disclose other behavioral aspects like required permissions, response structure, or whether it returns a snapshot of current config.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that concisely conveys the purpose and key details without any wasted words. It is front-loaded with the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one parameter and no output schema, the description covers the main purpose and key config aspects. However, it could be more complete by noting that it returns the full configuration details or mentioning the absence of output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'edgeId' described as 'Edge ID to query'. The description does not add extra meaning beyond the schema, so it meets the baseline but no more.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it 'Get detailed configuration of a specific Global Edge CDN edge' with specific components (origin, caching, access control). It distinguishes from sibling tools like ncloud_edge_list_edges (list) and ncloud_edge_get_edge_status (status) by focusing on configuration details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. While the purpose implies it's for retrieving detailed config of a single edge, it doesn't mention when to prefer ncloud_edge_get_edge_status or ncloud_edge_get_edge_stats, nor does it caution against misuse.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_get_edge_statsARead-only
Get traffic statistics summary for a Global Edge CDN edge within a time range (UTC, up to 730 days back)
| Name | Required | Description | Default |
|---|---|---|---|
| dateTo | Yes | End date-time (ISO 8601 UTC, e.g. 2025-07-17T08:00:00Z) | |
| edgeId | Yes | Edge ID to get statistics for | |
| dateFrom | Yes | Start date-time (ISO 8601 UTC, e.g. 2025-07-17T07:00:00Z) | |
| profileId | Yes | Profile ID that the edge belongs to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, so the safety profile is covered. The description adds a genuine behavioral constraint beyond the annotations: the time range must be UTC and cannot exceed 730 days back. That retention window is a real operational limit an agent needs and cannot infer from the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence with zero waste, and the resource and scope are front-loaded before the parenthetical constraint. Appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only stats tool with complete parameter documentation and a readOnly annotation, the description covers the essentials. However, with no output schema it never hints at what the statistics summary contains, leaving the agent without any expectation of the return payload.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with dateFrom/dateTo/edgeId/profileId all documented inline, so the baseline is 3. The description adds only the 730-day/UTC constraint on the date range, which is meaningful but not parameter-syntax detail beyond what the schema supplies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get), resource (traffic statistics summary), and scope (Global Edge CDN edge within a time range). This clearly distinguishes it from the sibling ncloud_edge_get_edge_status, which retrieves operational status rather than traffic metrics, though it does not name that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when the tool is used (retrieving traffic stats for an edge over a time range) but gives no explicit when-to-use vs. when-not-to-use guidance and names no alternative sibling. Nothing routes the agent between this and adjacent edge tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_get_edge_statusBRead-only
Get the current operational status of a Global Edge CDN edge
| Name | Required | Description | Default |
|---|---|---|---|
| edgeId | Yes | Edge ID to check status for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe read-only nature is covered. The description adds the nuance that this returns 'current operational status' (live state rather than configuration), but it does not describe return format, status values, or any auth/rate-limit context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. It states the action and resource immediately without padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter status getter with no output schema, the description gives the core purpose. However, it omits any usage context and does not explain what the 'operational status' response contains, leaving gaps that could affect correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the single 'edgeId' parameter is fully documented in the schema. The description adds no parameter syntax or format details beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('current operational status of a Global Edge CDN edge'), making the function clear. It does not explicitly distinguish itself from close siblings like ncloud_edge_get_edge or ncloud_edge_get_edge_stats, leaving differentiation to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as ncloud_edge_get_edge, ncloud_edge_get_edge_stats, or ncloud_edge_list_edges. Usage is only implied by the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_get_profileARead-only
Get a specific Global Edge profile by ID (the API has no single-profile endpoint; this filters the profile list)
| Name | Required | Description | Default |
|---|---|---|---|
| profileId | Yes | Profile ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true; the description contributes real behavioral context by revealing that no single-profile endpoint exists and the result is derived by filtering the list, which affects expected latency and completeness. It does not describe behavior when the ID is absent, so it falls short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core action first and the mechanism as a brief parenthetical. No filler, no restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with annotations covering the safety profile, the description supplies everything needed to invoke it correctly, including the list-filtering caveat. It stops short of describing the returned profile shape, though with no output schema a brief note on the response would have made it fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With one parameter and 100% schema description coverage, the schema already documents profileId. The description confirms the ID-based lookup but adds no format, range, or source-of-ID guidance, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get a specific Global Edge profile') and pins the selector ('by ID'), which cleanly separates it from the sibling list_profiles tool. The parenthetical even explains the underlying mechanism, so the agent knows exactly what this returns relative to list_profiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear this is the way to obtain one profile when you already hold an ID, and the note that it filters the profile list implicitly routes agents to ncloud_edge_list_profiles for bulk retrieval. It never explicitly says when NOT to use it (e.g., to enumerate profiles), so a 4 rather than a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_get_purge_requestBRead-only
Get the status/details of a Global Edge purge request
| Name | Required | Description | Default |
|---|---|---|---|
| purgeRequestId | Yes | Purge request ID returned by ncloud_edge_purge |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already declares this a safe read, so the burden is lighter. The description confirms it retrieves 'status/details' but adds nothing about polling cadence, eventual-consistency, retention, or what states a purge request can be in, which would be genuinely useful here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no waste. It is appropriately sized, though it is arguably a touch too terse for a tool whose only purpose is status inspection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with no output schema, the description is minimally adequate. It signals that status and details are returned, but does not describe the shape of the response, which matters more given there is no output schema to fall back on.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter is already documented as the 'Purge request ID returned by ncloud_edge_purge'. The description adds no further parameter semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a clear verb+resource ('Get the status/details of a Global Edge purge request'), distinguishing this read operation from the write sibling ncloud_edge_purge. It is easy to tell what the tool does, but it never explicitly names the companion purge tool or clarifies the relationship between them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is for polling the outcome of a purge, and the schema's param note links the ID back to ncloud_edge_purge. However, the description itself offers no explicit when-to-use, when-not, or alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_list_certificatesBRead-only
List provisioned SSL/TLS certificate slots for Global Edge CDN
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | Items per page (default 15) | |
| pageNo | No | Page number (default 1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds the useful scope that these are 'certificate slots' provisioned for Global Edge CDN, but says nothing about pagination behavior, ordering, or any constraints beyond what the offset/pageNo parameters imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names verb, resource, and scope with zero filler. Nothing is wasted and the key information leads.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with full schema coverage and a safety annotation, the description is nearly complete. It could clarify what a 'slot' is relative to the sibling certificate tools, but an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (offset, pageNo) are documented in the schema as pagination controls. The description adds no syntax or format detail beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('provisioned SSL/TLS certificate slots') scoped to 'Global Edge CDN'. This distinguishes it reasonably from generic siblings like ncloud_list_certificates or ncloud_cm2_list_certificates, though the differentiation is only implicit in the scoping phrase.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives (e.g., ncloud_edge_get_certificate for a single slot), and no stated prerequisites. The listing intent is inferable from the name, but nothing routes the agent among the many certificate-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_list_edgesBRead-only
List all edges under a specific Global Edge profile
| Name | Required | Description | Default |
|---|---|---|---|
| profileId | Yes | Profile ID to list edges for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe, non-mutating read, so the description is not carrying the safety burden. It confirms the per-profile scoping but says nothing about pagination, result size, or what an empty/unknown profile returns. With annotations covering the safety profile, this is the acceptable minimum for a simple list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence with no filler, verb and resource first and scope trailing. Efficient, though extremely thin for a tool with any behavioral nuance to convey.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A one-parameter read-only list operation with full schema coverage and no output schema needs little prose; the description plus annotations are sufficient to call it correctly. Only pagination/return-shape context is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single profileId parameter is already documented as 'Profile ID to list edges for'. The description restates the same scope without adding format or sourcing detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (edges) plus its scoping constraint ('under a specific Global Edge profile'). It is distinguishable from ncloud_edge_get_edge and ncloud_edge_create_edge, but it never mentions the sibling ncloud_edge_list_profiles, which covers a different resource, so differentiation relies on the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no named alternatives. An agent must infer from the name that this is the enumeration counterpart to ncloud_edge_get_edge. Pure 'what', zero 'when'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_list_profilesBRead-only
List all Global Edge CDN profiles
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation. The description adds no further behavioral context such as pagination behavior, result ordering, or any limits, so it contributes almost nothing beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It is appropriately sized for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, read-only list tool with no output schema, the description is nearly complete. It could mention pagination or result scope, but the core information an agent needs to invoke it is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema requires no parameter documentation. The description does not need to explain inputs, and the baseline score for a no-parameter tool is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ("List") and resource ("Global Edge CDN profiles"), distinguishing it from sibling operations like get_profile, create_profile, or delete_profile. It does not explicitly differentiate from other list tools such as list_edges or list_certificates, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like ncloud_edge_get_profile or other list operations. The phrase "List all" implies a basic use case, but no context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_provision_certificateC
Provision certificates from Certificate Manager into a new Global Edge certificate slot for custom domains
| Name | Required | Description | Default |
|---|---|---|---|
| tlsVersion | Yes | Supported TLS versions (TLS_MIN_VERSION_1_2 recommended) | |
| cipherProfile | Yes | Cipher profile (STRICT not allowed with TLS_ALL_VERSIONS) | |
| serviceRegion | Yes | Service region: KR_JP (one KR/JP certificate) or KR_JP_GLOBAL (one KR/JP + one global certificate) | |
| cmCertificateIds | Yes | Certificate Manager certificate numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It reveals that a new slot is created, but says nothing about side effects, idempotency, permission requirements, or what happens if a slot already exists – significant gaps for a provisioning/mutation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the key action and destination front-loaded. No wasted words, though it is arguably under-specified rather than optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Parameters are well covered by the schema and there is no output schema to explain, but for a provisioning tool with no annotations the description lacks behavioral detail (preconditions, side effects, post-state), leaving a real gap relative to the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with enum values fully documented, so the schema already explains the parameters. The description only adds the general context ('from Certificate Manager', 'for custom domains') without parameter-specific detail, warranting the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Provision) and resource (certificates from Certificate Manager into a new Global Edge certificate slot for custom domains). It distinguishes the object and scope clearly, though it doesn't explicitly name the sibling alternatives like ncloud_edge_add_certificate_to_slot or ncloud_cm2_request_global_edge_certificate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus related siblings such as ncloud_edge_add_certificate_to_slot (adding to an existing slot) or ncloud_edge_update_certificate_tls. The 'new slot' phrasing implies a precondition but never states it or the alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_purgeADestructiveIdempotent
Run a cache purge (invalidation) on a Global Edge CDN edge. Supports purging all content, by directory, pattern, or specific URLs. Returns a purge request ID (check with ncloud_edge_get_purge_request).
| Name | Required | Description | Default |
|---|---|---|---|
| edgeId | Yes | Edge ID to purge cache for | |
| purgeType | Yes | Purge type: ALL (purge everything), DIRECTORY (by directory path), PATTERN (directory + extension), URL (specific files) | |
| purgeTarget | No | Purge target list (omit for ALL type). DIRECTORY: /path/*, PATTERN: /path/*.ext, URL: /path/file.ext |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, and the description is consistent with that, spelling out what can be invalidated (all content, directory, pattern, URLs). It goes beyond the annotations by documenting the return value (a purge request ID) and the follow-up lookup, though it omits auth/permission or rate-limit context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tightly packed sentences, front-loaded with the action, then scope, then return value. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly discloses the return value (purge request ID) and how to verify it, and the schema fully covers the parameters. It would be fully complete if it mentioned any preconditions such as a required edge state or permissions, but the essentials are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents edgeId, purgeType, and purgeTarget (including the enum values). The description's parallel list of purge modes adds only a loose restatement, not new syntax or constraints. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Run a cache purge (invalidation) on a Global Edge CDN edge') and enumerates the supported purge scopes. It also names the companion status tool, so an agent can distinguish it from ncloud_edge_get_purge_request without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear context for when to use it (purging CDN edge cache) and routes the agent to ncloud_edge_get_purge_request to check the result. It does not, however, state any when-not conditions or alternatives to purging, so it stops short of full usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_remove_certificates_from_slotADestructiveIdempotent
⚠️ Destructive: Remove specific certificates (expired or superseded Global Edge Dedicated certificates) from a certificate slot. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| slotId | Yes | Certificate slot ID | |
| confirm | No | Must be true to actually execute the destructive operation | |
| certificateItemIds | Yes | Certificate numbers to remove from the slot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered. The description adds real value beyond annotations by disclosing the confirm=true execution gate and the type of certificates involved, though it does not describe reversibility or post-removal state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with the destructive warning and confirm requirement front-loaded; nothing is wasted and the critical safety cue appears first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, 3-parameter tool with no output schema, the description covers the essential facts: what is destroyed, the confirm gate, and which certificates qualify. Minor gaps remain on reversibility and the effect on the slot, but the core invocation context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented, giving a baseline of 3. The description reinforces the confirm semantics and the target certificates but adds no syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: removing specific certificates from a certificate slot, and it qualifies the target scope (expired or superseded Global Edge Dedicated certificates). However, it doesn't differentiate from the closely related sibling ncloud_edge_delete_certificate, which an agent might confuse with removing a certificate from a slot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the qualification of which certificates to remove (expired/superseded) and the confirm gate, but there is no explicit when-to-use framing or comparison against ncloud_edge_delete_certificate or ncloud_edge_update_certificate_tls. The agent must infer the scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_rename_profileC
Rename an existing Global Edge CDN profile
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | New profile name (3-35 chars: letters, digits, '-', '_') | |
| profileId | Yes | Profile ID to rename |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it only restates the mutation. It does not disclose permission requirements, whether the old name is freed, what happens if the name collides (a check-profile-name sibling exists), or error behavior. The word 'existing' is the only added signal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the verb and resource up front and no filler. It is efficient, though correspondingly sparse on everything else.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation with full schema coverage and no output schema, the description is minimally adequate. It omits uniqueness/validation behavior and any interaction with the sibling name-check tool, which an agent would need for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both profileId and name (including the 3-35 char format restriction) are fully documented in the schema. The description adds no format or constraint detail beyond it, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (rename) and resource (Global Edge CDN profile), clearly distinguishing it from sibling read tools like ncloud_edge_get_profile and ncloud_edge_list_profiles. It does not explicitly name a sibling, but the verb+resource pair is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus ncloud_edge_create_profile, ncloud_edge_get_profile, or ncloud_edge_check_profile_name. An agent must infer that renaming implies the profile already exists, but nothing tells it how to resolve the profile or whether to pre-check the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_start_edgeAIdempotent
Start (activate) stopped Global Edge CDN edges to resume content delivery
| Name | Required | Description | Default |
|---|---|---|---|
| edgeIds | Yes | Edge IDs to activate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is largely covered. The description adds one useful behavioral fact beyond that — it operates on stopped edges and resumes delivery — but says nothing about whether the call is synchronous, what permissions are required, or what error occurs when edges are not in the stopped state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler: action, target, precondition, and effect are all packed in without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter mutation with annotations covering idempotency and destructiveness and no output schema, the description covers the essentials. It would be fully complete with a note on the required edge state or the synchronous/asynchronous nature of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and there is a single parameter, so the schema already carries the param documentation; baseline 3 applies. The plural 'edges' and the schema's array with minItems 1 are consistent, but the description adds no format, ID-source, or batching guidance beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb pair (start/activate), the exact resource (Global Edge CDN edges), and the qualifying state (stopped), so it is immediately distinguishable from the sibling ncloud_edge_stop_edge. An agent can tell what the tool does without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the word 'stopped' signals that this applies to edges currently in a stopped state and that the outcome is resumed content delivery. There is no explicit when-to-use statement, no mention of what happens if an already-running edge is passed, and no reference to alternatives such as stop_edge or get_edge_status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_stop_edgeBIdempotent
Stop running Global Edge CDN edges. Stopped edges do not serve content.
| Name | Required | Description | Default |
|---|---|---|---|
| edgeIds | Yes | Edge IDs to stop |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds a useful consequence — stopped edges do not serve content — but does not explain reversibility, required permissions, or operational impact beyond that single line.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the action and immediately followed by the effect. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter stop operation with annotations covering idempotency and non-destructiveness, the description is nearly complete. It omits usage context relative to sibling edge operations, but the core action and consequence are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is fully documented as 'Edge IDs to stop.' The description adds no syntax, format, or ID-type guidance beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb, 'Stop,' and a specific resource, 'Global Edge CDN edges,' so the agent can tell it apart from start/delete edge siblings. It does not explicitly name an alternative or contrast with start_edge, but the purpose itself is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, prerequisites, or contrast with alternatives such as ncloud_edge_start_edge or ncloud_edge_delete_edge. The agent must infer usage entirely from the verb and resource.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_edge_update_certificate_tlsCIdempotent
Update the TLS version and cipher profile of a Global Edge certificate slot
| Name | Required | Description | Default |
|---|---|---|---|
| slotId | Yes | Certificate slot ID | |
| tlsVersion | Yes | Supported TLS versions | |
| cipherProfile | Yes | Cipher profile (STRICT not allowed with TLS_ALL_VERSIONS) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds no additional behavioral context such as whether the change takes effect immediately, whether it affects live traffic, or the interaction constraint between the two profile/version fields beyond what the schema already documents.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no waste. It is appropriately sized for a simple three-parameter update, though it could have used a second short clause to add the constraint or sibling routing at negligible cost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation with full schema coverage and annotations covering idempotency/safety, and no output schema, the description is minimally adequate. It misses the cross-field constraint (STRICT vs TLS_ALL_VERSIONS) already in the schema and does not mention it, but the core call is understandable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with two enum parameters fully documented, so the description need not compensate. It names the two mutable fields, which aligns with the schema but adds no format or constraint detail beyond it. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Update') and resource ('TLS version and cipher profile of a Global Edge certificate slot'), which is clear and actionable. However, it does not distinguish itself from close siblings like ncloud_edge_add_certificate_to_slot or ncloud_edge_remove_certificates_from_slot, leaving the agent to infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no indication of when to use this tool versus slot-mutating siblings, nor any prerequisites (e.g., slot must already exist and contain a certificate). The agent gets no routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_enable_flow_logAIdempotent
Enable FlowLog on a network interface. Captures network traffic logs and stores them in the specified bucket.
| Name | Required | Description | Default |
|---|---|---|---|
| flowLogBucketName | Yes | Object Storage bucket name to store FlowLog data | |
| networkInterfaceNo | Yes | Network interface number to enable FlowLog on | |
| flowLogStatusTypeCode | No | FlowLog status type code (ACCEPT, REJECT, ALL) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the operation as idempotent and non-destructive. The description adds context by explaining the effect (captures and stores logs) but does not disclose prerequisites (e.g., bucket must exist) or behavior for repeated calls beyond what the idempotentHint implies. It is not misleading but adds limited behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, no redundancy. It front-loads the primary action and directly states the purpose and outcome, with zero filler words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple configuration tool with full schema coverage and good annotations, the description provides sufficient context: it explains what the tool does, what it affects, and where logs are stored. It does not mention prerequisites or optional parameter behavior, but these are covered by the schema and the simplicity of the operation makes the description reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are documented with clear descriptions. The description merely restates 'specified bucket' and 'network interface' without adding new meaning or clarifying the optional flowLogStatusTypeCode parameter or its default behavior. This aligns with the baseline of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Enable FlowLog') and the target resource ('network interface'), and it explains the effect (captures network traffic logs and stores them in a bucket). This distinguishes it from sibling tools like ncloud_disable_flow_log and ncloud_get_flow_log_config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (to enable FlowLog) but does not explicitly explain when not to use it or mention alternatives such as disable_flow_log or get_flow_log_config. No clear exclusions or alternative guidance are provided, so the agent must infer usage from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_execute_policyA
Manually execute a scaling policy for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| policyName | Yes | Scaling policy name to execute | |
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention side effects (e.g., immediate capacity changes), prerequisites (e.g., that the policy must exist), idempotency, or whether the operation is asynchronous. This is a significant gap for a state-changing action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately conveys the action and target. No filler or redundant information, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple tool with two fully described parameters, and the description adequately states what it does. However, without an output schema or annotations, it lacks details about the expected result, potential errors, or post-execution behavior, leaving some context gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides descriptions for both parameters (policyName and autoScalingGroupNo), covering 100% of the schema. The tool description adds no additional parameter-level meaning beyond what the schema offers, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'execute' and the resource 'scaling policy' for an Auto Scaling Group, distinguishing it from sibling tools like list, put, and delete scaling policies. The inclusion of 'manually' further clarifies the action's nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Manually execute' gives clear context for when this tool is appropriate – triggering a policy by hand rather than relying on automatic scaling. However, it does not explicitly mention alternatives or when not to use it, leaving some room for interpretation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_cache_backupARead-only
Export one Cloud Cache backup file to an Object Storage bucket. Get fileName from ncloud_list_cache_backup_details (SYSTEM) or ncloud_list_cache_manual_backup_details (MANUAL), and the bucket from ncloud_list_cache_buckets.
| Name | Required | Description | Default |
|---|---|---|---|
| fileName | Yes | Backup file name to export (e.g. '20210315') | |
| bucketName | Yes | Destination Object Storage bucket name | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| backupTypeMode | Yes | Which backup family the file belongs to: SYSTEM | MANUAL | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotation Contradiction: annotations declare readOnlyHint=true, but the description describes exporting/copying a backup file into an Object Storage bucket, which is an externally visible write operation. No context is given about bucket write permissions, overwrite behavior, or whether the export runs asynchronously, making the safety profile actively misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the action is stated first, then the non-obvious parameter dependencies are given. Every sentence adds useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description makes invocation feasible by covering the action and the sources for the two non-obvious parameters. However, it omits behavioral context such as side effects, required permissions, and whether the operation is synchronous, and the readOnlyHint contradiction further weakens the completeness of the operational picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already documented. The description adds meaningful sourcing semantics by linking backupTypeMode to specific list APIs and directing the agent to ncloud_list_cache_buckets for the bucket name, which helps the agent populate the required fields correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a concrete action (export one Cloud Cache backup file) with a clear source resource and destination (Object Storage bucket). This distinguishes it from the many sibling backup-export tools for MySQL, PostgreSQL, MongoDB, and MSSQL, as well as from list-only cache tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs the agent where to obtain fileName (ncloud_list_cache_backup_details for SYSTEM, ncloud_list_cache_manual_backup_details for MANUAL) and bucketName (ncloud_list_cache_buckets). It does not list exclusion conditions, but the main ambiguity is value sourcing, which is resolved clearly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_logsCRead-only
Export searched logs to an Object Storage bucket in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | No | Search keyword | |
| logTypes | No | Log type filter (e.g. SYSLOG, security_log, tomcat) | |
| regionNo | No | Region number | |
| bucketname | Yes | Object Storage bucket name (required) | |
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region | |
| timestampTo | No | End time (default now) | |
| timestampFrom | No | Start time (default now-1h) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states logs are exported 'to an Object Storage bucket', which creates new objects and therefore mutates the environment, yet annotations declare readOnlyHint=true. This is a direct contradiction of the declared safety profile, and the description adds no other behavioral context (overwrite behavior, permissions, output naming).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with no filler, and the action-to-destination mapping is front-loaded. It is appropriately sized, though it is arguably too terse given the operation's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential what and where, and the schema fully documents parameters, with no output schema to explain. However, for an export operation it omits prerequisite steps, destination/overwrite semantics, and any hint of async or history behavior that ncloud_get_log_export_history implies, leaving meaningful gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all seven parameters (keyword, logTypes, regionCode, timestamps, bucketname, regionNo) are already documented in the schema. The description adds no filter syntax, timestamp format, or bucket-location detail beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Export'), a specific resource ('searched logs'), and a destination ('Object Storage bucket in Cloud Log Analytics'). An agent can distinguish it from siblings like ncloud_search_logs or ncloud_get_log_export_history, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives, no mention that a prior search is required (the phrase 'searched logs' only hints at it), and no reference to related tools such as ncloud_search_logs or ncloud_list_export_buckets. The agent must infer the workflow entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_mongodb_backupBRead-only
Export MongoDB backup files to Object Storage
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket name | |
| folderPath | No | Folder path in the bucket | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number | |
| cloudMongoDbExportObjectList | Yes | List of backup objects to export | |
| cloudMongoDbServerInstanceNo | Yes | Cloud MongoDB server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states 'Export MongoDB backup files to Object Storage,' which implies writing files to Object Storage—a side effect. However, annotations declare readOnlyHint: true, creating a direct contradiction. No additional behavioral traits such as asynchronous execution or permission requirements are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly conveys the tool's purpose with no extraneous content. It is efficiently front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal and omits critical operational context, such as whether the export is asynchronous, how to monitor progress, required permissions, or what the API response contains. The contradiction between the description's implied side effect and readOnlyHint further complicates the agent's understanding of the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are fully documented in the schema. The description does not add extra meaning about parameters beyond what the schema already provides, which is the baseline for this dimension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Export') and clearly identifies the resource ('MongoDB backup files') and destination ('Object Storage'). It distinguishes the tool from siblings like ncloud_export_mongodb_log and ncloud_export_mysql_backup by focusing on MongoDB backups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool compared to alternatives. It does not mention prerequisites, exclusions, or why one might choose export over other MongoDB operations. There is no contextual information about when this operation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_mongodb_logBRead-only
Export MongoDB server logs to Object Storage
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket name | |
| folderPath | No | Folder path in the bucket | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number | |
| cloudMongoDbExportObjectList | Yes | List of log objects to export | |
| cloudMongoDbServerInstanceNo | Yes | Cloud MongoDB server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations declare readOnlyHint=true, but the description states the tool exports logs to Object Storage, which creates new objects and implies a write side effect. This contradicts the read-only hint, as the operation modifies the destination bucket state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and destination. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters and no output schema, but the description provides no context about return values, asynchronous behavior, or required permissions. It is too minimal to fully inform an agent about the operation's lifecycle.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter described (e.g., bucketName, folderPath, cloudMongoDbInstanceNo). The description adds no additional parameter semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Export' with a clear resource ('MongoDB server logs') and destination ('Object Storage'). This clearly distinguishes it from siblings like ncloud_export_mongodb_backup and ncloud_list_mongodb_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, exclusions, or related tools, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_mssql_backupBRead-only
Export Cloud DB for MSSQL backup files to Object Storage. Use ncloud_list_mssql_backup_details to get available file names.
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket name to export to | |
| folderPath | No | Folder path within the bucket. If omitted, exports to bucket root. | |
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number | |
| cloudMssqlExportObjectList | Yes | List of backup objects to export | |
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true contradicts the description's 'Export... to Object Storage', which implies a side-effectful write operation. The description adds no further context about permissions, asynchronous execution, or the actual impact, leaving the contradiction unresolved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long and front-loaded with the primary function. The second sentence provides actionable guidance without any fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description omits critical behavioral details such as whether the export is asynchronous, what the response contains, or any required preconditions (e.g., bucket existence). Combined with the contradictory readOnlyHint annotation, the tool is under-described for an agent to fully understand its side effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value by connecting the cloudMssqlExportObjectList parameter to ncloud_list_mssql_backup_details, explaining where to obtain the file names for that list.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Exports Cloud DB for MSSQL backup files to Object Storage.' It uses a specific verb (export), resource (MSSQL backup files), and target (Object Storage), which distinguishes it from similar tools like ncloud_export_mssql_log.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a helpful prerequisite by directing users to ncloud_list_mssql_backup_details for available file names, but it does not explicitly state when to use this tool over alternatives (e.g., ncloud_export_mssql_log) or mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_mssql_logARead-only
Export Cloud DB for MSSQL server logs to Object Storage. Use ncloud_list_mssql_log_files to get available log files.
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket name to export to | |
| folderPath | No | Folder path within the bucket. If omitted, exports to bucket root. | |
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number | |
| cloudMssqlExportObjectList | Yes | List of log objects to export | |
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals that the operation is safe from a mutation perspective. The description adds that it exports to Object Storage, which implies a copy operation, but does not disclose potential side effects like storage costs, overwrite behavior, or whether it is synchronous/asynchronous. With annotations covering the safety profile, this level of added context is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences. The first sentence states the purpose and destination, the second provides a cross-reference to the prerequisite listing tool. Every word earns its place, with no fluff or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, but it is a focused export operation with well-documented parameters and a clear prerequisite reference. The description covers the main action and directs the user to obtain the required log file list. It does not describe the return format or how to monitor progress, but given the simplicity and strong schema coverage, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and all parameters have clear descriptions such as 'Object Storage bucket name to export to' and 'Full object name of the log file to export.' The description does not add extra meaning beyond the schema, but since the schema is comprehensive, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Export Cloud DB for MSSQL server logs to Object Storage.' The verb 'export' plus the resource 'Cloud DB for MSSQL server logs' and destination 'Object Storage' make the purpose unmistakable. It also distinguishes from sibling tools like export backups by specifying 'logs' and references the related list tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage context by stating 'Use ncloud_list_mssql_log_files to get available log files.' This tells the agent a key prerequisite and guides it toward the correct companion tool. However, it does not explicitly mention alternatives (e.g., export backups for backups) or provide exclusions, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_mysql_backupARead-only
Export a Cloud DB for MySQL backup file to Object Storage. Use ncloud_list_mysql_backup_details to get available file names.
| Name | Required | Description | Default |
|---|---|---|---|
| fileName | Yes | Backup file name to export (getCloudMysqlBackupDetailList) | |
| bucketName | Yes | Object Storage bucket name to export to | |
| folderPath | No | Folder path within the bucket (e.g. 'mysql-backups/daily'). If omitted, exports to bucket root. | |
| regionCode | No | Region code (default: first region) | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number (getCloudMysqlInstanceList) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true signals safe read behavior, and the description adds the destination (Object Storage) and the prerequisite lookup. However, it does not disclose whether the export is synchronous/asynchronous, whether the bucket must already exist, or what the response contains. This leaves the agent guessing about operational side effects beyond the source DB not being modified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero filler. The first sentence states purpose, and the second provides the essential prerequisite. No repetition of schema details or annotations. This is concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters, no output schema, and an annotation that could be misleading for an action that writes to Object Storage. The description does not explain what the tool returns, whether it triggers a long-running job, or if the destination bucket must be pre-created. Given the moderate complexity and missing return-value guidance, the description is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the parameter fields are already well explained. The description adds practical cross-tool guidance by telling the agent to use ncloud_list_mysql_backup_details to obtain the fileName, which helps understand where that value comes from. This slightly exceeds the baseline of 3 for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Export'), the resource ('Cloud DB for MySQL backup file'), and the destination ('Object Storage'), using a specific verb+resource structure. It distinguishes from sibling export tools (e.g., ncloud_export_mysql_log, ncloud_export_mongodb_backup) by naming the MySQL backup context, and from other MySQL tools by specifying export to Object Storage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly points to ncloud_list_mysql_backup_details as the prerequisite for obtaining available file names, which is valuable guidance for using the tool correctly. While it doesn't mention when-not-to-use or alternative export tools, the resource-specific name makes the intended context clear. The absence of exclusions keeps it just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_mysql_logBRead-only
Export a Cloud DB for MySQL server log file to Object Storage. Use ncloud_list_mysql_logs to get available log files.
| Name | Required | Description | Default |
|---|---|---|---|
| logType | Yes | Log type to export: BINARY (binlog), ERROR (error log), SLOW (slow query log), GENERAL (general log), AUDIT (audit log) | |
| fileName | Yes | Log file name to export (getDbServerLogList) | |
| bucketName | Yes | Object Storage bucket name to export to | |
| folderPath | No | Folder path within the bucket (e.g. 'mysql-logs/error'). If omitted, exports to bucket root. | |
| regionCode | No | Region code (default: first region) | |
| cloudMysqlServerInstanceNo | Yes | Cloud MySQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true indicates no state changes, but the description says 'Export... to Object Storage,' which implies a write operation. This is a direct contradiction, scoring 1 per the rubric.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero fluff, front-loaded with the action. Very concise and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description omits return value semantics (no output schema) and does not mention whether the export is asynchronous or requires special permissions. Combined with the annotation contradiction, the description is not complete enough for a 6-parameter side-effecting tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 6 parameters. The description adds a pointer to ncloud_list_mysql_logs for obtaining the fileName, providing minimal additional context beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Export'), the resource ('Cloud DB for MySQL server log file'), and destination ('Object Storage'). It distinguishes from sibling export tools for other DB types (e.g., ncloud_export_postgresql_log) by specifying MySQL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly directs the user to use ncloud_list_mysql_logs to discover available log files, providing a clear prerequisite and usage hint. It does not, however, explain when to avoid this tool or discuss alternative export methods, but the context is otherwise clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_postgresql_backupBRead-only
Export a Cloud DB for PostgreSQL backup file to Object Storage. Use ncloud_list_postgresql_backup_details to get available file names.
| Name | Required | Description | Default |
|---|---|---|---|
| fileName | Yes | Backup file name to export (from ncloud_list_postgresql_backup_details) | |
| bucketName | Yes | Object Storage bucket name to export to | |
| folderPath | No | Folder path within the bucket (e.g. 'postgresql-backups/daily'). If omitted, exports to bucket root. | |
| regionCode | No | Region code (default: current region) | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description directly contradicts the annotation 'readOnlyHint: true'. Exporting a backup to Object Storage is a write operation with side effects, not a read-only operation. The annotation claims read-only while the description says 'Export', so the contradiction is severe.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, with the primary verb and resource front-loaded. Every word earns its place, and the reference to the listing tool is valuable without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too sparse for an export operation with no output schema. It does not mention whether the operation is asynchronous, what the return value looks like, or any required permissions or side effects. The contradiction with the annotation also reduces trust in the completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with all parameters having descriptions. The tool description adds no extra parameter semantics beyond the schema, but the schema itself is sufficiently descriptive. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Export'), a specific resource ('Cloud DB for PostgreSQL backup file'), and a destination ('Object Storage'). It also references a sibling tool for obtaining file names, which helps distinguish it from similar export tools for other database types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs the user to use 'ncloud_list_postgresql_backup_details' to get available file names, providing clear prerequisite guidance. It does not explicitly mention when not to use it, but the tool name and context make the database type clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_export_postgresql_logARead-only
Export a Cloud DB for PostgreSQL server log file to Object Storage. Use ncloud_list_postgresql_logs to get available log files.
| Name | Required | Description | Default |
|---|---|---|---|
| logType | Yes | Log type to export (e.g. ERROR, SLOW, etc.) | |
| fileName | Yes | Log file name to export (from ncloud_list_postgresql_logs) | |
| bucketName | Yes | Object Storage bucket name to export to | |
| folderPath | No | Folder path within the bucket (e.g. 'postgresql-logs/error'). If omitted, exports to bucket root. | |
| regionCode | No | Region code (default: current region) | |
| cloudPostgresqlServerInstanceNo | Yes | Cloud PostgreSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, so the description's job is to add context. It discloses destination ('Object Storage') but does not mention whether the bucket must exist, whether overwrites occur, or response/async behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action and resource, and includes a helpful pointer to prerequisite tool. No redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, description should explain what the tool returns. It does not. It also doesn't discuss prerequisites (bucket existence, permissions) or whether the operation is asynchronous. However, readOnlyHint and schema cover much of the context, making it adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage; all six parameters are described. The description adds no parameter details beyond the schema, only reiterates that fileName comes from ncloud_list_postgresql_logs. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb 'Export' + resource 'Cloud DB for PostgreSQL server log file' + destination 'Object Storage'. Distinguishes from sibling export tools (export_mysql_log, export_postgresql_backup) by explicit resource and target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States prerequisite: use ncloud_list_postgresql_logs to obtain log files. Does not explicitly exclude alternatives (e.g., ncloud_export_postgresql_backup), but gives clear context for its intended purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_flush_cache_serverADestructiveIdempotent
⚠️ Destructive: Permanently deletes ALL data from a Cloud Cache server (FlushAll). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cloudCacheServerInstanceNo | Yes | Cloud Cache server instance number to flush |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include destructiveHint=true, so the baseline safety signal is present. The description adds valuable detail beyond that: 'Permanently deletes ALL data' emphasizes irreversibility, and the confirm=true guard explains the required safety mechanism. This enriches the agent's understanding of the operation's side effects without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence. It begins with a warning symbol and the word 'Destructive', immediately conveying the critical safety concern. Every phrase ('Permanently deletes ALL data', 'FlushAll', 'Set confirm=true') adds necessary information with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive operation with a guard, the description covers the essential behavior: what it does (deletes all data), the severity (permanent), and the execution requirement (confirm=true). With no output schema, not describing return values is acceptable. The tool is simple enough that this description is adequately complete, though could mention response or failure modes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both parameters have clear descriptions (confirm: 'Must be true to actually execute the destructive operation'; cloudCacheServerInstanceNo: 'Cloud Cache server instance number to flush'). The tool description essentially restates the confirm requirement, adding no new semantic information. Baseline of 3 is appropriate given the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Permanently deletes ALL data from a Cloud Cache server (FlushAll)' uses a specific verb (deletes), names the resource (Cloud Cache server), and clarifies scope (ALL data, FlushAll). This clearly distinguishes it from other cache-related tools in the sibling list, which generally perform create/read/update operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by warning 'Destructive' and stating 'Set confirm=true to execute.' This tells the agent when to use the tool (and when to be cautious), but it does not explicitly name alternatives or exclusions. Still, the context is strong enough to guide proper invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_create_actionA
Create or update a Cloud Functions action (PUT, API v2.1 (/ncf/api/v2) — idempotent; the same call updates an existing action). type selects the action kind and CANNOT be changed after creation: basic (default) | web | sequence | sequence-web. basic/web: exec_kind, exec_code and exec_main are required; limits_timeout/limits_memory default to 60000 ms / 128 MB; on platform=vpc the action MUST be attached to a VPC + Subnet (vpc_no, subnet_no). sequence/sequence-web: pass exec_components as ['{packageName}/{actionName}', ...] (use '-' for unpackaged actions); exec_kind is forced to 'sequence'. Runtimes (exec_kind): nodejs:22, python:3.13, java, java:21, swift:3.1.1, php:7.3, go:1.19, dotnet:2.2, custom image. Deprecated since 2025-09-18 and refused for NEW actions: nodejs:6, nodejs:8, nodejs:12, nodejs:16, python:3.6, python:3.7, python:3.11, php:7.1, go:1.11. java/dotnet accept only base64 binaries (.jar / .zip) with exec_binary=true. 'custom image' requires exec_imageUri ('{registryName}/{imageName}:{tag}'). Use dryRun=true to see the exact request without calling the API.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Action type (query parameter). Cannot be changed once created. | basic |
| dryRun | No | Preview the request without calling the API | |
| vpc_no | No | VPC number to attach (REQUIRED for basic/web on platform=vpc; see ncloud_list_vpcs) | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| raw_http | No | web types only: pass the raw HTTP request to the action (sent as 'raw-http') | |
| exec_code | No | Source code (exec_binary=false) or base64-encoded file (exec_binary=true). Required for basic/web unless exec_kind is 'custom image'. | |
| exec_kind | No | Runtime, e.g. 'python:3.13', 'nodejs:22', 'java:21', 'custom image'. Ignored for sequence types (forced to 'sequence'). Supported: nodejs:22, python:3.13, java, java:21, swift:3.1.1, php:7.3, go:1.19, dotnet:2.2, custom image | |
| exec_main | No | Entry function name, e.g. 'main'. Required for basic/web. | |
| subnet_no | No | Subnet number to attach (REQUIRED for basic/web on platform=vpc; see ncloud_list_subnets) | |
| actionName | Yes | Action name: 1-50 chars of letters, digits, '-' and '_'; must not start with '-'; unique across packages/actions/triggers | |
| parameters | No | Default parameters as a {key: value} JSON object (basic/web only). Precedence: runtime params > trigger params > action params > package params. | |
| description | No | Description (0-3000 bytes) | |
| exec_binary | No | true if exec_code is a base64-encoded file (required for java/dotnet: .jar / .zip) | |
| packageName | No | Package name ('-' = unpackaged action) | - |
| exec_imageUri | No | Custom Image runtime only: '{registryName}/{imageName}:{tag}' (tag defaults to latest) | |
| limits_memory | No | Memory in MB: 128 | 256 | 512 | 1024 (default 128). basic/web only. | |
| custom_options | No | web types only: let the action set HTTP response headers (sent as 'custom-options') | |
| limits_timeout | No | Max execution time in ms, 500-300000 (default 60000). basic/web only. | |
| exec_components | No | sequence/sequence-web only: actions to run in order, each '{packageName}/{actionName}' | |
| allowDeprecatedRuntime | No | Send a deprecated exec_kind anyway (the API is documented to refuse new actions on them) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, leaving the description to carry the behavioral load, and it does so richly: idempotency, immutability of 'type' after creation, required fields per type, timeout/memory defaults, mandatory VPC+Subnet wiring, forced exec_kind for sequence, refused deprecated runtimes, and a dryRun preview mode. This is far beyond what the single annotation provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but front-loaded: idempotency and type immutability come first, then per-type rules, then runtime caveats and dryRun. The runtime and deprecation lists are long, but each entry encodes a decision the agent must make, so it is information-dense rather than padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 20-parameter tool with no output schema, the description covers construction rules, platform constraints, deprecated runtimes, binary/image requirements, and a safe preview path. There is no output contract to explain, and every non-obvious input combination appears to be addressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter semantics the flat schema cannot express: conditional requirements (basic/web need exec_kind/exec_code/exec_main; VPC platform needs vpc_no/subnet_no), default values, sequence component syntax with '-' for unpackaged, and the custom-image URI format. This meaningfully exceeds the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Create or update a Cloud Functions action') and immediately disambiguates the dual create/update semantics via idempotent PUT, which no other sibling tool does. An agent can tell it apart from ncloud_functions_get_action, list_actions, and delete_action at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains that the same call updates an existing action and gives concrete per-type requirements and defaults, so an agent knows which branch of behavior applies. It does not explicitly name alternative tools or state when-not to use it (e.g. package selection via ncloud_functions_create_package), so it stops just short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_create_packageA
Create or update a Cloud Functions package (PUT — idempotent). Name: 1-50 chars of letters, digits, '-' and '_', must not start with '-', and must be unique across packages/actions/triggers.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | Preview the request without calling the API | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| parameters | No | Default parameters as a {key: value} JSON object. Lowest precedence: runtime params > trigger params > action params > package params. | |
| description | No | Description (0-3000 bytes) | |
| packageName | Yes | Name of the package to create or update |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses that the operation is idempotent and that package names must satisfy format and uniqueness requirements. These are useful behavioral details that help the agent anticipate failures and understand that re-running is safe. It does not describe output or side effects, but the annotation already signals no destructive behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The core operation and idempotency are front-loaded, followed by the most relevant naming constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides the essential information needed to call the tool correctly: the operation, idempotency, and packageName validation rules. Remaining details like the platform enum and parameter precedence are already fully documented in the schema, so the description does not need to restate them. It is complete enough for an agent selecting and invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all parameters, so the baseline is 3. The description adds value by specifying packageName's allowed character set, length rules, prohibited leading '-', and uniqueness across packages/actions/triggers, which the schema does not fully convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb, 'Create or update', and a specific resource, 'Cloud Functions package', and identifies the HTTP method as PUT. It distinguishes this tool from related siblings like ncloud_functions_get_package, ncloud_functions_delete_package, and ncloud_functions_list_packages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys when to use the tool: whenever creating or updating a Cloud Functions package. It does not explicitly mention alternatives or exclusions, but the resource-scoped naming makes the intended use unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_create_triggerA
Create or update a Cloud Functions trigger (PUT, API v2.1 (/ncf/api/v2) — idempotent). type is a query parameter and cannot change after creation. Body fields are FLAT (no wrapper) and depend on type: cron → cronOption (required). cronOption is a 5-field UNIX cron expression: 'minute hour day-of-month month day-of-week' (e.g. '0 8 * * ' = 08:00 daily, '/5 * * * *' = every 5 minutes). The expression is evaluated in KST (Asia/Seoul, UTC+9) — live-verified on 2026-09-15 in the KR region (public zone): a trigger set to '41 22 * * *' fired at 22:41:00 KST. The official guide (guide.ncloud-docs.com/docs/cloudfunctions-cron-vpc) does not document the time zone, so re-verify with a probe trigger before relying on it in another region. github → credential {username, accessToken, repository} + events [...] (required); link {productName, apiName, stageName} is required on first creation (API Gateway must be subscribed). insight → insightLink [{prodKey, ruleGrpId, reminderTime?, enableNotiWhenEventClose?}] (optional). object_storage → objectStorageLink [{bucketName, eventRuleName}] (required). Beware of recursion if the linked action writes to the same bucket. source_commit → sourceCommitLink [{repositoryName, webhookName, enable?}] (required; KR VPC only). secret_manager → secretManagerLink [{secretName}] (required; KR VPC only; one secret can be linked to one trigger). Link actions afterwards with ncloud_functions_link_trigger_action. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| link | No | github only: API Gateway endpoint to create the webhook on — productName + apiName + stageName (required when creating; ignored on update) | |
| type | Yes | Trigger type (query parameter; immutable after creation) | |
| dryRun | No | Preview the request without calling the API | |
| events | No | github only: events to trigger on, e.g. ['push'] or ['*'] | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| credential | No | github only: GitHub credentials | |
| cronOption | No | cron only. 5-field UNIX cron 'min hour dom mon dow', e.g. '0 8 * * *'. Evaluated in KST (UTC+9) — live-verified 2026-09-15 on KR; the time zone is not documented by Ncloud. | |
| parameters | No | Default parameters as a {key: value} JSON object, merged into every invocation (precedence: runtime > trigger > action > package) | |
| description | No | Description (0-3000 bytes) | |
| insightLink | No | insight only: Cloud Insight event rules to link | |
| triggerName | Yes | Trigger name: 1-50 chars of letters, digits, '-' and '_'; must not start with '-'; unique across packages/actions/triggers | |
| sourceCommitLink | No | source_commit only: repository webhooks to link | |
| objectStorageLink | No | object_storage only: bucket event rules to link | |
| secretManagerLink | No | secret_manager only: secrets to link |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries the behavioral load and does so richly: idempotent PUT semantics, type immutability, per-type required fields, link required on first creation but 'ignored on update', a recursion hazard warning for object_storage, and KR VPC-only restrictions for source_commit/secret_manager. The KST timezone disclosure with a live-verification date, region caveat, and advice to re-verify elsewhere is unusually high-value context not present in any structured field.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded and dense: the identity/semantics sentence comes first, then type-specific requirements, then linking/preview guidance. Every sentence carries information, but the KST time-zone claim is duplicated between the prose and the cronOption schema description, and the paragraph form makes the per-type rules harder to scan than a list would.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 14-parameter tool with deep nested objects and no output schema, this covers the create-vs-update path, per-type requirements, and preview mode thoroughly. Remaining gaps are minor: no statement of auth/permission prerequisites for the API Gateway subscription beyond 'must be subscribed', and update-path behavior is only specified for `link` ('ignored on update') while other fields' update semantics are left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds semantics the schema cannot express: that body fields are FLAT with no wrapper, that `type` travels as a query parameter, and the per-type field mapping (cron→cronOption, github→credential+events+link, insight→insightLink, etc.) that spans multiple schema properties. The cron format explanation, examples, and precedence note give an agent what it needs without guessing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create or update a Cloud Functions trigger') and immediately pins the transport and semantics (PUT, API v2.1 /ncf/api/v2, idempotent). It also distinguishes itself from the sibling ncloud_functions_link_trigger_action by explicitly deferring action linking to it, which is the most confusable neighbor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear operational context: 'Link actions afterwards with ncloud_functions_link_trigger_action' and 'Use dryRun=true to preview', plus the hard constraint that `type` is immutable after creation, implying a new trigger is needed to change it. It does not state when to use this vs. create_package/create_action or name any explicit exclusion, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_delete_actionADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud Functions action. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Name of the action to delete | |
| packageName | No | Package name ('-' = unpackaged action) | - |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint, and the description adds useful behavioral context: the deletion is permanent and guarded by an explicit confirm flag. It aligns with idempotentHint (no contradiction) and clarifies that the operation is irreversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences front-load the safety warning, state the operation, and give the required guard. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive single-resource delete, the combination of warning, permanence, and confirm gate covers what an agent needs, with parameter details fully handled by the schema. It could mention what happens to linked packages/triggers, but this is not a critical gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline applies. The description's only parameter-related statement, 'Set confirm=true', merely echoes the schema's confirm description without adding new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb ('delete') and resource ('Cloud Functions action'), making the tool's scope unmistakable and distinguishing it from sibling delete tools such as ncloud_functions_delete_package or ncloud_functions_delete_trigger.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intent to use this when deleting an action is implied, and 'Set confirm=true to execute' provides an invocation requirement, but there is no explicit when/when-not guidance or mention of alternatives. An agent must infer the difference from the name/schema rather than the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_delete_packageADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud Functions package. Fails with 409 PACKAGE_NOT_EMPTY while the package still contains actions — delete those first. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| packageName | Yes | Name of the package to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by explicitly using the '⚠️ Destructive' warning, confirming the permanence of the delete. It also discloses the specific error state (409 PACKAGE_NOT_EMPTY) and the required 'confirm=true' behavior, which directly affects how the agent must invoke the operation. IdempotentHint is not elaborated, but the description is consistent and adds operational context not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads the most important warning ('Destructive'). It conveys purpose, a failure condition, a prerequisite, and a required parameter in three sentences with no waste. Every sentence contributes actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's destructive nature, the description covers the essential context: permanence, the pre-existing condition that must be resolved, the error code, and the confirm flag. There is no output schema, but the failure mode is disclosed. A brief mention of what the successful response looks like might improve completeness, but the current description is sufficient for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers all parameters, but the description adds key semantic context for 'confirm' (must be true to execute) and the platform nuance ('Singapore/Japan regions support vpc only') is in the schema. The description emphasizes the critical confirm flag, which is the most actionable semantic detail beyond a bare schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly names the verb 'delete' and the resource 'Cloud Functions package', and uses the warning 'Destructive' to make the operation's purpose immediately clear. It also includes the specific failure condition (409 PACKAGE_NOT_EMPTY), which ties directly to the expected behavior of deleting a package. This distinguishes it from related package operations like create or get and from other delete tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states a clear precondition: fail while the package still contains actions, so delete those first. This tells an agent when to use this tool and what to do before calling it. It does not explicitly mention alternatives by name, but the focused package context and the stated failure condition make the usage scenario obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_delete_triggerADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud Functions trigger. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| triggerName | Yes | Name of the trigger to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While destructiveHint is already in annotations, the description adds 'Permanently' and explains the confirm=true gate, which is behavioral context beyond the annotation. This clarifies irreversibility and the required explicit consent. It does not contradict the idempotentHint, and no auth or rate-limit details are needed at this level.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the destructive warning and purpose, then the confirmation instruction. There is no filler, and every word contributes to safe invocation. The emoji and uppercase 'Destructive' effectively draw attention.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter destructive operation with full schema coverage and annotations carrying the safety profile, the description is complete. It adds the one non-obvious requirement (confirm=true) and the permanence of the action. No output schema exists, so return-value explanation is unnecessary, and nothing needed for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description restates the confirm parameter's semantics already present in the schema ('Must be true to actually execute the destructive operation') without adding new meaning for triggerName or platform. It adds no value beyond what the structured schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('delete'), resource ('Cloud Functions trigger'), and permanence ('Permanently'). This clearly differentiates the tool from sibling functions like ncloud_functions_delete_package or ncloud_functions_delete_action. The tool name and description align without tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a critical invocation condition ('Set confirm=true to execute') but does not say when to use this tool versus alternatives, nor provide exclusions or prerequisites. It relies on the tool name and schema to convey the target resource, and omits any guidance about when deletion is appropriate or how it contrasts with deleting packages/actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_actionARead-only
Get an action's full definition including its source code. Secrets found in the code (hard-coded access/secret keys, passwords, tokens, PEM keys) are REDACTED by default and the response carries secretsRedacted=true with the count; pass includeSecrets=true only if you genuinely need the raw values.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Name of the action to retrieve | |
| packageName | No | Package name ('-' = unpackaged action) | - |
| includeSecrets | No | Return source code unredacted (default false). Even when true, the response still reports how many secret-like values were detected. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnlyHint annotation by disclosing redaction behavior: secrets are redacted by default, the response includes secretsRedacted=true with a count, and includeSecrets=true is needed to obtain raw values. This is genuinely useful behavioral context an agent cannot infer from the schema alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary purpose, and no filler. Every clause contributes useful information, especially the redaction behavior and includeSecrets warning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the key return aspects: full definition, source code, secret redaction, and response signal. Since there is no output schema, slightly more detail about other returned fields could help, but the description is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaningful semantics for includeSecrets by explaining the redaction default and the response flag/count, and it adds a usage caution. This goes beyond the schema's already detailed parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get an action's full definition including its source code.' This clearly distinguishes the tool from related siblings like list_actions, invoke_action, and get_package by emphasizing the full definition plus source code.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context on what the tool returns and practical guidance on when to pass includeSecrets=true ('only if you genuinely need the raw values'). It does not explicitly name alternatives or exclusions, but the purpose is clear enough for basic selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_action_activation_detailARead-only
Get one action activation: result payload, status, success flag, logs, start/end/duration. Right after an invocation the detail can return 80322 ACTION_ACTIVATION_NOT_FOUND for ~30-40 s even though the id is already in the activation list — retry after a short wait.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Name of the action | |
| packageName | No | Package name ('-' = unpackaged action) | - |
| activationId | Yes | Activation ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses the return payload structure and, more valuably, an eventual-consistency behavior with a specific error code and a retry recommendation. This is exactly the kind of behavioral context agents need to handle transient failures gracefully.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences carry high information density with no filler. The core purpose and return fields are front-loaded, and the important retry caveat is placed second, giving the agent the critical operational detail without burying it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only detail lookup with a fully documented schema, the description covers the return fields and the key failure mode. There is no output schema, but the description compensates by listing what the tool returns. Nothing critical for invoking this tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents actionName, packageName, activationId, and platform. The description adds no additional parameter-level detail beyond what the schema already provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource — 'Get one action activation' — and enumerates the exact contents returned: result payload, status, success flag, logs, start/end/duration. The word 'one' distinguishes it from list-style siblings like ncloud_functions_get_action_activations, making the purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear contextual guidance: right after an invocation, the detail may return 80322 ACTION_ACTIVATION_NOT_FOUND for 30-40 seconds and the agent should retry. It does not explicitly name alternatives or state when not to use the tool, but the timing context strongly implies this is the detail-retrieval step after an invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_action_activationsBRead-only
List an action's activations (executions) from the last month: activationId, duration, status, plus totalCount
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End of the window as a Unix timestamp in MILLISECONDS (default: now). | |
| start | No | Start of the window as a Unix timestamp in MILLISECONDS (default: one month before now). Only the last month is queryable. | |
| pageNo | No | Page number (default 1) | |
| pageSize | No | Page size (default 20) | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Name of the action | |
| packageName | No | Package name ('-' = unpackaged action) | - |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already declares the safe read profile, so the bar is lower. The description adds the returned field list (activationId, duration, status, totalCount), which is genuinely useful given no output schema, but the 'last month' constraint merely restates the schema's start/end defaults and pagination behavior is not mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, efficiently constructed sentence with the verb and scope front-loaded and no filler. The trailing field list is somewhat list-like but earns its place by summarizing the return payload.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with annotations covering safety and 100% schema coverage, the description is sufficient: it names the resource, the window, and the returned fields. There is no output schema to require more, though it could have flagged pagination.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all seven parameters are fully documented in the schema. The description adds no parameter-level detail (e.g. how start/end interact with the one-month cap), so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('an action's activations'), and clarifies the terminology with '(executions)'. It specifies the scope ('from the last month'), which is precise, but does not differentiate itself from close siblings like ncloud_functions_get_activations or ncloud_functions_get_trigger_activations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit when-to-use guidance and names no alternatives, despite several sibling tools covering activations (get_activations, get_trigger_activations, get_action_activation_detail). An agent must infer from the name that this is the per-action variant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_activationsARead-only
List all action activations across the account from the last month: activationId, duration, status, plus totalCount
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End of the window as a Unix timestamp in MILLISECONDS (default: now). | |
| start | No | Start of the window as a Unix timestamp in MILLISECONDS (default: one month before now). Only the last month is queryable. | |
| pageNo | No | Page number (default 1) | |
| pageSize | No | Page size (default 20) | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds useful behavioral context by naming the returned fields (activationId, duration, status, totalCount) and the one-month retention window, but it says nothing about pagination interaction with totalCount or how the default window is computed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence stating the resource, scope, and returned fields with zero filler. Nothing could be removed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description helpfully enumerates return fields and the time bound, and all five parameters are documented in the schema. For a read-only list tool this is nearly complete, though the lack of sibling disambiguation against per-action/per-trigger activation tools leaves a small gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters including start/end timestamps, pageNo/pageSize, and the platform enum. The description only restates the one-month window that the schema's start default already implies, so it adds little beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('List all action activations') and adds meaningful scope ('across the account from the last month'). This distinguishes it from the account-wide vs. per-action variants hinted at by sibling names, but it never names the close sibling ncloud_functions_get_action_activations, so the routing is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'across the account' implies this is the broad, unfiltered listing, which gives an implicit sense of when to use it versus an action-scoped variant. However, there is no explicit when-to-use, when-not-to-use, or named alternative, so the guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_packageARead-only
Get a Cloud Functions package: description, default parameters, platform and the actions it contains
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| packageName | Yes | Name of the package to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is established. The description adds useful context about what the response contains, which helps an agent judge whether the tool satisfies the request. No contradictions with the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence that front-loads the verb and resource, then lists deliverables in a compact colon-delimited form. No wasted words, though slightly denser formatting with a list would improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with full schema coverage and a readOnlyHint annotation, the description is nearly complete. It states what the operation returns, and nothing an agent needs to invoke it successfully is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both platform and packageName are already fully documented. The description adds no new parameter-level detail; it only echoes the concept of 'platform' as a returned attribute, which is not parameter guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), resource ('a Cloud Functions package'), and enumerates the returned contents (description, default parameters, platform, actions). This distinguishes it from the sibling get_action (single action) and list_packages (enumeration), though without naming them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied: the tool fetches a single package's full detail, contrasting with list_packages for enumeration. However, the description never states when to prefer this tool over ncloud_functions_list_packages or ncloud_functions_get_action, leaving the routing decision to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_triggerARead-only
Get a trigger: type, description, linked actions and execOption (for cron triggers the 5-field cron expression). The API returns NO time-zone field; cron expressions are evaluated in KST (UTC+9, live-verified 2026-09-15 on KR) — the response includes a cronFormat note for cron triggers.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| triggerName | Yes | Name of the trigger to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, and the description adds valuable behavioral details beyond that: the API returns no time-zone field, cron expressions are evaluated in KST (UTC+9, live-verified), and the response includes a cronFormat note for cron triggers. This helps the agent interpret time-sensitive data correctly. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, tightly packed with useful information. The purpose is front-loaded, and the timezone clarification is a separate sentence. No redundant or filler content. Every clause adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with two parameters (both documented in schema), the description covers the essential output fields and a critical timezone caveat. It lacks an explicit statement about the response structure (no output schema), but the described fields are sufficient for typical usage. The read-only nature is covered by annotations. Minor gaps like error handling or required parameters are already in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, both parameters (platform and triggerName) have descriptive text. The description does not need to elaborate on parameters, and it doesn't add parameter-specific semantics beyond the schema. The cron expression note pertains to the output (execOption), not input parameters. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get a trigger' and enumerates the returned fields (type, description, linked actions, execOption). It also specifies the cron expression format for cron triggers. This distinguishes it from sibling tools like list_triggers (list vs. specific get) and invoke/delete/create triggers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives (e.g., list_triggers for enumerating triggers, or get_trigger_activations for execution history). Usage context is implied by the 'Get a trigger' phrasing, but no when-not or alternative guidance is provided. The read-only nature is clear from annotations, but no explicit selection criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_trigger_activation_detailARead-only
Get one trigger activation: result, status, success flag, logs, start time. Right after an invocation the detail can return 80518 TRIGGER_ACTIVATION_NOT_FOUND for ~30-40 s even though the id is already in the activation list (observed live 2026-09-15) — retry after a short wait.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| triggerName | Yes | Name of the trigger | |
| activationId | Yes | Activation ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description correctly avoids repeating that. It adds a valuable, concrete behavioral caveat about the 80518 error and the ~30-40s retry window, which is beyond structured fields and helps an agent handle failures correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. The first sentence states the core purpose with the returned fields; the second delivers a crucial retry tip. Every word earns its place and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-detail read with three parameters and no output schema, the description covers the essential behavior: what it returns and the transient error condition. It doesn't describe return format, but given the absence of an output schema and the simple scope, it is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are documented. The description adds practical context about activationId specifically—that it may transiently return NOT_FOUND—which is parameter-relevant and not in the schema. This enriches parameter understanding beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets one trigger activation and lists the exact fields returned (result, status, success flag, logs, start time). This distinguishes it from list tools like ncloud_functions_get_trigger_activations, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it is for retrieving a single activation detail rather than a list, but it does not explicitly name alternatives or state when to prefer this tool over ncloud_functions_get_trigger_activations or similar siblings. The guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_get_trigger_activationsARead-only
List a trigger's activations from the last month: activationId, duration, status, plus totalCount
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End of the window as a Unix timestamp in MILLISECONDS (default: now). | |
| start | No | Start of the window as a Unix timestamp in MILLISECONDS (default: one month before now). Only the last month is queryable. | |
| pageNo | No | Page number (default 1) | |
| pageSize | No | Page size (default 20) | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| triggerName | Yes | Name of the trigger |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. Beyond that the description discloses the one-month retention window and enumerates return fields (activationId, duration, status, totalCount), which is real added value. It stops short of describing pagination behavior or what totalCount represents.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the resource, the time scope, and the payload contents with zero filler. Nothing could be removed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by listing the returned fields, and it flags the last-month constraint on data availability. It leaves page/totalCount semantics and pagination traversal unstated, which is a minor gap for a 6-parameter list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself documents every parameter including the millisecond timestamps, the one-month queryability limit, pagination defaults, and the platform enum. The description adds no parameter-level meaning beyond that, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource with scope: listing a trigger's activations over the last month, including the returned fields. It distinguishes itself implicitly from action-scoped or account-wide siblings by naming 'a trigger's activations,' but never names the alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the tool name and the 'last month' scope, but there is no statement of when to use this versus ncloud_functions_get_activations, ncloud_functions_get_action_activations, or ncloud_functions_get_trigger_activation_detail. Nothing is misleading, but the agent must infer routing on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_invoke_actionA
Invoke an action synchronously and return its result (activationId, duration, response.result). If the action runs longer than timeout, only the activationId is returned — fetch the outcome later with ncloud_functions_get_action_activation_detail. web/sequence-web actions cannot handle raw HTTP here; use an API Gateway trigger for that.
| Name | Required | Description | Default |
|---|---|---|---|
| params | No | Runtime parameters passed to the action (highest precedence) | |
| timeout | No | Max time to wait for the response in ms (0-60000, default 60000) | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Name of the action to invoke | |
| packageName | No | Package name ('-' = unpackaged action) | - |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden and discharges it well: it discloses partial-return behavior on timeout, the follow-up retrieval path, and the web/sequence-web HTTP limitation. It stops short of noting that invoking an action may trigger side effects or mention auth/cost implications, which is why it isn't a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler; the core purpose and return fields are front-loaded, followed by the two most decision-relevant caveats. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and empty annotations, the description covers the essential operational knowledge: what is returned, the timeout edge case, and when to route elsewhere. It does not enumerate the full response structure or side-effect expectations, but for an invocation tool the key decisions an agent must make are covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with detailed descriptions already provided (defaults, range, enum, precedence note for params). The description adds one behavioral consequence tied to timeout (only activationId returned when exceeded), which is useful but marginal relative to the schema's complete coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Invoke an action') with the synchronous mode and the three return fields (activationId, duration, response.result). The synchronous qualifier and web/sequence-web limitation distinguish it from related siblings like ncloud_functions_get_action_activation_detail and ncloud_functions_invoke_trigger.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit when-to-use rule for timeout overflow — 'If the action runs longer than timeout, only the activationId is returned' — and names the alternative tool to fetch the outcome. The web/sequence-web exclusion with API Gateway as the alternative provides clear when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_invoke_triggerA
Manually fire a trigger so its linked actions run; returns the activationId. Fails with 80512 TRIGGER_INVOKE_FAIL if no action is linked.
| Name | Required | Description | Default |
|---|---|---|---|
| params | No | Runtime parameters passed to the linked actions | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| triggerName | Yes | Name of the trigger to invoke |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses the return value (activationId) and a specific error case (80512 when no action is linked). While it doesn't cover all possible failure modes or async behavior, it provides meaningful information for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with zero filler. The primary action is front-loaded, and the error condition and return value are efficiently communicated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter tool with no output schema, the description is largely complete. It covers the core action, return value, and one key failure condition. It doesn't describe other potential errors or permissions, but these are not critical for a basic trigger invocation. The platform restriction is already in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; all parameters (triggerName, params, platform) are documented in the schema. The description does not add extra meaning beyond the schema, but it doesn't need to. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'fire', the resource 'trigger', and the effect 'so its linked actions run'. It also mentions the return value (activationId) and a specific error condition with code 80512, distinguishing it from sibling tools like list/get triggers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case: manually invoking a trigger to run linked actions. However, it does not explicitly state when to use this tool versus alternatives (e.g., invoking an action directly) or provide any exclusion criteria. The failure condition is mentioned, but no comparative guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_link_trigger_actionA
Link an action to a trigger so the trigger's events invoke it (POST /ncf/api/v2/triggers/{name}/link-action). Fails with 80901 DUPLICATED_RULE if already linked, 80324/80519 when a link limit is exceeded.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Action name. '{packageName}/{actionName}' is also accepted and split automatically. | |
| packageName | No | Package of the action (default '-' = unpackaged) | |
| triggerName | Yes | Name of the trigger |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the transparency burden. It usefully discloses failure modes (80901 DUPLICATED_RULE if already linked, 80324/80519 on link limit exceeded) and the consequence of the link. However, it does not mention authorization requirements, reversibility, or any success response, leaving the behavioral picture incomplete for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core purpose is front-loaded, and the error-code details earn their place by helping an agent anticipate common failures. Nothing extraneous is included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no annotations and no output schema, the description is adequate but not fully complete. It explains the action, endpoint, and error conditions, and the schema covers all parameters. Still missing are success-return expectations, prerequisite conditions, and any mention of the complementary unlink operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline applies. The description does not add parameter-level meaning beyond the schema; triggerName, actionName, packageName, and platform are already well documented in the input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Link an action to a trigger so the trigger's events invoke it.' The endpoint path (POST /ncf/api/v2/triggers/{name}/link-action) further pins down the exact operation, and the verb 'link' clearly distinguishes it from the sibling unlink_trigger_action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys the intended use case: when you want a trigger's events to invoke an action. It does not explicitly name alternative tools or state when not to use it, but the linking purpose is clear enough that an agent can decide when this is the right operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_list_actionsARead-only
List actions in a package: name, type (basic/web/sequence/sequence-web), runtime, description. Use '-' for actions that belong to no package.
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| packageName | No | Package name ('-' = unpackaged actions) | - |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint: true, which the description aligns with. The description adds no extra safety/behavioral detail such as listing only metadata (not invoking actions) or that results are filtered by platform. It doesn't contradict annotations, but it also doesn't go beyond the provided annotation plus the obvious list semantics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loads the main verb/resource, lists fields compactly, and includes the critically important '-' convention. No wasted words or redundant schema repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list with optional params and 100% schema coverage, the description plus schema are adequate. It doesn't mention output schema (none provided) or pagination, but for typical action listing these are non-critical. Could mention that it returns only metadata and not action code, but this is not a major gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: both parameters (platform, packageName) have descriptions. The description reinforces packageName's meaning with the '-' convention, which is already in the schema. It adds little beyond the schema, but the schema is sufficient, so a 3 is the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description says 'List actions in a package' with specific fields (name, type, runtime, description) and the type taxonomy (basic/web/sequence/sequence-web). It clearly distinguishes from sibling ncloud_functions_list_packages and ncloud_functions_get_action. The '-' for no package is a useful scoping detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what it lists and how to handle unpackaged actions ('-' = no package). It doesn't explicitly say when to use this vs ncloud_functions_get_action or ncloud_functions_list_packages, but the resource and granularity are clear enough that a capable agent can infer. Lacks explicit exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_list_packagesBRead-only
List all Cloud Functions packages (API v2.1 (/ncf/api/v2))
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read behavior is covered. The description adds only the API version and endpoint path, with no mention of pagination, result limits, or ordering behavior that would meaningfully extend the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with the action front-loaded and zero filler. Nothing is repeated or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with full schema coverage and a readOnly annotation, the description is minimally adequate. However, it leaves return format and pagination behavior unaddressed, and there is no output schema to carry that information instead.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; the single platform parameter is fully documented in the schema, including default and region constraints. The description adds no parameter-level semantics beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'List all Cloud Functions packages'. This distinguishes it from singular siblings like ncloud_functions_get_package, but the description does not explicitly name or contrast those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, prerequisites, or alternative selection criteria are provided. An agent must infer that this is the listing counterpart to get_package/create_package/delete_package purely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_list_triggersARead-only
List all Cloud Functions triggers (name + type)
| Name | Required | Description | Default |
|---|---|---|---|
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with the readOnlyHint annotation (listing is read-only) and adds the return format (name + type). However, it does not disclose additional behavioral traits such as pagination, rate limits, or the fact that it lists triggers across the current region/context. With annotations covering safety, a 3 is appropriate for the modest added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the action and return fields with zero waste. Every word contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description provides the essential information: what it lists and what fields are returned. It is complete for an agent to invoke it correctly, as the schema covers the only parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the 'platform' parameter, so the schema already documents it fully. The description does not add any additional parameter context, matching the baseline of 3 when the schema carries the semantic burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), resource ('Cloud Functions triggers'), and the returned fields ('name + type'). It clearly distinguishes from siblings like ncloud_functions_list_actions (actions) and ncloud_functions_get_trigger (single trigger) by specifying the scope as 'all' and the resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (list all triggers) but does not explicitly state when to use this tool versus alternatives like ncloud_functions_get_trigger for a specific trigger. It lacks explicit exclusions or alternative routing, which is a gap given the large sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_functions_unlink_trigger_actionADestructive
⚠️ Destructive: Unlink an action from a trigger (DELETE /ncf/api/v2/triggers/{name}/link-action). The trigger stops invoking the action; neither resource is deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| platform | No | Platform (default: vpc). Singapore/Japan regions support vpc only. | vpc |
| actionName | Yes | Action name. '{packageName}/{actionName}' is also accepted and split automatically. | |
| packageName | No | Package of the action (default '-' = unpackaged) | |
| triggerName | Yes | Name of the trigger |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint=true annotation, the description discloses the confirm=true execution gate, the concrete effect (the trigger stops invoking the action), and what does NOT happen (neither resource is deleted). The '⚠️ Destructive' prefix duplicates the annotation but reinforces a safety-critical signal. These details add genuine value over the bare annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences front-load the destructive warning, then state the action, consequence, and execution gate in order. There is no filler. The '⚠️ Destructive' prefix and the HTTP path are somewhat redundant with the annotations and tool name, which keeps this from a perfect 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with no output schema, the description covers the essentials: what happens, what does not happen, and the mandatory confirm flag. The most dangerous detail (execute contract) is explicit. Minor gaps are the absence of a reference to the inverse link_trigger_action operation, idempotency behavior, and return-value expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters including the confirm gate, the platform enum with region limitation, and actionName's '{packageName}/{actionName}' format. The description's 'Set confirm=true to execute' merely reinforces schema content rather than adding new meaning. Baseline 3 applies per the high-coverage rule.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Unlink an action from a trigger') and identifies the exact HTTP DELETE endpoint. The clarification 'neither resource is deleted' distinguishes it from the delete_trigger family, and its inverse relationship to the link_trigger_action sibling is evident from naming. An agent can tell exactly what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The statement 'The trigger stops invoking the action' implies the use case, but the description never names alternatives such as link_trigger_action to re-establish the link or delete_trigger to destroy the trigger itself. The 'neither resource is deleted' note hints that this is not a deletion tool, yet no explicit when-to-use/when-not-to-use routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_acg_detailARead-only
Get detailed information about a specific Access Control Group
| Name | Required | Description | Default |
|---|---|---|---|
| accessControlGroupNo | Yes | Access Control Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is already conveyed. The description adds that it returns 'detailed information' about a specific ACG but does not disclose response format, pagination, error behavior, or permission requirements. With annotations covering the key behavioral concern, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly states the action and resource with no filler or redundancy. It is immediately scannable and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one well-documented parameter, the description is sufficient to convey the tool's purpose and scope. No output schema is required for understanding the basic operation, and the sibling tool context clarifies naming conventions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for the single required parameter (accessControlGroupNo), which already includes a description. The tool description adds no extra parameter-level semantics beyond the existing schema and the word 'specific', which is implicit in the endpoint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') with a clear resource ('Access Control Group') and scope ('detailed information about a specific'). This distinguishes it from sibling tools like ncloud_list_acgs (which lists all) and ncloud_get_acg_rules (which fetches rules).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives such as ncloud_list_acgs or ncloud_get_acg_rules. The word 'specific' implies it is for a single ACG, but the description does not mention alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_acg_rulesARead-only
List all inbound and outbound rules for a specific ACG
| Name | Required | Description | Default |
|---|---|---|---|
| accessControlGroupNo | Yes | Access Control Group number | |
| accessControlGroupRuleTypeCode | No | Filter by rule type (INBND: inbound, OTBND: outbound). Default: all rules |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals a safe read operation, and the description adds the scope of returning all inbound and outbound rules. It does not disclose additional behavioral details such as pagination, ordering, or any default filtering beyond what the schema already states. The description is consistent with the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the main action and resource. Every word is useful and there is no redundancy or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple read-only list operation with a well-specified schema and clear annotation. The description, combined with the schema, is sufficient for an agent to invoke the tool, though it does not explain return formatting or potential edge cases. Given the simplicity, this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all parameter meanings with descriptions (accessControlGroupNo and accessControlGroupRuleTypeCode with its default). The description adds no additional parameter semantics beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'all inbound and outbound rules for a specific ACG', which distinctly identifies the tool's purpose. It differentiates from sibling tools like ncloud_list_acgs (listing ACGs) and ncloud_get_acg_detail (getting ACG details) by focusing on rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: it is used to retrieve firewall rules for a particular ACG, requiring the ACG identifier. However, there is no explicit guidance on when to use this tool versus alternatives like ncloud_list_acgs or ncloud_get_acg_detail, and no mention of exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_activity_detailARead-only
Get detailed information about a specific cloud activity event. Queries the activity list with a narrow time range and filters by activityId.
| Name | Required | Description | Default |
|---|---|---|---|
| eventTime | Yes | Approximate event time in ISO 8601 format to narrow the search window (e.g., "2024-01-15T10:30:00Z") | |
| activityId | Yes | The activity ID to get details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes the safety profile, and the description adds useful context about the internal mechanism (narrow time-range query, filter by ID), which explains why eventTime is required. However, it does not disclose failure behavior (e.g., what happens if the event falls outside the narrow window) or what specific fields the 'detailed information' contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero filler. The first sentence states the primary purpose upfront, and the second explains the underlying mechanism. This is highly efficient and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only lookup tool with full schema coverage and a readOnlyHint annotation, the description adequately covers purpose and mechanism. The absence of an output schema means it could optionally describe what 'detailed information' includes, but the name and the simplicity of the tool mitigate this gap, making the description sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters with formats and purposes. The description adds value by explaining the relationship between eventTime and activityId (search narrow window, then filter), but it provides no additional syntax or format details beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource ('Get detailed information about a specific cloud activity event') and explains the unique lookup mechanism (querying with a narrow time range and filtering by activityId). This clearly distinguishes it from broad list tools like ncloud_get_activity_logs by emphasizing the targeted, detail-oriented nature of the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied rather than explicit: the mention of a narrow time range and activityId filtering tells the agent this is for targeted detail lookups requiring an approximate event time, but no alternatives, exclusions, or when-not-to-use scenarios are stated. No sibling tools are referenced for comparison, so the agent must infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_activity_logsBRead-only
Get cloud activity tracer logs with filtering by period, service, and user. Uses POST method with JSON body. Time parameters accept ISO 8601 strings and are converted to epoch milliseconds internally.
| Name | Required | Description | Default |
|---|---|---|---|
| nrn | No | Ncloud Resource Name to filter specific resource activities | |
| page | No | Page number (0-based, default 0) | |
| size | No | Page size (default 20) | |
| endTime | Yes | End time in ISO 8601 format (e.g., "2024-01-31T23:59:59Z"). Converted to epoch ms internally. (Required) | |
| startTime | Yes | Start time in ISO 8601 format (e.g., "2024-01-01T00:00:00Z"). Converted to epoch ms internally. (Required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description appropriately reflects a read operation. It adds useful context about the POST method and internal epoch conversion, which goes beyond the schema, but it omits behavioral details like pagination behavior or response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and followed by transport/time details. No filler or repetition, but the mention of 'service and user' could be more explicit about parameter correspondence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers core functionality, HTTP method, and time handling, but for a 5-parameter tool with no output schema, it lacks details on return value structure, pagination expectations, and how to achieve service/user filtering. Given the large sibling set, more guidance would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters, including time format and conversion details, so the baseline is 3. The description adds a high-level mapping to 'period, service, and user' but does not clarify how 'user' maps to the parameters, and 'service' aligns loosely with nrn.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches 'cloud activity tracer logs' with filtering capabilities, which distinguishes it from other log-related tools in the sibling list. However, it does not explicitly differentiate from ncloud_get_activity_detail or ncloud_search_events, making the distinctiveness slightly incomplete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus the many sibling log/event tools. The description implies usage by describing filters, but it does not state prerequisites, exclusions, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_adjustment_typesARead-only
List available adjustment type codes for Auto Scaling policy configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds the context that it returns 'codes' rather than detailed objects. It does not disclose any additional behavioral traits such as pagination or authentication requirements, but with a simple zero-parameter list tool, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the action and resource. It contains no filler or redundant information, earning a perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity—zero parameters, no output schema, and a straightforward list operation—the description is nearly complete. It could have explicitly stated the return format (e.g., an array of code strings), but the purpose is clear enough for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics to clarify. Per the baseline for 0-parameter tools, a score of 4 is appropriate. The description correctly omits any parameter details since none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'List' and resource 'adjustment type codes' are specific and unambiguous. The phrase 'for Auto Scaling policy configuration' clearly scopes the tool to a particular use case, distinguishing it from related tools like ncloud_get_scaling_process_types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when one needs adjustment type codes to configure Auto Scaling policies. It provides clear contextual guidance, though it does not explicitly mention alternatives or when not to use it. Given the uniqueness of the tool, this is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_asg_detailARead-only
Get detailed information about a specific Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| autoScalingGroupNo | Yes | Auto Scaling Group number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true covers the safety profile, so the read-only nature is clear. However, the description adds no extra behavioral context (e.g., response format, error behavior, or rate limits). It does not contradict the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of nine words. It is concise, scannable, and contains no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and a read-only annotation. The description adequately conveys its purpose and scope, though it does not enumerate return fields, which would be helpful given no output schema is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description for autoScalingGroupNo is explicit and covers 100% of parameters. The description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and a clear resource ('detailed information about a specific Auto Scaling Group'). The word 'specific' distinguishes it from list-type siblings like ncloud_list_asgs, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_list_asgs or ncloud_get_launch_config_detail. It does not state prerequisites, exclusions, or the relationship to other ASG tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_block_storage_detailBRead-only
Get detailed information about a specific block storage instance
| Name | Required | Description | Default |
|---|---|---|---|
| blockStorageInstanceNo | Yes | Block storage instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already discloses the read-only safety profile, so the description does not need to state that. However, the description adds no additional behavioral context beyond the annotation—it does not mention what 'detailed information' includes (e.g., size, status, attached server), nor does it describe response format or potential error conditions. Since there is no output schema, the description could have carried more weight here but does not.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action ('Get detailed information') and resource ('specific block storage instance'), with no wasted words. However, it is terse and under-specifies the value, which prevents a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one required parameter and an existing readOnly annotation, this description is minimally viable. However, with no output schema, the description could have been more complete by indicating what 'detailed information' includes or whether there are any constraints (e.g., the instance must exist). It is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the parameter blockStorageInstanceNo is described as 'Block storage instance number to query,' which is unambiguous. The tool description does not add extra semantic detail beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get detailed information about a specific block storage instance' uses a specific verb ('Get detailed information'), identifies the resource ('block storage instance'), and explicitly scopes to 'a specific' instance, distinguishing it from the sibling tool ncloud_list_block_storage (which lists instances) and ncloud_get_block_storage_volume_types (which concerns volume types).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, such as 'use this when you have a blockStorageInstanceNo and need details' or 'use list_block_storage to enumerate all instances first.' The implied use case is present but not stated, and no exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_block_storage_volume_typesARead-only
Get list of block storage volume types available in the region
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so the description's 'Get list' is consistent. The description adds the 'in the region' constraint but no further behavioral details like rate limits or pagination. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. Every word serves a purpose, clearly stating action, resource, and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description adequately covers purpose and parameter role. However, it could mention that the return is a list of volume type identifiers or names for full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter with description 'Region code (e.g. KR, SGN, JPN)'). The description adds 'available in the region' which ties the parameter to the result but does not significantly enhance semantic understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get list') and resource ('block storage volume types') and scopes it to the region, clearly distinguishing it from siblings like ncloud_get_regions and ncloud_list_block_storage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives such as ncloud_list_block_storage for actual volumes or ncloud_get_regions for region codes. The description does not mention usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_bucket_aclARead-only
Get the access control list (ACL) of an Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds the context that this targets Object Storage buckets, but discloses no additional behavioral traits such as response format, permissions required, or error conditions. It is consistent with the annotation, with no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the action and resource. It contains no filler or redundant information, making it efficiently sized for its simple purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one parameter, no output schema, read-only annotation), the description covers the essential purpose and resource. It lacks detail on the return value structure or potential errors, but for such a straightforward read operation, the minimal context is largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage for the single parameter (bucketName) with a clear description 'Name of the bucket'. The tool description adds no extra parameter semantics beyond what the schema already offers, so the high schema coverage warrants a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get the access control list (ACL) of an Object Storage bucket' clearly states a specific verb (Get) and resource (ACL of an Object Storage bucket). It explicitly distinguishes the bucket-level ACL tool from sibling tools like get_object_acl and put_bucket_acl.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. However, the phrase 'Get the access control list of an Object Storage bucket' implies its use case: whenever you need to retrieve a bucket's ACL. This is an implied usage but lacks direct comparisons or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_bucket_locationARead-only
Get the region (location constraint) of an Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to get location for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint: true, so the agent knows this is a safe read. The description adds no additional behavioral context beyond clarifying the term 'location constraint'. It does not disclose edge cases or permission requirements, but with annotations covering the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys the essential purpose with no redundant words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, read-only, no output schema), the description is complete enough. It clearly indicates the return concept (the region) and does not require additional detail. However, a brief note on return format could have made it a 5, but it is not necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the bucketName parameter already has a clear description. The tool description adds the parenthetical 'location constraint' but does not provide additional syntax or formatting details beyond what the schema already conveys, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource: 'region (location constraint) of an Object Storage bucket'. It is specific and distinct from sibling tools like get_bucket_acl or get_bucket_versioning, making the tool's purpose immediately clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is straightforward: this tool is for retrieving a bucket's region. No exclusions or alternatives are mentioned, but for a simple getter, the intended use is unambiguous and does not require contrast with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_bucket_versioningARead-only
Get the versioning state of an Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to check versioning status |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation. The description adds the resource type and the specific state being retrieved, but does not disclose any additional behavioral details such as permissions, return format, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant information. It efficiently conveys the operation without wasting words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool, the description is largely complete. The only gap is that it does not specify the possible return values (e.g., enabled/suspended), but with no output schema and low complexity, this is a minor omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides a full description for the only parameter (bucketName), covering 100% of the schema. The description repeats the parameter's purpose without adding extra syntax or format details, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and identifies the exact resource ('versioning state of an Object Storage bucket'). This clearly differentiates from siblings like ncloud_put_bucket_versioning, which modifies the same state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies a read-only query for checking versioning configuration, with no exclusions or prerequisites. It does not explicitly name alternatives, but the sibling 'ncloud_put_bucket_versioning' makes the contrasting use case obvious from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_cache_image_productsARead-only
List available Cloud Cache image product codes (Redis/Valkey versions)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| productCode | No | Filter by a specific image product code | |
| generationCode | No | Filter by server generation: G2 | G3 | |
| exclusionProductCode | No | Exclude a specific image product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates that this is a safe read-only operation, and the description's 'List available' wording is consistent. The description adds no further behavioral context such as response size, pagination, or whether results are sorted, but this is acceptable given the simple listing nature and existing annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one concise, front-loaded sentence that names the action, resource, and relevant engine versions. There is no filler or wasted wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only listing tool with a fully described schema and no output schema, the description is sufficient for an agent to invoke it correctly. It could optionally mention how the returned codes are intended to be used, but this is not essential for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all four parameters with 100% coverage, including enums for generationCode and clear filter descriptions. The tool description does not add parameter-specific meaning beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (List), a precise resource (Cloud Cache image product codes), and clarifies the engine versions (Redis/Valkey). This clearly distinguishes it from sibling image-product listing tools (e.g., ncloud_get_mysql_image_products) and from ncloud_get_cache_products.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the tool for retrieving Cloud Cache image product codes, but it does not explicitly state when to prefer it over related tools like ncloud_get_cache_products or other database image product listers. No exclusions or alternative guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_cache_instance_detailARead-only
Get detailed information about a specific Cloud DB for Cache (Redis/Valkey) instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudCacheInstanceNo | Yes | Cloud Cache instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint: true, which already declares the operation is read-only. The description adds context about the resource type (Redis/Valkey) but does not disclose other behavioral traits such as required permissions, response structure, or potential errors. Since annotations cover the safety profile, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no extraneous content. It efficiently communicates the essential purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one well-described parameter, read-only annotation), and the description is sufficient for basic invocation. However, with no output schema, the description doesn't explain what 'detailed information' will be returned or any prerequisites, leaving some context gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one parameter (cloudCacheInstanceNo) with a description 'Cloud Cache instance number to query', covering 100% of the schema. The tool description does not add additional meaning beyond this, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Get detailed information') on a specific resource ('a specific Cloud DB for Cache (Redis/Valkey) instance'). It distinguishes itself from sibling tools like ncloud_list_cache_instances (which lists all instances) and other get_*_instance_detail tools by specifying the cache product type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you have a specific instance number and need details, but it does not explicitly state when to use this versus alternatives, nor does it mention exclusions. For example, it doesn't say to use list_cache_instances for a broad overview or to consult other detail tools for other database types.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_cache_productsARead-only
List available Cloud Cache server spec product codes for a given image
| Name | Required | Description | Default |
|---|---|---|---|
| zoneCode | No | Filter by zone code (e.g. KR-1, KR-2) | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| productCode | No | Filter by a specific server spec product code | |
| exclusionProductCode | No | Exclude a specific server spec product code | |
| cloudCacheImageProductCode | Yes | Cloud Cache image product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and the description's 'List' verb is consistent, so there is no contradiction. With annotations already covering the safety profile, the description adds minimal behavioral context: it states the output (product codes) but nothing about pagination, result structure, or how filters interact — a notable gap given there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single 11-word sentence that front-loads the verb and resource with zero filler. No title exists, but the description is appropriately sized for a simple list operation and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one required parameter, full schema coverage, and a read-only annotation, the description covers the essentials: the output (product codes) and the input scoping (given image). Minor gaps — no mention of how the optional filters combine and no return-shape details — are partially mitigated by the schema's parameter documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all five parameters documented in the schema (e.g., zoneCode: 'Filter by zone code (e.g. KR-1, KR-2)', exclusionProductCode: 'Exclude a specific server spec product code'). The description adds no parameter detail beyond what the schema already provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), identifies the exact resource ('Cloud Cache server spec product codes'), and scopes it by input ('for a given image'). The qualifier 'server spec' implicitly differentiates it from the sibling ncloud_get_cache_image_products (which lists image products), though that sibling is not named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like ncloud_get_cache_image_products or ncloud_get_cache_target_vpcs. The use case is inferable — querying available spec codes for a chosen Cloud Cache image before provisioning — but it is only implied, not stated, and no exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_cache_target_subnetsARead-only
List subnets available for creating a Cloud DB for Cache instance in a VPC
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_get_cache_target_vpcs) | |
| isPublic | No | true: public subnets only, false: private subnets only | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudCacheImageProductCode | Yes | Cache image product code (from ncloud_get_cache_image_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds the context that these subnets are tied to a specific VPC and creation use case, but it does not disclose output shape, pagination, or filtering behavior beyond what the schema already provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or redundant restatement of the tool name. It communicates the verb, resource, and scope efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with fully documented parameters and schema coverage, the description plus schema are sufficient for an agent to call it correctly. The lack of an output schema is not a major gap here because the resource being listed is clear from the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters, including their source tools and isPublic semantics. The description adds no extra parameter meaning beyond that, which matches the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List') and resource ('subnets available for creating a Cloud DB for Cache instance in a VPC'), which clearly identifies this as the subnet lookup step for cache instances. It is easily distinguished from siblings like ncloud_get_cache_target_vpcs (VPCs) and the many other get_*_target_subnets tools for MySQL, MSSQL, MongoDB, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for use: it is the tool to call when selecting a subnet for creating a Cloud DB for Cache instance. It does not explicitly name alternatives or exclusions, but the intended placement in the cache creation workflow is clear, and the schema parameter descriptions reference the prerequisite source tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_cache_target_vpcsARead-only
List VPCs available for Cloud DB for Cache
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not add behavioral context beyond the readOnlyHint annotation. It does not disclose permissions, rate limits, or pagination. However, it does not contradict the annotation indicating a read-only operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that efficiently communicates the tool's purpose with no redundant or unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, and the description provides minimal context. It does not explain what kind of VPCs are returned (e.g., all VPCs in the account vs. those compatible with Cache) or how the optional region code affects results. This is adequate for a simple list operation but leaves some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the only parameter (regionCode) with examples. The description adds no additional semantic meaning beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists VPCs available for Cloud DB for Cache, using a specific verb ('List') and resource. It distinguishes from the general 'list_vpcs' sibling by specifying the database context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While the description implies use for Cache-related VPC selection, it does not explicitly mention when to use this tool over alternatives like 'list_vpcs' or 'get_mysql_target_vpcs'. However, the tool name and description provide sufficient context for an AI agent to infer the correct use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_caller_identityARead-only
Identify the owner of the API key this server is using (STS GET /api/v1/caller-identity): id, loginAlias and userType — Customer (main account), Sub (sub account) or Role. Use it to check whether a main-account-only API (e.g. Certificate Manager 2.0) can be called with the current key.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already covers the safety profile, so the description adds real value on top: it discloses the underlying STS endpoint, the returned identity fields, and the meaning of each userType value (Customer/Sub/Role). No auth or rate-limit notes, but for a zero-argument read this is solid extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the verb and resource, then the usage note; every clause carries information. The parenthetical endpoint and the userType breakdown are informative rather than filler, though the sentence is slightly dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry the return-value burden, and it does by listing the three returned fields and interpreting userType. Annotations plus this text give an agent enough to call and interpret it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, and the input schema confirms an empty properties object with 100% coverage, so there is nothing for the description to compensate for. Baseline 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb 'Identify' applied to a precise resource ('the owner of the API key this server is using'), plus it enumerates the returned fields (id, loginAlias, userType). An agent knows exactly what this does without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a concrete when-to-use: to check whether a main-account-only API such as Certificate Manager 2.0 can be called with the current key. Clear operating context, though it names no sibling alternative or exclusion (there is arguably no meaningful one).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_coin_history_listARead-only
Get coin history list. Returns coin balance, usage history, and status for all or specific coins assigned to the account.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| memberNoList | No | Member number list (master/partner only) | |
| discountNoList | No | Coin discount numbers to query (from getDiscountList) | |
| isOrganization | No | Query as Organization master (integrated view) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description aligns with it ('Get'). The description adds that it returns balance, usage history, and status, but does not disclose additional behaviors such as pagination limits, required permissions, or any side effects. Since annotations cover the core safety aspect, this is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loaded with the primary action. Every word contributes to clarifying purpose and scope, with no unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, and the description only gives a high-level summary of the return contents. It does not hint at the optional filtering parameters (e.g., isPartner, isOrganization, memberNoList) or pagination behavior, which are relevant for an agent deciding how to invoke this tool. The schema covers parameter details, but the description lacks sufficient context to fully guide usage for complex queries.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All six parameters have schema descriptions (100% coverage), so the schema carries the parameter meaning. The tool description does not add extra semantic value beyond what the schema already provides, but it does mention 'all or specific coins', which loosely relates to the filtering parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('coin history list'), and clearly states what it returns: 'coin balance, usage history, and status'. It also scopes the operation to 'all or specific coins assigned to the account', which differentiates it from other history/list tools in the sibling set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. It does not mention any exclusions, prerequisites, or alternative tools. The description only states what it does, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_contract_demand_cost_listBRead-only
Get contract-level billing cost list. Returns detailed billing per contract including usage quantities, pricing, and discount amounts for the specified period (max 3 months).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | Yes | End month in yyyyMM format (e.g. 202403, max 3 months range) | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| contractNo | No | Contract number to filter | |
| regionCode | No | Region code (KR, JPN, SGN, USWN, DEN) | |
| startMonth | Yes | Start month in yyyyMM format (e.g. 202401) | |
| memberNoList | No | Member number list (master/partner only) | |
| demandTypeCode | No | Demand type code | |
| isOrganization | No | Query as Organization master (integrated view) | |
| demandTypeDetailCode | No | Demand type detail code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this is a safe, non-mutating read, so the description's burden is lower. It adds genuine value by naming what the response contains (usage quantities, pricing, discount amounts) and the 3-month window restriction, but says nothing about pagination behavior, result size, or permission requirements for the role-gated filters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler; the resource and scope lead, and the period constraint and return contents follow. Slightly more could be squeezed into the second sentence to route the agent among siblings without bloating it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter read-only list tool with a fully documented schema and no output schema, the description covers the essentials: what is returned and the maximum time window. It omits any hint that several filters (isPartner, isOrganization, memberNoList) are role-gated, which is the one meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 11 parameters are already documented in the schema and the baseline is 3. The description only reiterates the contract-level scope and the 3-month window, adding no syntax or semantic detail beyond what the schema entries for startMonth/endMonth already provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Get contract-level billing cost list') and narrows scope to contract granularity, so an agent can tell it apart from a product-level billing tool by name. It stops short of explicitly contrasting itself with the near-identical siblings (ncloud_get_product_demand_cost_list, ncloud_get_demand_cost_list, ncloud_get_contract_usage_list), leaving the distinction to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool returns but never says when to choose it over the closely named alternatives in the billing family, nor does it state prerequisites such as master/partner role for the member-scoped filters. The only guidance is the 'max 3 months' range constraint, which is a limit rather than a usage condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_contract_summary_listBRead-only
Get contract summary list. Returns a summary of contracts grouped by region and contract type with counts for the specified month.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| regionCode | No | Region code (KR, JPN, SGN, USWN, DEN) | |
| memberNoList | No | Member number list (master/partner only) | |
| contractMonth | Yes | Contract month in yyyyMM format (e.g. 202404) | |
| isOrganization | No | Query as Organization master (integrated view) | |
| contractTypeCode | No | Contract type code (e.g. VSVR) | |
| contractStatusCode | No | Contract status: ALL (default), NOML (normal), NLEND (terminated) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read, so the bar is lower. The description adds that results are aggregated/grouped with counts, which is useful context beyond the annotation. However, it doesn't disclose pagination behavior despite pageNo/pageSize parameters, nor whether results are scans over the month.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the action and resource, followed by return semantics. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only aggregate list tool with a fully documented schema and an annotation covering safety, the description covers purpose and shape adequately. Minor gaps: no pagination notes and no differentiation from the other contract-count tools, but nothing critical is missing for a correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema (region codes, month format, status enum, page size, etc.). The description adds no parameter semantics beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get contract summary list') and adds the return shape (contracts grouped by region and contract type with counts for a given month). This is clear, but it doesn't distinguish itself from the sibling contract tools (get_contract_usage_list, get_contract_demand_cost_list), which an agent might easily confuse.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus the other contract/billing siblings. The specified month is the only hint of context; no exclusions, prerequisites, or alternative routing are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_contract_usage_listBRead-only
Get contract usage list. Returns usage details per contract including metering type, usage quantity, and service period for the specified months (max 3 months).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | Yes | End month in yyyyMM format (e.g. 202403, max 3 months range) | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| contractNo | No | Contract number to filter | |
| regionCode | No | Region code (KR, JPN, SGN, USWN, DEN) | |
| startMonth | Yes | Start month in yyyyMM format (e.g. 202401) | |
| memberNoList | No | Member number list (master/partner only) | |
| isOrganization | No | Query as Organization master (integrated view) | |
| contractTypeCode | No | Contract type code | |
| contractStatusCode | No | Contract status: NOML (normal), NLEND (terminated) | |
| productItemKindDetailCode | No | Product item kind detail code (NCP billing classification change, 2026-06-25). Use 'VM' to query VM servers only (otherwise BM may be mixed in), 'BM' for Bare Metal only. Block Storage: BSTAD / BSTBS / BSTBS_BSTAD / CB1 / CB2 / FB1 / FB2. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds the 3-month window constraint and names the returned fields, which is useful, but there is no output schema and it does not describe pagination or the format of the returned usage details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and followed by the return payload and constraint. No filler, though the return-value sentence is somewhat generic.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter read-only query with no output schema, the description covers what is returned at a high level and the range limit. It falls short on the one thing most needed here: disambiguating from the sibling _by_daily variant and clarifying whether results are aggregated per contract or per day.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 12 parameters (including enums for contractStatusCode and productItemKindDetailCode) are already documented in the schema. The description only restates the month-range constraint, adding little beyond the schema; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get contract usage list') and elaborates that it returns usage details per contract with metering type, usage quantity, and service period. However, it does not distinguish itself from the near-identical sibling ncloud_get_contract_usage_list_by_daily, leaving the agent to guess between the two.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes a max 3-month range, but gives no when-to-use guidance, no exclusions, and never mentions the obvious alternative ncloud_get_contract_usage_list_by_daily or ncloud_get_contract_summary_list. The agent gets no routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_contract_usage_list_by_dailyBRead-only
Get daily contract usage list. Returns daily usage breakdown per contract for the specified date range (max 3 months).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| useEndDay | Yes | End day in yyyyMMdd format (e.g. 20240131, max 3 months range) | |
| contractNo | No | Contract number to filter | |
| regionCode | No | Region code (KR, JPN, SGN, USWN, DEN) | |
| useStartDay | Yes | Start day in yyyyMMdd format (e.g. 20240101) | |
| memberNoList | No | Member number list (master/partner only) | |
| isOrganization | No | Query as Organization master (integrated view) | |
| contractTypeCode | No | Contract type code | |
| productItemKindCode | No | Product item kind code | |
| productItemKindDetailCode | No | Product item kind detail code (NCP billing classification change, 2026-06-25). Use 'VM' to query VM servers only (otherwise BM may be mixed in), 'BM' for Bare Metal only. Block Storage: BSTAD / BSTBS / BSTBS_BSTAD / CB1 / CB2 / FB1 / FB2. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read, so the bar is lower. The description confirms it returns per-contract daily data but says nothing about pagination behavior (pageNo/pageSize exist) or result shape; the 3-month cap it mentions is already stated in the schema's param descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, and the core action is front-loaded before the scoping detail. Every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter read tool with no output schema, the description is quite thin: it omits pagination expectations, how contract identity is scoped (contractNo vs memberNoList vs isPartner/isOrganization), and how it differs from the non-daily usage sibling. The rich schema compensates partially, but the definition leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 12 parameters are documented in the schema itself, which sets baseline 3. The description only echoes the date-range/3-month concept and adds nothing about isPartner, isOrganization, memberNoList, or the enum-driven productItemKindDetailCode usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get daily contract usage list') and clarifies the output granularity ('daily usage breakdown per contract for the specified date range'). However, it never differentiates from the sibling ncloud_get_contract_usage_list (the non-daily variant), so an agent must infer which one to call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'max 3 months' note is a constraint the schema already states, not selection guidance. There is no explicit when-to-use-this-vs-alternatives, even though ncloud_get_contract_usage_list, ncloud_get_contract_summary_list and ncloud_get_contract_demand_cost_list are obvious near-neighbors.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_cost_relation_code_listARead-only
Get cost relation code list. Returns mapping between contract types, product item kinds, rating types, metering types, demand types, and product categories. Useful for understanding billing code relationships.
| Name | Required | Description | Default |
|---|---|---|---|
| contractTypeCode | No | Contract type code (e.g. VSVR) | |
| meteringTypeCode | No | Metering type code | |
| productCategoryCode | No | Product category code (e.g. COMPUTE) | |
| productItemKindCode | No | Product item kind code | |
| productRatingTypeCode | No | Product rating type code | |
| productItemKindDetailCode | No | Product item kind detail code (NCP billing classification change, 2026-06-25). Use 'VM' to query VM servers only (otherwise BM may be mixed in), 'BM' for Bare Metal only. Block Storage: BSTAD / BSTBS / BSTBS_BSTAD / CB1 / CB2 / FB1 / FB2. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the tool as read-only. The description adds value by explaining that the tool returns a mapping and enumerates the specific entities involved, giving useful context about the output beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and contains no filler. Every sentence contributes meaning: the first states what it does, the second explains its utility.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Since there is no output schema, the description provides a high-level indication of return content (the mapping), but it does not detail the response structure or explain how the optional filter parameters affect results. Adequate for a simple list tool, but leaves some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all six parameters. The description itself adds no parameter-specific information, and thus the score remains at the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get cost relation code list') and resource, and specifies what the tool returns (mapping between contract types, product item kinds, rating types, metering types, demand types, and product categories). This differentiates it from sibling cost tools like ncloud_get_price_list or ncloud_get_product_category_list by focusing on code relationships rather than prices or categories.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Useful for understanding billing code relationships' provides a clear context for when to use this tool. However, it does not explicitly mention when not to use it or name alternative tools, which would warrant a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_credit_history_listBRead-only
Get credit history list. Returns credit balance, usage history per service, and validity periods for all or specific credits.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | No | End month in yyyyMM format | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| startMonth | No | Start month in yyyyMM format | |
| memberNoList | No | Member number list (master/partner only) | |
| discountNoList | No | Credit discount numbers to query (from getDiscountList) | |
| isOrganization | No | Query as Organization master (integrated view) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals this is a safe read operation. The description adds value by specifying what the response contains (credit balance, usage history, validity periods), but it does not disclose additional behavioral details such as pagination behavior, authentication requirements, or rate limits. This is acceptable given the annotations cover the safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, only two sentences, and front-loads the primary action. It avoids unnecessary details and every phrase adds value. This is an ideal length for a simple list-query tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with no output schema, the description adequately explains the return payload (balance, usage, validity periods). It does not mention pagination behavior, but the schema's pageNo/pageSize parameters already hint at this. The tool is moderately complex with 8 optional parameters, but the schema covers them fully, and the description provides sufficient context for selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for all 8 parameters, which is 100% schema coverage. The description does not add any parameter-specific semantics beyond a vague hint of 'all or specific credits', which is already reflected in the schema (e.g., discountNoList, memberNoList). The schema carries the heavy lifting, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('credit history list'), and clearly explains the returned data (credit balance, usage history per service, validity periods). It does not explicitly distinguish this tool from sibling tools, but the resource name is specific enough to avoid ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus alternatives, nor does it state any exclusions or prerequisites. The intended use is only implied by the tool's name and high-level description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_current_regionARead-only
Get the currently active Ncloud region code and name (and the zone this server is bound to: public or gov)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds the returned content (region code, name, zone binding) but does not disclose auth needs, rate limits, pagination, or error behavior beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence names the primary return first, then adds the zone detail in parentheses. Every clause earns its place with no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of a zero-parameter read tool with no output schema and clear annotations, the description sufficiently explains what is returned (region code, name, and public/gov zone). It could be slightly richer about output format, but it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The empty schema provides full coverage, and the description correctly does not need to explain any parameter syntax.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ("Get") and resource ("currently active Ncloud region code and name"), plus the zone binding (public or gov). The phrase "currently active" distinguishes it from sibling list operations such as ncloud_get_regions and ncloud_get_zones.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says what the tool returns but never states when to use it over alternatives like ncloud_get_regions or ncloud_set_region. There are no exclusions, prerequisites, or routing guidance, leaving usage to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_custom_resourceARead-only
Get detailed information about a specific custom resource in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| resourceId | Yes | Custom resource ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, and the description does not contradict this. Yet it adds no additional behavioral context (e.g., error behavior, return format, permission requirements) beyond what the annotation and name already imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, direct sentence with no filler. The purpose is front-loaded ('Get detailed information') and the resource and scope are immediately clear. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter getter with a read-only annotation, the description is adequate. It indicates the action, the resource type, and the scope. It does not specify return fields or error cases, but the lack of an output schema makes that less critical. Still, it could be slightly more descriptive about what 'detailed information' entails.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents the only parameter (resourceId) with a clear description ('Custom resource ID'), and schema coverage is 100%. The description adds no new parameter details, so it meets the baseline without further contribution.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed information about a specific custom resource in Cloud Insight'), clearly distinguishing it from list, create, update, and delete operations. The scope ('in Cloud Insight') adds context that separates it from other resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the tool is for fetching a single resource when you have a specific resource ID, as opposed to listing resources. However, it does not explicitly state when not to use it or mention alternatives like list_custom_resources, so it lacks explicit exclusions but provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_dashboard_widget_imageARead-only
Download a dashboard widget image (binary) from Cloud Insight. Returns content type and size, plus base64 data when small; pass savePath to write the image to a file instead.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | Yes | End time in Unix epoch milliseconds | |
| savePath | No | Local file path to save the image to; when given, the image bytes are not returned inline | |
| widgetId | Yes | Widget ID (see ncloud_get_dashboard_widgets) | |
| startTime | Yes | Start time in Unix epoch milliseconds | |
| dashboardId | Yes | Dashboard ID | |
| widgetResolutionMode | No | Resolution: AUTO (same as dashboard, default) or HIGH (finer) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true, so the description adds meaningful behavior: it discloses the return payload (content type and size), a conditional output shape (base64 only when small), and an alternate delivery mode (savePath writes to disk instead of inlining). The size threshold 'when small' is left vague, keeping it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences, front-loaded with the core action and followed by the return/delivery behavior. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does the work of explaining what comes back (content type, size, base64) and how savePath changes the response, which is sufficient for a read-only download tool. The exact 'small' cutoff for base64 versus file output is the only notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all six parameters are already documented in the schema. The description restates savePath semantics and hints at output-size-dependent behavior but adds no syntax or format detail beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Download') and resource ('dashboard widget image') with the source service (Cloud Insight), and the binary-image nature clearly separates it from listing siblings like ncloud_get_dashboard_widgets or ncloud_list_dashboards.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the task description but the description never states when to use this versus ncloud_query_widget_preview or the widget-listing tool, nor any prerequisites. The savePath note guides invocation mechanics rather than tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_dashboard_widgetsARead-only
Get the list of widgets for a specific Cloud Insight dashboard.
| Name | Required | Description | Default |
|---|---|---|---|
| dashboardId | Yes | Dashboard ID to get widgets for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already discloses the read-only safety profile, and the description adds the scoping constraint that the operation is for a specific dashboard, not global. However, it does not add behavioral details such as return format, pagination, or required permissions, but given the low complexity and annotation coverage, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that fronts the key information (action and resource) with no filler or unnecessary repetition. It earns its place completely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter and no output schema, the description provides enough to understand what to expect (a list of widgets for the given dashboard). Although it omits details about widget structure or response format, the context is sufficient for this tool's complexity, so a 4 is justified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for the single parameter 'dashboardId' with a clear description ('Dashboard ID to get widgets for'), so the schema carries the semantic load. The description only repeats the concept of a specific dashboard without adding syntax, format, or additional context, warranting the baseline score for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Get the list of widgets') and the resource ('a specific Cloud Insight dashboard'), using a specific verb and scoping. It also implicitly distinguishes from siblings like ncloud_list_dashboards (lists dashboards, not widgets) and ncloud_get_dashboard_widget_image (gets widget image, not list).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool does but provides no explicit guidance on when to use it versus alternatives, such as ncloud_query_widget_preview or ncloud_get_dashboard_widget_image. There is no mention of prerequisites, exclusions, or context that would help an agent choose this tool over a sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_ddos_event_detailARead-only
Get detailed information about a specific Anti-DDoS security event. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| ticketId | Yes | The DDoS event ticket ID to get details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the operation is read-only. The description adds the subscription eligibility requirement, which is useful, but does not disclose error behavior, required permissions beyond subscription, or return format. With annotation covering the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the main action, and contains no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only detail tool, the description covers purpose and eligibility. No output schema exists, but the tool's return is implied as event details; still, it could mention response structure or error conditions. Given the low complexity, this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter ticketId, so the schema fully documents its meaning. The description does not add any new parameter semantics beyond what the schema already provides, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Get detailed information') and resource ('specific Anti-DDoS security event'). It distinguishes from sibling list_ddos_events by focusing on a single event detail rather than a list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it retrieves details for a specific event and notes the Security Monitoring subscription requirement. However, it does not explicitly name alternatives like list_ddos_events or state when-not-to-use, but the context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_demand_cost_listBRead-only
Get monthly billing cost list. Returns total billing amounts including discounts, VAT, and payment status for the specified period (max 3 months).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | Yes | End month in yyyyMM format (e.g. 202403, max 3 months range) | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| startMonth | Yes | Start month in yyyyMM format (e.g. 202401) | |
| memberNoList | No | Member number list (master/partner only) | |
| isOrganization | No | Query as Organization master (integrated view) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds the 'max 3 months' range constraint and clarifies that return values include discounts, VAT, and payment status. However, it does not disclose pagination behavior or the effect of partner/organization flags, which are relevant for a tool with these parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no irrelevant detail. It front-loads the core purpose and adds only essential return-value context. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with 100% schema coverage and a readOnlyHint annotation, the description provides adequate context: it states what is returned and the range limit. It does not explain partner/organization semantics, but those are documented in the schema. The main gap is the lack of differentiation from close sibling tools, which is more of a usage-guideline issue.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all 7 parameters, achieving 100% coverage. The tool description adds no extra parameter information beyond what the schema already states (e.g., format of startMonth/endMonth, pageSize limits). Baseline 3 is appropriate since schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a read operation for monthly billing cost data with a specific verb ('Get') and resource ('monthly billing cost list'). It adds useful context about what is included (discounts, VAT, payment status). However, it does not differentiate from similarly named sibling tools like ncloud_get_product_demand_cost_list or ncloud_get_contract_demand_cost_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the many related billing/cost tools (e.g., ncloud_get_product_demand_cost_list, ncloud_get_contract_demand_cost_list). The description does not mention alternatives, prerequisites, or context such as whether this is the default/all-services cost view.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_deny_allow_group_detailARead-only
Get detailed information about a specific Deny-Allow Group
| Name | Required | Description | Default |
|---|---|---|---|
| networkAclDenyAllowGroupNo | Yes | Deny-Allow Group number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint: true, so the read-only nature is known. The description adds only 'Get detailed information', which reiterates the action without enriching behavioral context like response structure, error handling, or required permissions. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded verb, zero filler. Perfectly concise for a simple get-by-id operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only tool with no output schema, the description is adequate. It tells the user the action and resource. Some additional context about return contents could be useful, but given simplicity and annotation, completeness is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter 'networkAclDenyAllowGroupNo' described as 'Deny-Allow Group number to query'. The description itself adds no extra meaning beyond the schema, which already documents the purpose of the single parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Get' with resource 'specific Deny-Allow Group', clearly distinguishing it from sibling tools like list_deny_allow_groups. The 'specific' qualifier signals this fetches one entity by identifier, differentiating it from list operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need details for an individual Deny-Allow Group, but provides no explicit when/or not to use alternatives such as the list tool. No exclusions or alternative guidance is given, so the context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_discount_listBRead-only
Get discount list. Returns all discounts (product discounts, credits, coins) assigned to the account with their validity periods and amounts.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | No | End month in yyyyMM format | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| startMonth | No | Start month in yyyyMM format (max 3 months range) | |
| memberNoList | No | Member number list (master/partner only) | |
| isOrganization | No | Query as Organization master (integrated view) | |
| isValidDiscount | No | Filter only valid (active) discounts | |
| discountTypeCode | No | Discount type: PRODUCT (service discount), CREDIT, COIN |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds some behavioral context by stating it returns discounts 'assigned to the account' and includes 'validity periods and amounts,' which clarifies the response scope. However, it does not disclose pagination behavior, default filtering, or the effect of parameters like isPartner or isValidDiscount.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the purpose and then elaborates with the key return elements. There is no wasted text, and it is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 9 optional parameters and no output schema, the description is too brief to provide adequate context. It does not explain how to use the date range, filtering, or account-type parameters, nor does it describe the response structure beyond 'validity periods and amounts.' The tool would be hard to invoke correctly without consulting each parameter schema individually.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's mention of 'product discounts, credits, coins' maps to the discountTypeCode enum, adding minimal semantic value. Otherwise, it does not explain parameter interactions or provide syntax details beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get discount list' with a specific resource and scope, enumerating the types of discounts (product discounts, credits, coins) and what is returned (validity periods and amounts). It differentiates from sibling tools like ncloud_get_coin_history_list and ncloud_get_credit_history_list by explicitly covering all discount types, but it does not name alternatives directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives. The description merely states what it does without mentioning any exclusions, prerequisites, or comparison to other discount-related tools. The presence of 9 optional parameters and many sibling tools makes this a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_extended_statusBRead-only
Get the Extended Metric collection status for servers in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) | |
| servers | Yes | Server instance numbers to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation, and it adds the resource context (Extended Metric collection status). However, it does not disclose additional behavioral details such as what the status values mean, whether filtering is applied, or any response format nuances. Given the annotation already declares a safe read operation, this is a baseline acceptable disclosure but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundant or irrelevant content. It efficiently communicates the tool's purpose without wasting tokens.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple read operation with two well-described parameters and no output schema, the description provides adequate context on what the tool returns ('Extended Metric collection status'). However, it does not explain what 'status' entails or how to interpret the response, leaving some ambiguity for an agent unfamiliar with Cloud Insight. Still, for a getter of this simplicity, it is minimally sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for both parameters: prodKey as 'Product key (cw_key)' and servers as 'Server instance numbers to check.' The description adds no extra meaning beyond the schema, so the baseline score of 3 is appropriate since the schema covers all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with a clear resource: 'Extended Metric collection status for servers in Cloud Insight.' It identifies the domain (Cloud Insight) and scope (servers), distinguishing it from generic monitoring tools. However, it does not explicitly differentiate from sibling tools like ncloud_query_monitoring_data or ncloud_search_metric_list, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, exclusions, or related tools. The description only states what the tool does, leaving the agent to infer usage context from the name and schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_fabric_cluster_detailBRead-only
Get detailed information about a specific fabric cluster
| Name | Required | Description | Default |
|---|---|---|---|
| fabricClusterNo | Yes | Fabric cluster number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation. The description adds minimal context by specifying 'specific' (implying a single cluster), but does not disclose response details, error behavior, or required permissions beyond what annotations imply. It is consistent with the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of nine words, directly stating the purpose with no fluff or redundancy. It is front-loaded and every word contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter, the description is adequate for basic invocation. The schema covers the parameter and annotations cover safety. However, it lacks guidance on what 'detailed information' includes or how to find the cluster number, which could be helpful for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a descriptive parameter name and description ('Fabric cluster number to query'). The tool description does not add any extra meaning about the parameter's format, source, or usage beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get detailed information about a specific fabric cluster.' It uses a specific verb and resource and distinguishes from listing tools like ncloud_list_fabric_clusters by focusing on a single cluster. However, it does not explicitly name alternatives or clarify the relationship to sibling tools like ncloud_get_fabric_cluster_pools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention how to obtain the fabricClusterNo, whether to use it after listing clusters, or any prerequisites. There is no exclusionary or comparative language.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_fabric_cluster_poolsBRead-only
List available fabric cluster pools (physical resource pools)
| Name | Required | Description | Default |
|---|---|---|---|
| fabricClusterPoolNoList | No | Filter by fabric cluster pool numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, so the description does not need to repeat that. The description adds a small clarification ('physical resource pools') but provides no details on pagination, response format, or filtering behavior beyond what the schema already contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately states the action and resource. It contains no filler or redundancy, earning the highest score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple list operation with a readOnly annotation and a single, well-documented optional parameter. The description and schema together are sufficient for the agent to select and invoke the tool correctly, though the absence of an output schema means the agent must infer the return type from the phrase 'List available...'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage: the sole parameter fabricClusterPoolNoList is described as 'Filter by fabric cluster pool numbers'. The tool description adds no extra meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List available fabric cluster pools (physical resource pools)' uses a specific verb (List) and identifies the exact resource (fabric cluster pools), making the tool's purpose clear. It distinguishes the resource type from sibling tools like ncloud_list_fabric_clusters, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus related tools such as ncloud_get_fabric_cluster_detail or ncloud_list_fabric_clusters. It does not state any context, prerequisites, or exclusions, leaving the agent to infer usage solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_file_pluginARead-only
Get file monitoring plugin configuration for a specific server instance.
| Name | Required | Description | Default |
|---|---|---|---|
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a read-only operation, and the description's verb 'Get' aligns with that. The description adds minimal extra behavioral context, such as the scoping to a specific server instance, but doesn't disclose what happens if the instance is invalid or the structure of the returned configuration. The annotation covers the safety profile, so a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that states the action, resource, and scope without any redundant words or filler. It is front-loaded with the verb and fully informative in one line.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required parameter, read-only annotation, no output schema), the description covers the essential purpose and scope. It doesn't detail the response format, but for a simple configuration retrieval, this is not a significant gap. It is complete enough for an agent to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage for the single parameter 'instanceNo' with a clear description ('Server instance number'). The description's word 'specific' reinforces that this parameter identifies a unique instance but adds no new semantic information beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and clearly identifies the resource ('file monitoring plugin configuration') and the scope ('for a specific server instance'). It distinguishes itself from sibling tools like ncloud_list_file_plugins, which implies listing all configurations, and ncloud_add_file_plugin/remove_file_plugin, which are mutations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a specific server instance' implies this tool is for retrieving a single instance's configuration rather than listing all, but it does not explicitly state when to use this versus alternatives like list_file_plugins, nor does it mention exclusions. Usage context is implied rather than explicitly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_flow_log_configARead-only
Get FlowLog configuration list. Returns all FlowLog configurations or filters by network interface number.
| Name | Required | Description | Default |
|---|---|---|---|
| networkInterfaceNo | No | Network interface number to filter FlowLog configurations |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a safe read operation. The description adds the behavioral nuance that it returns all configurations by default and filters when a network interface number is provided. This is helpful but minimal; no additional context about response format, pagination, or permissions is given. The description is consistent with the annotation, so no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two crisp sentences with no filler. It leads with the action ('Get'), specifies the resource ('FlowLog configuration list'), and immediately explains the optional behavior. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one optional parameter and no output schema, the description is complete enough. It covers the two possible behaviors (all vs. filtered) and implies the return type is a list. It does not enumerate fields of a FlowLog configuration, but for this straightforward operation that is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the single parameter (networkInterfaceNo) with 100% coverage. The description reiterates the filtering functionality but adds no new semantic detail beyond what the schema provides. Baseline 3 is appropriate since the schema handles the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb+resource: 'Get FlowLog configuration list.' It further explains the exact behavior: returns all configurations or filters by network interface number. This unambiguously distinguishes it from the sibling enable/disable flow log tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description communicates when to use the tool: to retrieve flow log configurations, either in full or filtered. It does not explicitly mention alternatives or exclusions, but the read intent is clear from the context and the readOnlyHint annotation. There are no close sibling tools that do the same thing, so this is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_ids_event_detailARead-only
Get detailed information about a specific IDS intrusion detection event. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| ticketId | Yes | The IDS event ticket ID to get details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already covers the safety profile, so the description adds value by noting the subscription constraint, which is a behavioral prerequisite. It does not describe the return format or potential errors, but the annotation lowers the bar. This additional context about access eligibility is meaningful beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. It front-loads the action and resource, then adds the subscription constraint. Every sentence carries useful information with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should ideally indicate what 'detailed information' includes. The description is adequate for a simple read operation with one well-defined parameter, but the response structure and any notable fields (e.g., event time, source IP) are left unspecified. This is a clear gap for a 'get detail' tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the parameter 'ticketId' is clearly described as 'The IDS event ticket ID to get details for'. The description adds no further parameter semantics, so the schema carries the full burden. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('IDS intrusion detection event'), clearly distinguishing it from list-type sibling tools like ncloud_list_ids_events. It also names the exact object (specific event) and the service (Security Monitoring), so the agent knows precisely what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states a clear eligibility requirement ('Only for users subscribed to the Security Monitoring service'), which guides when the tool can be used. It implies that this tool is for retrieving details of a specific event, contrasting with listing tools, but it does not explicitly name alternatives or exclude cases beyond the subscription requirement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_init_script_detailARead-only
Get detailed information about a specific init script
| Name | Required | Description | Default |
|---|---|---|---|
| initScriptNo | Yes | Init script number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, so the description only needs to add additional context. However, it adds none beyond restating the tool's purpose—no information about return format, error behavior, or any constraints. The description is consistent with the annotation but provides no extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the verb and resource, with no filler or repetitive content. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required parameter, readOnlyHint annotation, and no output schema, the description is minimally adequate. However, it does not indicate what 'detailed information' includes (e.g., script name, creation time, content), which could help the agent anticipate the response. For such a simple tool, this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the single parameter initScriptNo described as 'Init script number to query'. The description adds no additional parameter semantics, but the baseline of 3 is appropriate when the schema fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed information about a specific init script'), clearly distinguishing it from listing all init scripts or creating/deleting one. This matches the pattern of sibling tools like ncloud_list_init_scripts and ncloud_create_init_script.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the word 'specific' and the contrast with sibling 'list_init_scripts', but the description does not explicitly state when to use this tool over list/create/delete alternatives. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_integrationARead-only
Get detailed information about a specific Cloud Insight integration.
| Name | Required | Description | Default |
|---|---|---|---|
| integrationId | Yes | Integration ID to retrieve details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description ('Get') is consistent with that. No contradiction exists, but the description adds minimal behavioral context beyond the annotation—no mention of response details, pagination, or other traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. It states the action and resource immediately, making it optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter read operation with a readOnly annotation, the description is mostly sufficient. However, since there is no output schema, the phrase 'detailed information' is somewhat vague—it does not specify what details are returned, which is a minor completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with the integrationId parameter already described as 'Integration ID to retrieve details for'. The description's phrase 'specific' adds no new semantic meaning beyond what the schema provides, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with the resource 'Cloud Insight integration' and the qualifier 'specific', clearly distinguishing it from list/create/update/delete siblings. It unambiguously indicates a get-by-ID operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is given on when to use this tool versus alternatives. It is implicitly clear that this complements ncloud_list_integrations, but the description does not name the alternative or mention prerequisites like obtaining an integration ID.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_launch_config_detailARead-only
Get detailed information about a specific launch configuration for Auto Scaling
| Name | Required | Description | Default |
|---|---|---|---|
| launchConfigurationNo | Yes | Launch configuration number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, and the description ('Get detailed information') is consistent with a read operation. It adds context that the tool is for Auto Scaling but does not disclose return value details or any potential error/fulfillment behavior, though the read-only nature reduces the need for extensive disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence that front-loads the action and resource. No filler or redundant phrasing; every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter and no output schema, the description is mostly complete. However, 'detailed information' is vague and could specify what attributes are returned (e.g., image, instance type, user data), but this does not severely hinder use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the only parameter (launchConfigurationNo as 'Launch configuration number to query'), giving 100% schema description coverage. The description does not add additional meaning beyond the schema, meeting the baseline for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed information about a specific launch configuration'), clearly scoped to Auto Scaling. This distinguishes it from sibling tools like list_launch_configs (listing) and create/delete_launch_config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage when a specific launchConfigurationNo is known, but it does not explicitly mention alternatives or when not to use this tool. No reference to sibling list/delete/create tools is provided, leaving usage guidance mostly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_load_balancer_detailARead-only
Get detailed information about a specific load balancer instance
| Name | Required | Description | Default |
|---|---|---|---|
| loadBalancerInstanceNo | Yes | Load balancer instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, so the agent knows this is a safe read operation. The description adds only 'detailed information,' which is generic and does not disclose response format, pagination, or any additional behavioral traits. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It immediately states the purpose and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only tool, the description is adequate. However, since there is no output schema, it would be slightly more complete if it indicated what kind of 'detailed information' is returned (e.g., configuration, health, IPs). Still, the tool is understandable as-is.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the loadBalancerInstanceNo parameter is described as 'Load balancer instance number to query.' The tool description adds no further parameter context, so it relies on the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('get'), identifies the resource ('load balancer instance'), and scopes it to 'a specific' instance. This clearly distinguishes it from sibling tools like ncloud_list_load_balancers, which lists instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'specific' implies this tool is for querying a single instance by number, contrasting with list operations, but there is no explicit guidance on when to use this versus alternatives like ncloud_list_load_balancers or ncloud_get_target_group_detail. Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_log_count_by_periodBRead-only
Get log counts over a time interval in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | End time (Unix ts or relative e.g. now) | |
| interval | No | Bucket interval: 1d/1h/1m | |
| startTime | No | Start time (Unix ts or relative e.g. now-1h) | |
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is known. The description adds no further behavioral context, such as aggregation behavior, return format, default region behavior, or rate limits, leaving structured fields to carry the disclosure burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted text. It is appropriately sized for a simple read-only count tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema is fully described and annotations cover the safety profile, but the description does not route the agent among sibling log-count tools or clarify expected output. It is minimally adequate rather than complete for choosing this tool over alternatives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters, including time formats, interval examples, and region defaults. The description adds only the high-level notion of a time interval, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (get log counts) and scopes it to a time interval in Cloud Log Analytics. It is clearer than a tautology, but it does not explicitly differentiate itself from sibling tools such as ncloud_get_log_count_total, ncloud_get_log_count_recent, and ncloud_get_log_count_by_type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no explicit guidance on when to use this tool versus the related log-count tools. The phrase 'over a time interval' implies period-based counting, but the description does not state exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_log_count_by_typeBRead-only
Get aggregated log counts by type (server or log_name) in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | Aggregation type | |
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read, and the description adds that results are aggregated (not raw log entries). It says nothing about the time window covered, whether results are grouped and returned in what shape, or result limits — gaps that matter given there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the aggregation dimension front-loaded and no filler. It is efficient, though it is so brief that it sacrifices the differentiation a slightly longer description could have provided.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only count tool with fully documented parameters this is minimally adequate, but with no output schema the description should convey the return shape and the (undocumented) time scope of the aggregation, and it should distinguish this tool from the other log-count siblings. Those omissions leave real ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both 'type' (enum server/log_name) and 'regionCode' (with its default and format) are fully documented in the schema. The description only repeats the type enum values and adds nothing about the region parameter, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('aggregated log counts') and disambiguates the aggregation dimension ('by type (server or log_name)'), which is more than a bare restatement of the name. However, it does not distinguish itself from the sibling count tools (ncloud_get_log_count_total, ncloud_get_log_count_recent, ncloud_get_log_count_by_period), so the four count variants remain ambiguous from the description alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no mention of alternatives, despite three sibling tools that fetch log counts over different dimensions/time windows. The enum values indicate the aggregation key but not when an agent should pick this count tool rather than the total/recent/by-period variants.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_log_count_recentCRead-only
Get the recent log count in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes the safety profile, so the description only needs to add context. It adds none: 'recent' is never defined (which window? default lookback?), and no return shape, granularity, or aggregation scope is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is well-formed, though its brevity comes at the cost of the specificity a sibling-disambiguation case demands.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with no output schema this could be adequate, but the central ambiguity — what time range 'recent' covers and how it differs from the other count variants — is left unaddressed, which is exactly what an agent needs to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so regionCode with its enum list and default is fully documented in the schema. The description adds nothing about the parameter, which is acceptable at this coverage level (baseline 3).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource: get the recent log count, scoped to Cloud Log Analytics. However, it does nothing to distinguish it from the three near-identical siblings (ncloud_get_log_count_total, ncloud_get_log_count_by_period, ncloud_get_log_count_by_type), which an agent must choose between.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no conditions, no named alternatives. With four log-count tools in the toolset, the absence of any routing hint (e.g. 'use for the last N minutes' vs. get_log_count_total) leaves selection to guesswork.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_log_count_totalBRead-only
Get the total collected log count in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation. The description adds no behavioral context such as counting semantics, aggregation window, pagination, or rate limits, so it contributes little beyond the structured annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single, front-loaded sentence with no filler or repetition. Every word serves the purpose statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with an annotation and a fully described schema, the description is minimally sufficient. However, in a namespace crowded with several log-count variants, it fails to explain how it relates to or differs from those siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single regionCode parameter is fully documented with enum-like examples and a default. The description adds no parameter meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Get the total collected log count') and scopes it to Cloud Log Analytics. The word 'total' implicitly distinguishes it from siblings like ncloud_get_log_count_recent, ncloud_get_log_count_by_period, and ncloud_get_log_count_by_type, though it does not name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no when-to-use guidance, no prerequisites, and no explicit alternative tool for narrower counts. It only restates what the tool returns, leaving routing decisions to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_log_export_historyCRead-only
Get the log export history in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-100, default 1) | |
| pageSize | No | Page size (20-100, default 20) | |
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true the safety profile is already covered by annotations, but the description adds nothing beyond that: it doesn't say what the history records (past export jobs, their statuses, destinations), whether results are paginated, or how region scoping affects visibility. For a history-listing tool, this leaves the behavior essentially opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or redundancy. It is efficiently structured, though its brevity stems partly from under-specification rather than deliberate economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A read-only list tool with three optional, well-documented parameters and no output schema, so nothing critical is missing per the structural data. However, the description never explains what the returned history contains or how it relates to the export siblings, leaving the agent with a gap that annotations and schema cannot fill.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so pageNo, pageSize, and regionCode are fully documented in the schema with ranges and defaults. The description adds no additional parameter meaning, which is acceptable at the baseline but earns no extra credit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb and resource ("Get the log export history"), but it is close to a restatement of the tool name and adds only the domain qualifier "in Cloud Log Analytics." It does not distinguish this from related siblings like ncloud_export_logs or ncloud_list_export_buckets, so an agent cannot tell from the text alone which of the export-family tools to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as ncloud_export_logs (which triggers exports) or ncloud_list_export_buckets. The agent is left to infer the correct context from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_login_aliasARead-only
Get the sub-account login alias (the account-level login access key used in the sub-account console URL).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read, so the description's burden is lower. It adds useful domain context (the alias is an account-level key surfaced in the sub-account console URL) but discloses no auth requirements, scoping, or return-format behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no waste, and the parenthetical is a genuine clarification of an otherwise ambiguous term rather than filler. Slightly compressed, but complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only getter with annotations covering the safety profile and no output schema to explain, this is nearly enough; only the scoping (which sub-account's alias) is left unaddressed, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline of 4 applies; there is no parameter meaning for the description to add or omit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('sub-account login alias'), and the parenthetical defines exactly what the alias is (account-level login access key used in the sub-account console URL). This clearly contrasts with the set_login_alias sibling, though it never names alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the read-only getter form: call it to retrieve the alias. There is no explicit statement of when to use it versus the setter sibling or any other access-key tool, and no prerequisites noted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_log_usageBRead-only
Get the Cloud Log Analytics storage capacity and usage.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes that this is a safe read, so the bar is lower. The description adds that the read is scoped to storage capacity and usage, but says nothing about units, aggregation period, region dependency, or return shape, which would be useful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the resource front-loaded after the verb. No padding, though it is minimal enough that it leaves little room for the guidance a healthy definition would carry.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter read-only tool with no output schema, the description covers the what but not the return contents or how the region default affects results. It is minimally adequate but an agent cannot predict what the response contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the single regionCode parameter (with its defaulting behavior and example values) is fully documented in the schema. The description adds no parameter-level meaning, which is the expected baseline when the schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and a specific resource ('Cloud Log Analytics storage capacity and usage'), which is concrete and distinguishable from the many count/search/export log siblings. It stops short of naming any alternative tool, so it doesn't reach the sibling-differentiation bar of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives among the numerous log-related siblings. The agent must infer usage purely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_maintenance_detailARead-only
Get detailed information about a specific planned maintenance schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| maintenanceId | Yes | Planned maintenance ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so the description does not need to restate safety. The description adds minimal behavioral context, only that it returns 'detailed information' without specifying what that includes. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It clearly and efficiently communicates the core purpose of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and a read-only annotation, but there is no output schema. The description is vague about what 'detailed information' includes and does not mention how to obtain the maintenanceId. It is adequate for a basic retrieval but leaves room for more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter maintenanceId with the description 'Planned maintenance ID'. Since schema description coverage is 100%, the description adds no additional meaning beyond what the schema already provides, resulting in the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get detailed information about a specific planned maintenance schedule.' It uses a specific verb ('get') and resource ('planned maintenance schedule'), and the word 'specific' distinguishes it from list operations like ncloud_list_maintenances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the name and description, but there is no explicit guidance on when to use this tool versus alternatives. It does not mention that maintenanceId should be obtained from ncloud_list_maintenances or that this is the detail counterpart to list. No exclusions or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_member_server_image_detailARead-only
Get detailed information about a member server image instance
| Name | Required | Description | Default |
|---|---|---|---|
| memberServerImageInstanceNo | Yes | Member server image instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already discloses the safe read-only nature, and the description is consistent with it. However, beyond that, the description adds little behavioral context: it does not describe what specific details are returned, any error conditions, or other traits. The annotation lowers the bar, but the description still offers minimal additional value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the tool's purpose. It contains no filler or redundant information, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only detail-getter with one parameter, the description is adequate but lacks an indication of what fields make up the 'detailed information'. Since there is no output schema, the agent is left guessing what will be returned. This prevents the description from being fully complete, though the simplicity of the tool means it is minimally viable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the parameter fully with the description 'Member server image instance number to query', and the tool description adds no extra semantic detail about the parameter. Since schema coverage is 100%, the baseline is 3, and the description does not go beyond that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the resource ('member server image instance'), making it easy to distinguish from list-type tools like ncloud_get_member_server_image_list and from the related ncloud_get_server_image_detail. The verb and object are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when you need details for a specific member server image instance, given you have its instance number), but it does not explicitly state when to use it versus alternatives. There is no mention of prerequisites or situations where another tool would be more appropriate, so it remains at the level of implied usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_member_server_image_listARead-only
List member server images (custom images created from running servers)
| Name | Required | Description | Default |
|---|---|---|---|
| memberServerImageInstanceNoList | No | Filter by member server image instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description's 'List' verb aligns with that. Beyond that, no additional behavioral traits (e.g., pagination, default scope, or return format) are disclosed, but the description does usefully define 'member server images'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that includes the core action, resource, and a clarifying definition. No extraneous words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one optional filter parameter, the description sufficiently explains the tool's purpose and resource type. Given the readOnlyHint and schema's param description, the lack of output details is acceptable, though it could have mentioned that omitting the parameter returns all member server images.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description covers the only parameter ('Filter by member server image instance numbers') with 100% coverage, so the description does not need to explain it further. The tool description itself adds no parameter-related information, which is fine given the schema's clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and identifies the exact resource 'member server images', with a clarifying parenthetical explaining they are 'custom images created from running servers'. This clearly distinguishes it from sibling tools like ncloud_get_member_server_image_detail or ncloud_create_member_server_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives contextual info about what member server images are, which implies when this tool is relevant (listing custom images), but does not explicitly state when to use this over alternatives like ncloud_get_member_server_image_detail or how filtering via the parameter works. No exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_metrics_groupBRead-only
Get detailed information about a specific Cloud Insight rule template (metrics group).
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) the metrics group belongs to | |
| metricsGroupId | Yes | Metrics group ID to retrieve details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the description's burden is lighter. It adds domain context (Cloud Insight rule template) but says nothing about what the returned detail contains or any prerequisites, leaving only minor added value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the verb and object lead. It is efficient, though it stops short of adding the routing or scope detail that would make it maximally useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with two fully documented required params and a readOnly annotation, the description is minimally sufficient. It does not explain the returned detail, and with no output schema that is a small but real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both required parameters (prodKey, metricsGroupId) are fully documented in the schema. The description adds no syntax, format, or scoping detail beyond that, matching the baseline for a fully-covered schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Get detailed information) and resource (metrics group / Cloud Insight rule template), which distinguishes it from the sibling list_metrics_groups and the create/update/delete variants. The parenthetical clarification ties the fetched object to its conceptual name, aiding recognition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrasing 'about a specific...' implies it retrieves a single entity versus the list variant, but there is no explicit when-to-use, when-not-to-use, or named alternative. Usage is inferable but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mongodb_image_productsBRead-only
List available MongoDB image product codes
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, indicating no side effects. The description does not contradict this but adds no extra behavioral context beyond what annotations already provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with 5 words, very concise. No wasted words, but could include more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Description is too minimal. No output schema exists, and the description does not explain return values or how this differs from similar sibling tools like ncloud_get_mongodb_products. For a list tool, more detail is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with regionCode described as 'Region code (e.g., KR, JPN, SGN)'. The description adds no parameter information beyond the schema, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'List' and resource 'available MongoDB image product codes', distinguishing it from siblings like ncloud_get_mongodb_products (which likely lists product specs) and other image product tools for different databases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as ncloud_get_mongodb_products. No context on prerequisites or use cases provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mongodb_instance_detailBRead-only
Get detailed information about a specific Cloud DB for MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description does not contradict that. However, the description adds no extra behavioral context beyond restating the tool's purpose; it does not describe the response format, any filtering constraints, or other operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler. It is front-loaded with the primary action and resource, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only detail tool with a single required parameter and no output schema, the description combined with the schema and annotations provides adequate context. It clearly indicates what the tool does, and the parameter schema covers the input. No major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'cloudMongoDbInstanceNo' described as 'Cloud MongoDB instance number to query'. The description adds no additional parameter semantics, but because the schema fully documents the parameter, baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the resource ('specific Cloud DB for MongoDB instance'). It distinguishes from list tools (e.g., ncloud_list_mongodb_instances) and other database detail getters (e.g., ncloud_get_mysql_instance_detail).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. It does not mention that listing instances is the prerequisite or that similar tools exist for other database types. Usage context is only implied by the word 'specific'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mongodb_productsARead-only
List available MongoDB server spec product codes (filterable by role type)
| Name | Required | Description | Default |
|---|---|---|---|
| infraResourceDetailTypeCode | No | Filter by server role type (MNGOD | ARBIT | CFGSV | MNGOS) | |
| cloudMongoDbImageProductCode | Yes | MongoDB image product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds minimal behavioral context beyond the schema parameter descriptions, with no mention of return format, pagination, or other operational characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the verb and resource, with the filtering capability appended. There is no wasted wording or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with two parameters and no output schema. The description sufficiently states the output (product codes), and the schema covers parameter details. It lacks explicit mention of return structure or edge cases, but given the low complexity, the description is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, each with meaningful descriptions. The description's 'filterable by role type' aligns with the schema's infraResourceDetailTypeCode but adds no new semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), a clear resource ('MongoDB server spec product codes'), and notes the filtering capability by role type. It distinguishes this tool from siblings like ncloud_get_mongodb_image_products by focusing on spec product codes rather than images.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its use when MongoDB server spec product codes are needed, but it does not explicitly state when to use this tool versus alternatives or any exclusions. There is no mention of prerequisites or complementary tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mongodb_target_subnetsARead-only
List subnets available for Cloud DB for MongoDB
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description confirms it is a list operation. However, it does not disclose any additional behavioral traits such as pagination, required instance existence, or response format. With annotations covering the safety profile, the description adds minimal value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence with no wasted words. It is front-loaded and efficiently communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only listing tool with no output schema, the description is adequate but does not specify what information the subnets will contain (e.g., IDs, names). Given the tool's low complexity and available annotations, it is minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with both parameters described (regionCode and cloudMongoDbInstanceNo). The tool description adds no parameter-level information, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List subnets available for Cloud DB for MongoDB' clearly states a specific verb ('List') and resource ('subnets available for Cloud DB for MongoDB'), distinguishing it from sibling tools like ncloud_get_mongodb_target_vpcs and ncloud_list_mongodb_instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as ncloud_get_mongodb_target_vpcs or other subnet listing tools. The description only states the action, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mongodb_target_vpcsBRead-only
List VPCs available for Cloud DB for MongoDB
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so the description adds no behavioral context beyond that. It does not disclose whether the list is full or filtered, if authorization is needed, or what happens with the optional regionCode parameter. Minimal extra value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence with no redundant information. Efficiently communicates the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too brief for a listing tool with no output schema. It fails to specify the scope of VPCs (all user VPCs? target-compatible VPCs?) or any filtering logic. The optional regionCode parameter's effect on results is unclear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with regionCode already described. The description 'available for Cloud DB for MongoDB' provides context but does not add parameter-specific meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List VPCs available for Cloud DB for MongoDB' clearly states the verb ('List'), resource ('VPCs'), and specific context ('for Cloud DB for MongoDB'), effectively differentiating it from sibling tools like ncloud_get_mysql_target_vpcs and ncloud_get_cache_target_vpcs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool or alternatives. While the description implies use for MongoDB VPC needs, it does not mention when not to use it or direct to siblings for other databases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_monitor_groupBRead-only
Get detailed information about a specific Cloud Insight monitoring target group.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) the monitor group belongs to | |
| monitorGroupId | Yes | Monitor group ID to retrieve details for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already tells the agent this is a pure read with no side effects, so the bar for the description is lower. It adds nothing beyond that — no note on whether a missing/unauthorized monitorGroupId errors versus returns empty, no mention of which prodKey namespace applies. Adequate but thin against an annotation that carries the safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler or redundancy. It is well sized for the operation, though it is so terse that it leaves useful routing information unstated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with full schema documentation and a readOnlyHint, the description is minimally sufficient. There is no output schema, so the description could usefully say what 'detailed information' includes (endpoint, thresholds, status) but does not, leaving a modest gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: prodKey is documented as the cw_key the group belongs to and monitorGroupId as the ID to retrieve. The description adds no format, sourcing, or constraint detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: 'Get detailed information about a specific Cloud Insight monitoring target group.' An agent knows this is a read of a single monitor group, not a list or a mutation. It does not, however, distinguish itself from siblings like ncloud_list_monitor_groups or ncloud_get_metrics_group, which are close in name and scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no named alternative. The word 'specific' implies a single-record lookup requiring an identifier, but the description never contrasts this with ncloud_list_monitor_groups (browse by prodKey) or with the metrics-group equivalents, so the agent must infer routing from names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mssql_image_productsARead-only
List available Cloud DB for MSSQL image product codes (engine versions)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true. The description adds no behavioral traits beyond purpose. No contradiction, but also no extra context like pagination or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 15 words, front-loaded with the action. Every word serves a purpose; no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple listing tool with one optional parameter. Could mention that the code is used for creating MSSQL instances, but not strictly necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear parameter description for regionCode. The tool description adds no additional meaning beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists available Cloud DB for MSSQL image product codes (engine versions). It distinguishes from sibling tools like ncloud_get_mssql_products by focusing on image product codes specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly suggests use for getting engine versions, but no explicit when-to-use or alternatives mentioned. Could specify that this is for image product codes while ncloud_get_mssql_products is for product specifications.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mssql_instance_detailARead-only
Get detailed information about a specific Cloud DB for MSSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the tool read-only, and the description adds no behavioral context beyond that. It does not specify what 'detailed information' includes, any response format, or any additional side effects or prerequisites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of nine words, front-loaded with the verb, and contains no superfluous content. Every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and a read-only annotation, so a short description is acceptable. However, 'detailed information' is vague and with no output schema, the agent might not know what fields to expect. It covers the essential use case but lacks specificity about the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description of the only parameter, so the description need not add parameter details. The tool description does not add meaning beyond the schema, but the baseline is met.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the specific resource ('a specific Cloud DB for MSSQL instance'). The word 'specific' distinguishes it from list-type siblings, and the 'detailed' modifier indicates a detail-retrieval tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need details for a known MSSQL instance, but it does not explicitly mention alternatives or when not to use it. There is no guidance on first listing instances to obtain the required instance number.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mssql_productsARead-only
List available Cloud DB for MSSQL server spec product codes
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlImageProductCode | Yes | MSSQL image product code (from ncloud_get_mssql_image_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safe read-only nature of the operation. The description adds that it lists product codes but does not disclose additional behavioral traits such as pagination, filtering, or permissions. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, succinct sentence that conveys the tool's purpose without unnecessary words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one well-documented parameter and readOnlyHint, the description is sufficiently complete. It does not need to explain return values in detail, though mentioning the product code output is implicit in 'product codes.' The prerequisite relationship with image product codes is covered in the parameter description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required parameter with a clear description indicating it comes from ncloud_get_mssql_image_products. Schema coverage is 100%, so the description does not need to add further parameter detail. The baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and clearly identifies the resource as 'available Cloud DB for MSSQL server spec product codes.' This distinguishes it from sibling tools like ncloud_get_mysql_products or ncloud_get_mssql_image_products.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: if you need MSSQL server spec product codes, use this tool. However, it does not explicitly state when to use it over alternatives or mention when not to use it. The context is clear but lacks direct guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mssql_target_subnetsARead-only
List subnets available for Cloud DB for MSSQL within a specific instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, reducing the burden on the description. The description states it lists subnets, which is consistent and adds no additional behavioral context (e.g., error states, pagination). It suffices but does not exceed what annotations imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence of 12 words, front-loaded with the verb and resource. It is efficient and avoids fluff, though it could be slightly more structured by explicitly stating the required parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only listing tool with complete schema coverage and annotations, the description provides sufficient context. It covers the purpose and key elements, although it could mention the region parameter (covered in schema) and any limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema; it mentions 'within a specific instance' which maps to cloudMssqlInstanceNo, but no extra parameter details are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'List', the resource 'subnets', and the context 'Cloud DB for MSSQL within a specific instance'. It effectively distinguishes from sibling tools like ncloud_get_mysql_target_subnets or ncloud_get_mssql_target_vpcs by focusing on MSSQL subnets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing subnets for an MSSQL instance but does not provide explicit guidance on when to use this tool versus alternatives like ncloud_get_mssql_target_vpcs, ncloud_list_subnets, or similar tools for other databases. There are no usage notes or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mssql_target_vpcsARead-only
List VPCs available for Cloud DB for MSSQL
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds value by specifying that the VPCs are 'available for Cloud DB for MSSQL,' which clarifies the purpose beyond just listing VPCs. No additional behavioral traits are needed for this simple list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the action and resource. No extraneous information is included, making it highly efficient for an AI agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description is sufficient. It clearly states what the tool does and the relevant context (MSSQL). While it does not mention authentication or error cases, these are typically covered by the overall API context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100% (the only parameter 'regionCode' is fully described in the schema). The tool description does not add any additional meaning to the parameter; the schema already provides clear instructions on usage and default behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List VPCs available for Cloud DB for MSSQL' clearly specifies the verb (list), resource (VPCs), and context (available for MSSQL). It effectively distinguishes this tool from generic VPC listing tools like ncloud_list_vpcs and from sibling tools for other database services (e.g., ncloud_get_mysql_target_vpcs).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing VPCs that can be used with Cloud DB for MSSQL, but it does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. The context is implied by the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mysql_image_productsARead-only
List available Cloud DB for MySQL image product codes (engine versions)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation already declares readOnlyHint=true, which is consistent with the description's 'List' verb. The description adds no further behavioral traits (e.g., pagination, error handling). With annotations covering the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, 12 words, with no fluff or redundancy. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema, and read-only annotation), the description provides sufficient information. No additional context is necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the sole parameter (regionCode). The description adds no extra meaning about its behavior or default, so baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), identifies the resource ('Cloud DB for MySQL image product codes'), and clarifies what they represent ('engine versions'), distinguishing it from sibling tools like ncloud_get_mysql_products which likely list compute specs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool does but does not explicitly indicate when to use it over alternatives such as ncloud_get_mysql_products or ncloud_list_mysql_instances. Usage is implied but not clarified with exclusions or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mysql_instance_detailARead-only
Get detailed information about a specific Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already indicates a read-only operation, and the description's verb 'Get' is consistent. No additional behavioral context is provided, such as the return structure, any pagination, or permission requirements, so the description adds little beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a clear verb and resource. It contains zero waste or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple: one required parameter, no output schema, and read-only annotation. The description adequately conveys the purpose, though it does not enumerate what 'detailed information' includes. For a get-by-id tool, this is mostly sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema includes the required parameter cloudMysqlInstanceNo with a clear description 'Cloud MySQL instance number to query', giving 100% schema coverage. The description itself does not add further meaning to the parameter, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and clearly identifies the resource as 'detailed information about a specific Cloud DB for MySQL instance'. This distinguishes it from the sibling list tool ncloud_list_mysql_instances and from detail tools for other database types like ncloud_get_postgresql_instance_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternative tool is referenced, but the word 'specific' versus the sibling list tool implies this is for retrieving details of a single instance. The description does not name ncloud_list_mysql_instances as the alternative for enumerating instances, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mysql_productsARead-only
List available Cloud DB for MySQL server spec product codes for a given image product code
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMysqlImageProductCode | Yes | MySQL image product code (from ncloud_get_mysql_image_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation, indicating a read-only listing operation. However, it adds no further behavioral context beyond what the annotation provides. For a simple read tool, this is adequate but not enhanced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is clear and to the point. Every word is useful with no filler or repetition. It is appropriately sized for the tool's simple functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (a listing operation), the description is nearly complete. It covers the purpose and the required dependency (image product code). However, it could mention that the output product codes are used for selecting server specs when creating a MySQL instance, but this is not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters have descriptions in the schema. The tool description adds no additional semantic value beyond restating that the required parameter is an image product code. The description is redundant with the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Cloud DB for MySQL server spec product codes for a given image product code. It uses a specific verb ('List') and identifies the resource ('Cloud DB for MySQL server spec product codes'). It implicitly distinguishes from sibling tools like ncloud_get_mysql_image_products, which lists image product codes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that one must first obtain an image product code from another tool (e.g., ncloud_get_mysql_image_products), but it does not explicitly state this dependency or provide any when-to-use or when-not-to-use guidance. No alternatives are mentioned, so the guidance is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mysql_recovery_timeARead-only
Get the available recovery time range (recoveryStartTime ~ recoveryEndTime) for a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to restate read-only. It adds no additional behavioral context (e.g., that the time range depends on backup status), but does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence of 20 words that effectively communicates the tool's purpose without repetition or unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with 2 parameters, the description adequately explains what it returns and the resource type. However, it does not mention that the result is tied to a specific instance (though implied by the parameter).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The description adds no further meaning beyond the schema; mentioning the output format is not parameter-specific.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get the available recovery time range' for a Cloud DB for MySQL instance, using a specific verb and resource. Among sibling tools like ncloud_get_mysql_instance_detail and ncloud_list_mysql_instances, this tool is uniquely identified as retrieving recovery time range.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like other MySQL tools. Lacks prerequisites, exclusions, or context for when to choose this over similar operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mysql_target_subnetsARead-only
List subnets available for Cloud DB for MySQL instance creation within a specific MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the tool is read-only. The description adds that it lists subnets for instance creation, which is consistent but does not disclose any additional behavioral traits such as error behavior or return format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 14 words with no filler. It is front-loaded and every word contributes to the purpose. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 parameters and no output schema, the description is adequate but could mention that the MySQL instance must exist or what the response contains. It is minimally complete for a simple list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already describes both parameters adequately ('Region code' and 'Cloud MySQL instance number'). The description does not add any additional meaning or constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'subnets available for Cloud DB for MySQL instance creation', and the context 'within a specific MySQL instance'. It distinguishes from sibling tools like ncloud_get_mysql_target_vpcs which list VPCs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing subnets for MySQL instance creation but does not explicitly state when to use this tool versus alternatives (e.g., ncloud_get_mysql_target_vpcs). No usage guidance or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_mysql_target_vpcsARead-only
List VPCs available for Cloud DB for MySQL instance creation
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a read-only operation. The description adds context about listing available VPCs, but does not disclose other behavioral traits like pagination, authorization requirements, or response format. The added value is minor.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence of 10 words, front-loaded with the key action and resource. No unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one optional parameter and no output schema. The description covers the primary purpose but does not mention what the response contains (e.g., VPC IDs or names). Given the complexity, it is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter regionCode, and the schema already describes it with examples and default. The tool description adds no additional meaning beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List VPCs available for Cloud DB for MySQL instance creation', specifying the verb 'List', the resource 'VPCs', and the context 'for Cloud DB for MySQL instance creation'. This distinguishes it from sibling tools like ncloud_get_mongodb_target_vpcs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when setting up a MySQL instance, but does not explicitly state when to use this tool versus alternatives like ncloud_get_mysql_target_subnets. No prerequisites, exclusions, or scenario guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_nas_snapshot_config_historyBRead-only
Get the snapshot configuration history for a NAS volume instance
| Name | Required | Description | Default |
|---|---|---|---|
| nasVolumeInstanceNo | Yes | NAS volume instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds the notion of 'configuration history' but does not clarify what historical changes are included, how far back the history goes, or the response structure. It adds minimal behavioral context beyond the annotation, which is acceptable given the annotation, but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded, grammatically correct sentence with no redundancy or filler. It communicates the essential purpose efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, single-parameter, read-only tool, the description is mostly complete. It identifies what the tool retrieves and the schema defines the required parameter. However, since there is no output schema, the agent must infer what 'configuration history' includes; a brief mention of the response content would have made it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% because the only parameter, nasVolumeInstanceNo, has a description. The tool description does not add any additional semantic detail about the parameter. With full schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (get) and the specific resource (snapshot configuration history for a NAS volume instance). It is specific enough to communicate the core purpose, but it does not explicitly distinguish this from sibling tools like ncloud_list_nas_snapshots or ncloud_get_nas_volume_detail, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention related operations such as creating snapshots, changing snapshot config, or listing snapshots, nor does it state any preconditions or exclusions. Context signals reveal siblings but the description itself offers no usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_nas_volume_access_control_rulesARead-only
Get the list of access control rules configured for a NAS volume
| Name | Required | Description | Default |
|---|---|---|---|
| nasVolumeInstanceNo | Yes | NAS volume instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a safe read operation, and the description's 'Get' is consistent. The description adds that it returns a 'list' of rules, but it does not disclose details such as possible empty results, ordering, or response structure. This is acceptable for a simple getter with read-only annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the action and resource, with no unnecessary words or repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one well-documented parameter and no output schema, the description adequately conveys the purpose and expected return ('list of access control rules'). It is sufficiently complete for the agent to select and invoke the tool correctly, though a mention of the rule structure could enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter nasVolumeInstanceNo, with a clear description ('NAS volume instance number') provided in the schema. The description adds no additional parameter semantics, which is fine given the schema already fully covers it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and identifies the resource as 'access control rules configured for a NAS volume.' This clearly distinguishes the tool from sibling mutation tools like ncloud_add_nas_volume_access_control, ncloud_set_nas_volume_access_control, and ncloud_remove_nas_volume_access_control.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as the set/add/remove access control operations. The description simply states what it does without offering context, exclusions, or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_nas_volume_detailBRead-only
Get detailed information about a specific NAS volume instance
| Name | Required | Description | Default |
|---|---|---|---|
| nasVolumeInstanceNo | Yes | NAS volume instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation indicates a safe read operation, but the description adds no behavioral context beyond that. It does not disclose error behavior, response structure, or any additional operational characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It is appropriately concise for the simplicity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple one-parameter read-only nature, the description is functional but sparse. It does not explain what 'detailed information' includes, how to obtain the instance number, or what the response looks like, which limits completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage with a clear description of 'nasVolumeInstanceNo' as the NAS volume instance number to query. The description adds no extra meaning beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets detailed information about a specific NAS volume instance, using a specific verb ('Get') and resource ('NAS volume instance'). It distinguishes itself from list tools like ncloud_list_nas_volumes by emphasizing a single instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit usage guidance is provided. The description does not mention when to use this tool versus alternatives (e.g., list first, then get details), nor does it state any prerequisites or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_nas_volume_rating_listARead-only
Get NAS volume size measurement list for a specific time period
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | Yes | End time for the measurement period (format: yyyy-MM-dd'T'HH:mm:ssZ) | |
| interval | No | Measurement interval (e.g. 5m, 1h, 1d) | |
| startTime | Yes | Start time for the measurement period (format: yyyy-MM-dd'T'HH:mm:ssZ) | |
| nasVolumeInstanceNo | Yes | NAS volume instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to restate safety. The description adds the time-period scoping constraint but does not disclose other behavioral traits like response format or units. With annotation coverage, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is entirely front-loaded and contains no wasted words. It conveys the essential purpose without filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with fully documented parameters, the description is adequate. The absence of an output schema is not a major issue since the tool returns a list of measurements, though return value details (e.g., units) are not described. Overall, it is sufficiently complete given the annotations and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all four parameters with descriptions. The description's reference to 'specific time period' loosely maps to startTime/endTime but adds no new meaning beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool gets a NAS volume size measurement list for a specific time period, which is a specific verb+resource+scope. It clearly distinguishes from sibling tools like list_nas_volumes (lists volumes) and get_nas_volume_detail (volume details).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need NAS volume size measurements over a time period. However, it does not explicitly mention alternatives or exclusions, leaving the agent to infer from the tool name and context signals.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_nat_gateway_detailBRead-only
Get detailed information about a specific NAT Gateway
| Name | Required | Description | Default |
|---|---|---|---|
| natGatewayInstanceNo | Yes | NAT Gateway instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds minimal behavioral context beyond the readOnlyHint annotation. It simply repeats that it fetches details, without disclosing what specific data is returned, any error conditions (e.g., what happens if the instance does not exist), or rate limits. With annotations already signaling the read-only nature, the description should provide additional depth but fails to do so.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise, front-loaded sentence with no superfluous words. It states the action and object clearly, earning a perfect score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one well-documented parameter and no output schema, the description is minimally sufficient but not complete. It does not describe what 'detailed information' includes, nor does it mention typical use cases or output structure. The lack of an output schema means the description should compensate, but it does not, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter natGatewayInstanceNo, with a clear description 'NAT Gateway instance number to query'. The tool description does not add further meaning to the parameter, but the baseline of 3 applies because the schema already documents it adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('NAT Gateway') with scope ('specific' and 'detailed information'), clearly distinguishing it from sibling tools like ncloud_list_nat_gateways (lists all) and ncloud_create_nat_gateway/delete_nat_gateway. It unambiguously communicates the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention that it should be used when a specific NAT Gateway instance number is known and a single entity's detailed data is needed, nor does it contrast with the list operation. The usage context is only implied by the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_network_acl_detailARead-only
Get detailed information about a specific Network ACL
| Name | Required | Description | Default |
|---|---|---|---|
| networkAclNo | Yes | Network ACL number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a safe read operation. The description adds no extra behavioral details such as response contents, pagination, or errors, though with a simple get-by-ID tool this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or redundant information, perfectly sized for this simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple with one required parameter and a read-only annotation, there is no output schema and the description does not clarify what 'detailed information' includes, leaving the agent to infer the return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter networkAclNo is described as 'Network ACL number to query'. The description adds no additional parameter meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Get detailed information about a specific Network ACL'), clearly distinguishing it from sibling tools like ncloud_list_network_acls and ncloud_get_network_acl_rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'a specific Network ACL' clearly implies the tool is for querying one ACL by identifier, but it does not explicitly name alternatives or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_network_acl_rulesARead-only
List all inbound and outbound rules for a specific Network ACL
| Name | Required | Description | Default |
|---|---|---|---|
| networkAclNo | Yes | Network ACL number | |
| networkAclRuleTypeCode | No | Filter by rule type (INBND, OTBND) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint: true annotation already covers safety. The description adds that it lists both inbound and outbound rules and requires a specific ACL. It does not disclose behavior like pagination, response format, or defaults, but the annotation lowers the burden. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence that is front-loaded with the action and resource. It wastes no words and is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with low parameter complexity and full schema coverage, the description is sufficient. It doesn't mention pagination or return format, but these are expected for a list tool. Overall, it gives enough context for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both networkAclNo and networkAclRuleTypeCode described. The description adds no extra parameter meaning beyond the schema, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all inbound and outbound rules for a specific Network ACL. This uses a specific verb ('List') and resource ('Network ACL rules'), and distinguishes it from sibling tools like add/remove rule tools and get_network_acl_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: call this when you need the rules for a specific Network ACL, identified by networkAclNo. It does not explicitly mention alternatives or exclusions (e.g., use ncloud_get_network_acl_detail for ACL properties), but the context is clear enough for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_network_interface_detailARead-only
Get detailed information about a specific network interface
| Name | Required | Description | Default |
|---|---|---|---|
| networkInterfaceNo | Yes | Network interface number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a safe read operation. The description adds minimal behavioral context beyond 'detailed information' and does not disclose return format, pagination, or error behavior. With annotations covering the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence that immediately states the action and target. It is front-loaded and contains zero unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-by-ID operation with a single required parameter and readOnlyHint annotation, the description is sufficient. It does not detail what 'detailed information' includes, but the lack of an output schema is common for such tools and the context is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage with a clear description of 'networkInterfaceNo' as 'Network interface number to query'. The description adds no additional meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed information about a specific network interface'), clearly distinguishing it from the list operation ('ncloud_list_network_interfaces') by emphasizing a single specific interface. The name reinforces the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites (like needing the networkInterfaceNo), exclusions, or related read tools, leaving the agent to infer usage from the name and parameter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_notification_recipientsARead-only
Get the list of notification recipient groups configured for Cloud Insight event alerts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is already covered. The description adds the useful scoping detail that recipients belong to Cloud Insight event alerts, but says nothing about return shape, pagination, or whether an empty list means 'none configured' versus 'not enabled' — a 3 is fair given the annotation carries the safety burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the verb and resource, no filler or repetition of the tool name. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read with annotations covering read-only safety and no output schema, the description supplies enough to call it correctly. It would be fully complete if it hinted at the response content (group identifiers vs names) or any account scoping requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline-4 case: there are no parameter semantics the description could add, and none are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Get), resource (notification recipient groups), and scope (Cloud Insight event alerts), so the agent knows exactly what comes back. It lacks any sibling differentiation, but no sibling tool in the list covers notification recipients, so this is a minor gap rather than a real ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites (e.g. which account/subscription context applies), and names no alternatives. An agent must infer the invocation context entirely from the sentence of purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_objectARead-only
Get (download) an object from an Object Storage bucket. Returns the object content as text.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to retrieve | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds valuable context by specifying that the object content is returned as text, which goes beyond the annotation. It does not contradict annotations and provides useful behavioral detail, though it omits potential concerns like binary content or size limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and efficient—two sentences that cover the action, resource, and return value without any redundancy or filler. It is front-loaded with the most critical information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with two well-documented parameters and a readOnlyHint annotation, the description is largely complete. It specifies the return type ('as text'), which is especially helpful given no output schema. Minor gaps include lack of details about binary objects or error behavior, but these are not critical for a basic get operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters ('key' and 'bucketName'), so the schema fully explains each parameter. The description does not add additional parameter-level meaning, matching the baseline expectation when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get (download)') and clearly identifies the resource ('object from an Object Storage bucket') and the return behavior ('Returns the object content as text'). It effectively distinguishes this tool from sibling operations like head_object (which retrieves metadata) or put_object (which uploads).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when you need to download an object's content. It provides clear context but does not explicitly mention alternatives or exclusions (e.g., 'use head_object for metadata'). However, the purpose is self-evident enough that an agent can infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_object_aclARead-only
Get the access control list (ACL) of an object in Object Storage
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket containing the object | |
| objectName | Yes | Object key (path) to get ACL for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the safe read-only nature, and the description does not contradict it. The description adds only the resource scope ('object in Object Storage') but no extra behavioral details like response format, required permissions, or side effects. This meets the baseline for annotation-backed tools.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundancy. It efficiently communicates the purpose without wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only operation with full schema coverage, the description is largely sufficient. It identifies the resource and the action, and the annotation covers safety. The lack of an output schema is partially mitigated by the clear 'Get ACL' phrasing, though a note about the return format would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters (bucketName and objectName) well described in the input schema. The description adds no additional parameter meaning beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation: 'Get the access control list (ACL) of an object in Object Storage.' It uses a specific verb ('Get') and identifies the exact resource (object ACL), distinguishing it from sibling tools like ncloud_put_object_acl and ncloud_get_bucket_acl.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying 'of an object' and 'Object Storage', implying this is for object-level ACL retrieval rather than bucket-level. However, it does not explicitly name alternatives or state when-not-to-use, so it stops short of a perfect score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_operation_statusARead-only
Check the current status of a recently created or modified resource by type and ID
| Name | Required | Description | Default |
|---|---|---|---|
| resourceId | Yes | Resource instance number/ID to check | |
| resourceType | Yes | Type of the resource to check status |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description aligns with a read-only 'Check' operation. The description adds context about being for recently created/modified resources, but it does not disclose what kinds of statuses are returned (e.g., in-progress, success, failure) or whether it should be polled. Since annotations cover the safety profile, the description meets the minimum bar without adding extra behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the essential purpose without any filler. Every word earns its place, making it highly efficient and easily parsed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only 2 parameters, a read-only annotation, and no output schema, the description conveys enough to understand the tool's basic function. However, it lacks any indication of what the response contains (e.g., status enum, progress indicator), which would be helpful since there is no output schema. The description is adequate but not fully complete for an agent that might need to interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides clear descriptions for both parameters (resourceId and resourceType), with 100% schema coverage. The description adds general context about the resource being recently created/modified but does not provide additional param-specific meaning beyond what the schema already documents. This aligns with the baseline 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Check'), the resource scope ('current status of a recently created or modified resource'), and the required identifiers ('by type and ID'). It distinguishes itself from sibling get_*_detail tools by focusing on the operation status of recent changes rather than the resource's full configuration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'recently created or modified' implies the tool should be used after create/update operations to monitor progress, but it does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusion conditions. Usage is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_pipelineARead-only
Get detailed information about a specific SourcePipeline pipeline including tasks and triggers
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Pipeline ID (from ncloud_list_pipelines) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates safety, and the description adds that the output includes tasks and triggers, which is useful context. However, it does not disclose other behavioral aspects like return format, potential errors, or permissions, though the read-only nature is covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the action and resource, followed by relevant detail about what information is included. There is no redundant wording or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only get-by-ID tool with one parameter and no output schema, the description is adequate. It conveys the purpose, the needed input, and the expected content (tasks and triggers). Given the low complexity, no additional context is essential, though a note about return format could make it slightly richer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter 'projectId' is well-described in the schema ('Pipeline ID (from ncloud_list_pipelines)'). The tool description does not add further parameter details beyond what the schema provides, but the schema itself is sufficient, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the resource ('a specific SourcePipeline pipeline'), with added specificity about what is included ('tasks and triggers'). This distinguishes it from sibling tools like ncloud_list_pipelines (which lists pipelines) and ncloud_get_pipeline_history_detail (which gets history details).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving details of a single pipeline, and the parameter description ('Pipeline ID from ncloud_list_pipelines') provides a workflow hint. However, it does not explicitly explain when to use this tool versus alternatives such as ncloud_list_pipelines for overviews or ncloud_get_pipeline_history_detail for historical run information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_pipeline_history_detailARead-only
Get detailed execution history for a specific pipeline run
| Name | Required | Description | Default |
|---|---|---|---|
| historyId | Yes | Execution history ID | |
| projectId | Yes | Pipeline ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds minimal behavior beyond that—it does not disclose response format or any constraints, but for a simple get-detail tool this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler, front-loading the action and object clearly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only detail endpoint with two well-documented parameters, the description is adequately complete. It could specify the content of the returned history (e.g., stages, logs), but the absence of an output schema makes this less critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of the parameters with meaningful descriptions ('Execution history ID' and 'Pipeline ID'). The tool description does not add extra parameter context, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed execution history for a specific pipeline run'), which clearly identifies the tool's function. It distinguishes itself from list-style tools like ncloud_list_pipeline_history by emphasizing 'specific pipeline run'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving details of a particular pipeline run, but it does not explicitly state when to use it versus listing histories or getting pipeline definitions, nor does it mention alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_pipeline_timezonesARead-only
Get available timezones for SourcePipeline schedule triggers
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes the safe, read-only nature, and the 'Get' verb is consistent with it. The description adds only the value domain (timezones for schedule triggers) but does not disclose return format, whether the list is exhaustive, or any ordering/caching behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence beginning with the verb 'Get', containing no filler or redundancy. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only lookup with no output schema, the description adequately conveys the return value's purpose and scope. It is sufficiently complete for the tool's simplicity, though it could optionally mention the timezone value format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the rubric establishes a baseline of 4. There are no parameter semantics to clarify, and the description correctly makes no parameter claims.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and a well-scoped resource ('available timezones for SourcePipeline schedule triggers'), making the tool's function immediately clear. It also distinguishes itself from the many pipeline sibling tools (list/get pipelines, history, etc.) by identifying a distinct metadata domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for SourcePipeline schedule triggers' implies the usage context — the tool is relevant when configuring pipeline schedules. However, it does not explicitly state when to use it versus alternatives, nor does it mention any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_placement_group_detailARead-only
Get detailed information about a specific placement group
| Name | Required | Description | Default |
|---|---|---|---|
| placementGroupNo | Yes | Placement group number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds minimal behavioral context beyond what the annotation and name convey, such as what 'detailed information' includes or any error/precondition behavior. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler or redundant information. It front-loads the action ('Get') and resource ('specific placement group') efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only get-by-ID tool with one parameter and no output schema, the description provides sufficient context to understand its purpose. However, it does not enumerate what details are returned or mention any prerequisites beyond the parameter, leaving some ambiguity for an agent expecting richer output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the sole parameter placementGroupNo is described as 'Placement group number to query'. The tool description does not add extra semantics about the parameter's origin or format, so it is adequate but not enhanced.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'specific placement group', distinguishing it from sibling tools like ncloud_list_placement_groups. It precisely indicates this is a detail lookup for one placement group, not a list or mutation operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'specific' implies the caller needs a placementGroupNo and that this is for a single entity, but there is no explicit guidance on when to use this versus list_placement_groups or other placement group tools. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_policy_detailARead-only
Get a policy's details including its permission statements (which service, actions and resource NRNs it allows). Use this to inspect what a policy actually grants — ncloud_list_policies only returns names and descriptions.
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | Policy ID to query (see ncloud_list_policies) | |
| withPermissions | No | Include the permission statements. Defaults to true here (the API itself defaults to false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is a safe read. The description adds useful return-content context (permission statement structure) beyond that annotation, but does not cover error modes, authentication needs, or response shape details. With the annotation covering the safety profile, a 3 is appropriate — some added value, but not rich behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste: the primary purpose is front-loaded, and the sibling differentiation earns its place in the second sentence. Every clause adds information an agent needs for selection or invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-param read-only detail tool with 100% schema coverage and a readOnlyHint annotation, nothing is missing. Although there is no output schema, the description compensates by naming the response content (service, actions, resource NRNs). An agent has everything needed to select and invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself is unusually informative: policyId cross-references ncloud_list_policies, and withPermissions documents the API-vs-wrapper default discrepancy. The description adds only marginal semantic value (elaborating what NRNs permission statements contain). Baseline 3 is correct when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get a policy's details') and goes further to specify exactly what those details include: permission statements with service, actions, and resource NRNs. The second sentence distinguishes it from ncloud_list_policies, which only returns names and descriptions, so an agent can tell them apart without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an explicit when-to-use directive ('Use this to inspect what a policy actually grants') and names the exact alternative (ncloud_list_policies) with a contrast that implies the when-not case — if you only need names and descriptions, use that sibling. This mirrors the calibration standard for explicit alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_policy_resourcesARead-only
List the resources (sub accounts, groups, roles) a policy is currently assigned to. Use this before deleting or editing a policy to see who is affected.
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | Policy ID to query (see ncloud_list_policies) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds useful context about scope ('currently assigned to') and the resource types, but does not disclose additional behavioral details such as pagination, response shape, or whether the list includes inherited assignments. With annotations handling the read-only trait, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The primary action and resource scope are front-loaded, and the usage guidance is integrated naturally. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one well-documented parameter, the description is complete. It states what is listed, that the listing reflects current assignment, and the practical context for when an agent should call it. The lack of an output schema is compensated by the clarity of the expected result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the sole parameter policyId is already documented in the schema, including a pointer to ncloud_list_policies. The description adds no new semantics about the parameter beyond what the schema provides, so it meets the baseline without exceeding it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('resources a policy is currently assigned to'), enumerates the resource types (sub accounts, groups, roles), and clearly distinguishes this from related policy tools such as ncloud_get_policy_detail or ncloud_list_policies. An agent can understand exactly what this tool returns without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool: 'Use this before deleting or editing a policy to see who is affected.' This gives clear contextual guidance, though it does not name specific alternative tools or explicitly say when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_port_pluginARead-only
Get port monitoring plugin configuration for a specific server instance.
| Name | Required | Description | Default |
|---|---|---|---|
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is covered. However, the description adds no additional behavioral context such as what happens if the instance does not exist, whether a default configuration is returned, or what the response contains. It provides no behavioral traits beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and resource. No redundancy or extraneous information—every word contributes to conveying the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with one well-described parameter and no output schema, the description is sufficient: it identifies the target resource and input. It could be more complete by hinting at the response format, but the tool's simplicity and the existing annotations make it adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter instanceNo, which is already described as 'Server instance number'. The tool description merely repeats the idea of a 'specific server instance' without adding further semantic detail, so it meets but does not exceed the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('port monitoring plugin configuration') and scopes it to 'a specific server instance', which clearly distinguishes it from sibling tools like ncloud_list_port_plugins (listing all) and ncloud_add_port_plugin (adding). It unambiguously communicates the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when you need the port monitoring plugin configuration for a specific server instance, but it does not explicitly state when to use it versus alternatives (e.g., list_port_plugins to enumerate all, or add/set to modify). There are no exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_postgresql_image_productsARead-only
List available Cloud DB for PostgreSQL image product codes (engine versions)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so read-only is known. Description adds context that it lists available image product codes for engine versions, beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise, front-loaded sentence with no filler. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with one optional parameter, the description is complete and adequate. No output schema needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Description does not add significant parameter semantics; schema already documents regionCode. Schema coverage is 100%, baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'List', resource 'Cloud DB for PostgreSQL image product codes', and purpose 'engine versions'. Distinguishes from similar sibling tools like ncloud_get_postgresql_products and ncloud_get_mysql_image_products.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage context (listing available engine versions). No explicit when-not-to-use, but clear enough for selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_postgresql_instance_detailARead-only
Get detailed information about a specific Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already discloses that this is a safe read operation, and the description's 'Get' wording is consistent with that. The description adds no further behavioral context (e.g., what detailed information is returned), but the annotation covers the key safety dimension.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to conveying the tool's purpose, making it highly efficient and appropriately sized for a simple get-detail operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only detail lookup, the description is sufficiently complete. It clearly identifies the action and target resource, and the readOnlyHint annotation plus fully documented parameter reduce ambiguity. The absence of an output schema is not a significant gap for this simple operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully covers the only parameter (cloudPostgresqlInstanceNo with description 'Cloud PostgreSQL instance number to query'). The tool description adds no additional semantic value for the parameter, so a baseline score of 3 is appropriate given the 100% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with a clear resource: 'detailed information about a specific Cloud DB for PostgreSQL instance.' It appropriately contrasts with sibling list tools by emphasizing a specific instance, though it does not explicitly name alternative tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use this when you need details about one instance, as opposed to listing instances. No explicit when-to-use or why-this-over-alternatives guidance is provided, but the name and phrasing make the intended context reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_postgresql_productsARead-only
List available Cloud DB for PostgreSQL server spec product codes for a given image product code
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudPostgresqlImageProductCode | Yes | PostgreSQL image product code (from ncloud_get_postgresql_image_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint: true, and the description's use of 'List' is consistent. The description adds no behavioral details beyond the annotation, such as side effects, rate limits, or authentication needs, but it does not contradict the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the action and scope. No extraneous words or unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (listing product codes), the description adequately covers the purpose and dependency on the image product code. It does not mention the optional regionCode parameter or output format, but these are detailed in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters already described in the schema. The tool description adds no new meaning or syntax details beyond what the schema provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (list) and resource (product codes for PostgreSQL server specs), and specifies the condition (for a given image product code). It is specific and distinguishes this tool from siblings like ncloud_get_mysql_products or ncloud_get_mssql_products.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites like obtaining the image product code from ncloud_get_postgresql_image_products. However, the input schema includes that context for the required parameter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_postgresql_target_subnetsBRead-only
List subnets available for Cloud DB for PostgreSQL instance creation within a specific PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'List subnets' is consistent. The description adds no additional behavioral details (e.g., authentication, rate limits, output format). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that conveys the core purpose without extraneous words. However, it lacks structural elements like bullet points or separate use-case descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description does not specify the format or details of the returned subnets. Given the simplicity of the tool, it is adequate but incomplete. Sibling tools with similar patterns exist, but the agent would benefit from more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with 100% description coverage. The description reinforces the need for a specific PostgreSQL instance (cloudPostgresqlInstanceNo) but does not explain the optional regionCode beyond the schema. Minimal added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('List subnets'), the resource ('for Cloud DB for PostgreSQL instance creation'), and the scope ('within a specific PostgreSQL instance'). However, it does not explicitly differentiate from sibling tools like ncloud_get_mysql_target_subnets, though the name implies the database type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('for instance creation'), but provides no explicit guidance on when to use this tool versus alternatives such as ncloud_get_postgresql_target_vpcs or subnet listing tools for other databases. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_postgresql_target_vpcsARead-only
List VPCs available for Cloud DB for PostgreSQL instance creation
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, indicating a safe read operation. Description adds that it lists VPCs specifically for PostgreSQL creation, providing context beyond annotations. No negative behavioral traits disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Efficiently communicates purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema), the description completely covers the necessary information: what it does and for which service. No missing context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter (regionCode), with schema already describing it. Description does not add extra meaning to the parameter, meeting baseline expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it lists VPCs available for Cloud DB for PostgreSQL instance creation. Uses specific verb 'List' and resource 'VPCs' with a clear context, distinguishing it from similar sibling tools for MySQL, MongoDB, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like ncloud_get_mysql_target_vpcs. The description implies use for PostgreSQL instance creation but lacks when-not-to-use or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_price_listBRead-only
Get price list by price numbers. Retrieves pricing plan details including charging unit, rating unit, conditions, and promise discounts.
| Name | Required | Description | Default |
|---|---|---|---|
| priceNoList | Yes | List of price numbers to query (1~99 items, required) | |
| promiseNoList | No | List of promise numbers to filter | |
| payCurrencyCode | No | Payment currency code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description aligns with this by using 'Get' and 'Retrieves'. The description adds useful context about the return content (pricing details including charging unit, rating unit, conditions, and promise discounts), but does not disclose potential limitations, pagination, or error behavior. This is acceptable for a simple read-only tool but not overly rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the core action ('Get price list by price numbers') and immediately followed by useful detail on what the response includes. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the readOnlyHint annotation, 100% schema parameter coverage, and no output schema, the description provides adequate context by listing what the response contains. It does not explain optional parameter usage (promiseNoList, payCurrencyCode) beyond the schema, but this is not a significant gap for a simple getter. The description is complete enough for an agent to select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all three parameters, so the schema already documents each parameter's meaning. The description mentions 'price numbers' and 'promise discounts', which maps loosely to priceNoList and promiseNoList, but adds no additional syntax, format, or constraint details beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves a price list by price numbers and specifies the details included (charging unit, rating unit, conditions, promise discounts). This distinguishes it from generic product price list tools by focusing on price numbers as the key input, though it doesn't explicitly name sibling alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ncloud_get_product_price_list or ncloud_get_demand_cost_list. It implies usage context (looking up pricing plan details for specific price numbers) but offers no exclusions or comparison to other pricing-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_process_pluginBRead-only
Get process monitoring plugin configuration for a specific server instance.
| Name | Required | Description | Default |
|---|---|---|---|
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the readOnlyHint annotation. It does not disclose return format, errors, permissions, or pagination, and the 'specific server instance' scoping duplicates the schema parameter description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no extraneous words. It efficiently conveys the verb, resource, and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter get with no output schema, the description is minimally sufficient, but 'configuration' is vague and does not indicate what the returned data contains. It lacks explanatory richness but does not mislead.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for instanceNo, so the description adds no parameter-level meaning. The baseline of 3 applies because the schema already fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('process monitoring plugin configuration') scoped to a specific server instance. This distinguishes it from list/add/remove/set plugin siblings, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a specific server instance' implies usage when targeting an individual instance, but no explicit when/when-not guidance or alternative tools are mentioned. Context is clear but exclusions are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_category_listARead-only
Get product category list for Ncloud billing. Returns available service categories like COMPUTE, DATABASE, NETWORKING, etc.
| Name | Required | Description | Default |
|---|---|---|---|
| productCategoryCode | No | Product category code to filter (e.g. COMPUTE) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, so the description is not required to restate that. The description adds value by indicating the return content (available service categories with examples), but it does not disclose other behaviors like pagination, unfiltered results, or response structure. This is acceptable given the annotation, but not exceptional.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the operation and resource. It includes useful examples in a compact way without any filler or repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one optional parameter and no output schema, the description provides sufficient context about the resource and expected return categories. It could mention behavior when no filter is provided, but that is reasonably inferred from the schema and the tool's listing nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes the optional productCategoryCode parameter with an example. The description adds examples of category values in the narrative, but these are also present in the schema's parameter description. With 100% schema coverage, the description neither compensates for missing schema info nor adds new parameter-level meaning beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as retrieving product category lists for Ncloud billing, with specific examples (COMPUTE, DATABASE, NETWORKING). This distinguishes it from sibling tools like ncloud_get_product_list or ncloud_get_product_price_list by focusing specifically on category data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying this is for Ncloud billing and that it returns service categories. It does not explicitly discuss alternatives or exclusion criteria, but the domain context is unmistakable for an agent deciding to fetch category data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_demand_cost_by_discount_listARead-only
Get billing history with discount details applied. Returns per-service billing amounts showing how each discount (product discount, credit) was applied for the specified period (max 6 months).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | Yes | End month in yyyyMM format (e.g. 202406, max 6 months range) | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| startMonth | Yes | Start month in yyyyMM format (e.g. 202401) | |
| memberNoList | No | Member number list (master/partner only) | |
| isOrganization | No | Query as Organization master (integrated view) | |
| productDemandTypeCodeList | No | Product demand type codes to filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already declares the read-only nature, which the description confirms with 'Get'. The description adds the 6-month period limit and the per-service output structure. However, it does not disclose pagination behavior, access-mode nuances (e.g., isPartner/isOrganization), or any other operational quirks, which would be valuable for an 8-parameter billing query tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, containing only two sentences. It front-loads the verb and resource, immediately explains the output, and includes the critical period constraint. There is no redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description does a good job explaining the return value ('per-service billing amounts showing how each discount was applied'). However, it omits discussion of pagination parameters, access modes (isPartner, isOrganization), or filter options (memberNoList, productDemandTypeCodeList), leaving some contextual gaps for a tool with 8 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; every parameter (startMonth, endMonth, pageNo, pageSize, etc.) has an individual description in the schema. The tool description only reinforces the period constraint ('max 6 months') without adding additional parameter semantics, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get billing history with discount details applied.' It specifies the resource (billing history), the output (per-service billing amounts), and the distinguishing feature (showing how each discount such as product discount and credit was applied). This effectively differentiates it from sibling tools like ncloud_get_product_demand_cost_list and ncloud_get_discount_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: when billing history with discount breakdowns is needed. The mention of 'per-service billing amounts showing how each discount was applied' implies the specific use case, though it does not explicitly name alternatives or exclude other scenarios. The clarity of the purpose is sufficient for basic guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_demand_cost_listBRead-only
Get billing cost list grouped by product/service type. Returns per-service billing amounts with discount breakdowns for the specified period (max 3 months).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | Yes | End month in yyyyMM format (e.g. 202403, max 3 months range) | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| startMonth | Yes | Start month in yyyyMM format (e.g. 202401) | |
| memberNoList | No | Member number list (master/partner only) | |
| isOrganization | No | Query as Organization master (integrated view) | |
| productDemandTypeCode | No | Product demand type code to filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is covered. The description adds useful context: the 3-month period limit and the inclusion of discount breakdowns in the return. However, it does not disclose pagination behavior, error cases, or level of detail (e.g., whether results are aggregated per product or per product+service), so it is moderately helpful but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main verb and resource, and every word adds value. It covers purpose, return contents, and a key constraint (max 3 months) in 27 words. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, no output schema, and only a read-only annotation, the description is moderately complete. It explains the core return (per-service billing amounts with discount breakdowns) but omits details about pagination (pageNo/pageSize), the meaning of access-scope parameters (isPartner, isOrganization, memberNoList), and how the productDemandTypeCode filter narrows results. Given the tool's complexity, this is a clear gap but not wholly inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description mentions 'max 3 months', which is already in the schema for endMonth ('max 3 months range'), adding no new meaning. The description does not clarify relationships between optional parameters (isPartner, isOrganization, memberNoList) or filter behavior, leaving the schema to do the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Get billing cost list grouped by product/service type.' It also details return contents (per-service billing amounts with discount breakdowns) and a period constraint (max 3 months). However, it does not explicitly differentiate itself from the many sibling cost tools (e.g., ncloud_get_demand_cost_list, ncloud_get_product_demand_cost_by_discount_list), so it lacks explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need cost data grouped by product/service type, but it provides no explicit guidance on when to choose this tool over alternatives. Given the extensive list of sibling cost-related tools, this is a notable gap. No when-not-to-use or alternative tool names are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_discount_history_listARead-only
Get product discount history list. Returns service discount details including discount rate, eligible services, and per-service usage/applied amounts.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| endMonth | No | End month in yyyyMM format | |
| pageSize | No | Page size (max 1000, default 1000) | |
| isPartner | No | Query as Partner representative | |
| startMonth | No | Start month in yyyyMM format | |
| memberNoList | No | Member number list (master/partner only) | |
| discountNoList | No | Discount numbers to query (from getDiscountList) | |
| isOrganization | No | Query as Organization master (integrated view) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates that this is a safe read operation, lowering the bar. The description adds useful return context (discount details, per-service amounts) but does not disclose pagination behavior, default scope when no params are provided, or any special authorization requirements. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and every word adds value. It states the resource and then enumerates the key return fields without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 optional parameters, no output schema, and no required params, the description gives a high-level return overview but leaves filtering/pagination context to the schema. It does not mention that all params are optional or how to scope the query by month/discount, which would help an agent. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all 8 parameters individually described (e.g., pageNo, startMonth format). The description does not add parameter-specific semantics beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('product discount history list'), and specifies return contents (discount rate, eligible services, per-service usage/applied amounts). This clearly distinguishes it from sibling tools like ncloud_get_discount_list, which likely returns current discount information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternatives are provided. Usage is implied by the verb 'get' and the resource name, but the description does not contrast with related tools such as ncloud_get_discount_list or ncloud_get_product_demand_cost_by_discount_list. This is adequate but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_listARead-only
Get product (service) list for billing. Returns available products with their codes, names, descriptions, and categories. Use regionCode and optional filters to narrow results. Paginated (default 50/page, sorted by productCode); the response includes totalRows/returnedRows/hasMore/nextPageNo — follow nextPageNo to page through all results.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default 1). Use nextPageNo from the response to page through results. | |
| pageSize | No | Page size (default 50, max 1000). Results are server-sorted by productCode for stable pagination. | |
| regionCode | Yes | Region code (KR, JPN, SGN, USWN, DEN) | |
| productCode | No | Product code to filter | |
| productName | No | Keyword search (case-insensitive substring). Matches across productName, productDescription, productCode, productType.codeName, productItemKind.codeName — works even when the NCP productName field is empty/Korean (e.g. 'Load Balancer'). | |
| productCategoryCode | No | Product category code (e.g. COMPUTE) | |
| productItemKindCode | No | Product item kind code (e.g. VSVR, SW) | |
| productItemKindDetailCode | No | Product item kind detail code (NCP billing classification change, 2026-06-25). Use 'VM' to query VM servers only (otherwise BM may be mixed in), 'BM' for Bare Metal only. Block Storage: BSTAD / BSTBS / BSTBS_BSTAD / CB1 / CB2 / FB1 / FB2. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=true), and the description adds genuinely useful behavior: default page size 50, server-side sort by productCode, and the response envelope (totalRows/returnedRows/hasMore/nextPageNo) with instructions to follow nextPageNo. That is substantial pagination transparency beyond the annotation, though rate limits/quotas are unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded purpose sentence, then return contents, filters, and pagination in a logical progression. Dense but every sentence carries information; only minor redundancy between the pagination prose and the pageNo/pageSize schema descriptions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description correctly compensates by naming the returned fields and the pagination metadata fields. For a read-only list tool with fully documented params, the agent has what it needs to invoke and page correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters with formats and the enum for productItemKindDetailCode. The description only restates that regionCode is required and that optional filters narrow results, adding little syntax or semantics beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: getting the product/service list for billing, and lists what comes back (codes, names, descriptions, categories). It is broadly distinguishable from service-specific siblings only via the 'for billing' scope, but it never names an alternative, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives usage mechanics ('Use regionCode and optional filters to narrow results') but no when-to-use/when-not guidance and no routing to alternatives such as ncloud_get_product_category_list or the many per-service product tools (ncloud_get_mysql_products, ncloud_apigw_list_products). Implied usage only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_price_listARead-only
Get product and price list. Returns products with their associated pricing information including monthly/hourly rates, conditions, and discount details. Paginated (default 50/page, sorted by productCode); the response includes totalRows/returnedRows/hasMore/nextPageNo (and truncated=true if a single page was size-capped) — follow nextPageNo to page through all results.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default 1). Use nextPageNo from the response to page through results. | |
| pageSize | No | Page size (default 50, max 1000). Results are server-sorted by productCode for stable pagination. | |
| regionCode | Yes | Region code (KR, JPN, SGN, USWN, DEN) | |
| detailLevel | No | 'price' (default): slim response with identity + price fields only (much smaller). 'full': raw payload with all metadata. Tip: for broad category queries combine productCategoryCode + productName to keep responses small. | price |
| productCode | No | Product code to filter | |
| productName | No | Keyword search (case-insensitive substring). Matches across productName, productDescription, productCode, productType.codeName, productItemKind.codeName — works even when the NCP productName field is empty/Korean (e.g. 'Load Balancer'). | |
| payCurrencyCode | No | Payment currency code | |
| productCategoryCode | No | Product category code (e.g. COMPUTE) | |
| productItemKindCode | No | Product item kind code (e.g. VSVR) | |
| productItemKindDetailCode | No | Product item kind detail code (NCP billing classification change, 2026-06-25). Use 'VM' to query VM servers only (otherwise BM may be mixed in), 'BM' for Bare Metal only. Block Storage: BSTAD / BSTBS / BSTBS_BSTAD / CB1 / CB2 / FB1 / FB2. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the bar is lower; the description still adds genuine behavioral context: server-side sorting by productCode for stable pagination, default page size, the totalRows/returnedRows/hasMore/nextPageNo response signals, and the truncated=true edge case. That is real pagination behavior an agent needs and cannot get from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose and returned fields, then the pagination contract. It is a single dense sentence plus a dash clause; slightly verbose on pagination bookkeeping but every element is actionable and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description reasonably carries the return-shape burden, and it does so by naming the pricing fields and the pagination envelope. With annotations covering safety and the schema covering all parameters, the only remaining gap is guidance on choosing this tool over sibling pricing tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every one of the 10 parameters (including detailLevel, productName matching, and the VM/BM item kind codes) is already documented in the schema. The description restates the 50/page default and productCode sort but adds no new parameter semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb+resource (get product and price list) and enumerates what is returned: monthly/hourly rates, conditions, and discount details. However, it never distinguishes itself from notable siblings such as ncloud_get_price_list, ncloud_get_product_list, or ncloud_get_product_demand_cost_list, so an agent still has to guess which pricing tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains how to page through results but gives no when-to-use guidance, no exclusions, and no alternative tools, despite several overlapping price/product listing siblings in the toolset. An agent is left to infer selection criteria entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_product_schemaARead-only
Get the schema definition for a specific product in Cloud Insight (metrics and dimensions).
| Name | Required | Description | Default |
|---|---|---|---|
| cw_key | No | Product key (cw_key) for custom schema | |
| prodName | Yes | Product name to get schema for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation. The description adds that the schema includes 'metrics and dimensions,' which is useful context, but it does not disclose return format, pagination, required permissions, or any other behavioral traits. Since annotations cover the safety profile, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no unnecessary words. It front-loads the action ('Get') and includes the essential context without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with two parameters and no output schema, the description is mostly complete. It clearly identifies the target (product schema) and the domain (Cloud Insight). However, it could optionally mention that the response contains the schema details, but this is already implied by 'schema definition.' No major gaps exist for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both cw_key and prodName have descriptions in the input schema. The tool description itself does not add any parameter-level detail beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Get the schema definition for a specific product in Cloud Insight (metrics and dimensions).' It uses a specific verb ('get'), names the resource ('product schema'), and specifies the context ('Cloud Insight'). This distinguishes it from sibling tools like ncloud_get_schema_keys, which focuses on keys rather than full schema definitions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need a product's schema (e.g., 'for a specific product'), but it does not explicitly state when to use this tool versus alternatives, nor provide any exclusions or prerequisites. No additional guidance about selecting this over related tools like ncloud_get_schema_keys or ncloud_get_product_list is offered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_public_ip_detailARead-only
Get detailed information about a specific public IP instance. The payload carries no product code (API limitation); price it via ncloud_get_product_price_list with productName='Public IP'.
| Name | Required | Description | Default |
|---|---|---|---|
| publicIpInstanceNo | Yes | Public IP instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, covering the safety profile. The description adds valuable behavioral context by revealing an API limitation: the response payload carries no product code, which could affect downstream pricing decisions. This is beyond what annotations provide and helps the agent avoid a misleading call. It does not describe auth or rate limits, but those are less critical given the simple read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each earning its place. The first states the core purpose; the second provides a critical limitation and routes the agent to a pricing alternative. No filler, no redundancy, and the most important caveat is front-loaded after the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only detail tool, the description is largely complete. It covers the API limitation and the pricing workaround. No output schema exists, so agents might want more specifics on returned fields, but 'detailed information' is reasonably descriptive. A minor gap is that it doesn't mention that the required instance number must be obtained first (e.g., from list_public_ips), but this is implicit in the tool's design and the sibling list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter publicIpInstanceNo with a description ('Public IP instance number'), so schema coverage is 100%. The description adds no additional meaning about this parameter—it only mentions a product-code limitation, not the parameter itself. Baseline 3 is appropriate because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Get detailed information about a specific public IP instance.' This distinguishes it from siblings like ncloud_list_public_ips (list vs. detail) and ncloud_get_public_ip_target_servers (target servers vs. instance details). The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on an important usage caveat: the payload carries no product code, so pricing must be obtained via ncloud_get_product_price_list with productName='Public IP'. This effectively tells the agent when not to use this tool (for pricing) and names the alternative. However, it does not explicitly contrast with the listing tool or other detail endpoints, leaving some sibling differentiation to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_public_ip_target_serversARead-only
List server instances that can be assigned a public IP
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent (a read-only list). It adds the filtering criterion (servers that 'can be assigned a public IP'), which is useful, but it does not disclose additional behavioral details such as return format, pagination, or prerequisites. The description adds some context beyond annotations but is not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no fluff. It immediately states the action and the resource, making it highly efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, parameterless, read-only tool with no output schema, the description is largely sufficient. It specifies what is returned (eligible server instances). It could add a hint about its role as a prerequisite before associating a public IP, but overall it covers the essential context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is trivially 100%. With no parameters to document, the description does not need to add parameter-level semantics. The baseline for 0 parameters is 4, and the description is clear enough.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('server instances that can be assigned a public IP'), clearly distinguishing it from sibling tools like list_public_ips (which lists IPs) and list_servers (which lists all servers). It precisely captures the tool's focused scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when you need to find servers eligible for public IP assignment, but it does not explicitly state when to use it versus alternatives, nor does it provide exclusions. Sibling tool names provide context, but the description itself offers no direct comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_regionsARead-only
List all available Ncloud regions
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint: true annotation already establishes this is a safe read operation, and the description 'List all available Ncloud regions' is consistent with that. However, the description adds no extra behavioral context beyond the annotation, such as return format, ordering, or any potential limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler. It is front-loaded and captures the essential purpose in just five words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list operation, the description covers the essential purpose. However, given the presence of related tools like ncloud_get_zones and ncloud_get_current_region, a brief note on what the output includes (e.g., region codes or names) would enhance completeness, though it is not strictly necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the input schema is trivially complete. The description does not need to explain parameter semantics, and no additional detail would add value for a parameter-less call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('List') and resource ('all available Ncloud regions'). It is unambiguous and easily distinguishable from sibling tools like ncloud_get_zones or ncloud_get_current_region, which operate on different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when an agent needs to retrieve all available Ncloud regions, but it provides no explicit guidance on when not to use it or mentions alternative tools such as ncloud_get_zones or ncloud_get_current_region. This is a minor gap for a simple discovery function.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_root_passwordBRead-only
Get the root password for a server instance
| Name | Required | Description | Default |
|---|---|---|---|
| privateKey | No | Private key to decrypt the password | |
| serverInstanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description does not contradict this. However, the description fails to disclose that the returned password is typically encrypted and requires the privateKey parameter to decrypt—a key behavioral aspect not covered by the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that immediately conveys the core function. There is no wasted text or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the sensitive nature of retrieving a root password, the description omits important context such as the encryption/decryption flow and the optional nature of the private key (serverInstanceNo is required, privateKey is not). The schema partly covers this, but the tool's overall context remains incomplete for an agent to use it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents both parameters meaningfully (e.g., privateKey is 'Private key to decrypt the password'). The description adds no extra parameter detail, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the root password for a specific server instance. The singular 'a server instance' distinguishes it from the sibling tool ncloud_get_root_password_list, which handles multiple instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus the list variant or any other alternative. It also doesn't mention prerequisites such as needing the private key to decrypt the password, which is critical for successful use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_root_password_listBRead-only
List server instances that can retrieve root password
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| rootPasswordServerInstanceNoList | No | Filter by server instance numbers for root password retrieval |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a read operation, and the description's 'List' is consistent with that. The description adds minimal behavioral context (the resource being listed) but does not disclose any additional traits such as pagination behavior, what 'can retrieve root password' implies (e.g., permission requirements), or how results are returned. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no filler or redundant wording. It is front-loaded with the main verb and object, making it easy to parse quickly. Despite being short, it conveys the essential purpose without unnecessary elaboration, which is appropriate for this simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (3 optional params, readOnly annotation, no output schema), the description provides the core what-it-does statement. However, it lacks broader context about how this fits into the workflow (e.g., typically used before ncloud_get_root_password), what 'can retrieve root password' means operationally, and whether the list is all instances or only those with accessible passwords. The schema covers parameter details, so the description is minimally adequate but not fully contextual.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all three parameters (pageNo, pageSize, rootPasswordServerInstanceNoList), so the schema itself provides clear semantics. The description does not add any additional meaning beyond the schema, such as default values, parameter relationships, or formatting expectations, thus meeting the baseline but not exceeding it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('server instances that can retrieve root password'), which clearly indicates the tool's function. It distinguishes from the sibling tool 'ncloud_get_root_password' by focusing on listing eligible instances rather than retrieving a password, though it could be more explicit about that contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'ncloud_get_root_password'. There is no mention of prerequisites, typical workflow (e.g., list instances first, then retrieve password), or whether filtering by server instance numbers is for narrowing results. The description leaves usage context entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_routesARead-only
List all routes in a specific route table
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| routeTableNo | Yes | Route table number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint: true, and the description's 'List' verb is consistent with that. The description adds the scope 'all routes', but doesn't disclose pagination, response format, or other behavioral details. With the read-only annotation present, the description adds some value but not rich context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the action and resource. Every word is necessary, and there is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with two well-documented parameters and a read-only annotation, the description and schema cover the essential context. It doesn't describe return values, but since there's no output schema and the tool's purpose is straightforward, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both vpcNo and routeTableNo have clear descriptions in the schema. The tool description doesn't add additional meaning beyond what the schema already provides for these parameters, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'List' and resource 'routes', and scopes it to 'a specific route table'. This clearly distinguishes it from sibling tools like ncloud_add_route, ncloud_remove_route, and ncloud_list_route_tables, which either mutate routes or list different entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage when you need all routes in a particular route table. It doesn't explicitly name alternatives or exclusions, but the resource type ('routes' vs 'route tables' or 'subnets') makes the intended use evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_route_table_detailARead-only
Get detailed information about a specific route table
| Name | Required | Description | Default |
|---|---|---|---|
| routeTableNo | Yes | Route table number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation, confirming this is a safe read operation. However, it adds minimal behavioral context beyond the annotation, such as the specific target of the query, and does not disclose what 'detailed information' includes or any limitations. The annotation reduces the burden, but the description still lacks richer behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately states the verb and resource. It contains no redundant information or filler, making it highly scannable and appropriate for a simple read operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward read operation with one parameter and a readOnlyHint annotation, the description is largely sufficient. However, since there is no output schema, the description does not hint at the response structure or clarify what 'detailed information' encompasses (e.g., routes, subnets), which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full coverage for the single routeTableNo parameter with a clear description ('Route table number to query'). The tool description adds no additional meaning or guidance for this parameter, so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb/resource combination ('Get detailed information about a specific route table') that clearly identifies the action and scope. It distinguishes well from sibling tools like ncloud_list_route_tables and ncloud_get_routes by emphasizing the singular, detailed nature of the query.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving details of a single route table based on its wording, but it does not explicitly state when to use this tool versus alternatives or provide any exclusions. No alternative tools are mentioned, leaving the agent to infer the appropriate context from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_route_table_subnetsARead-only
List subnets associated with a specific route table
| Name | Required | Description | Default |
|---|---|---|---|
| routeTableNo | Yes | Route table number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already establishes this is a safe read operation, and the description's 'List subnets' is consistent. The description adds the scoping detail of a 'specific route table' but does not disclose additional behavioral traits like response format, pagination, or error conditions, which is acceptable given the simple read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the action and object. It contains no redundant or filler content and is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one parameter and readOnlyHint annotation, the description adequately covers purpose and scope. 'List subnets' implies the return value is a list, and without an output schema, no further return details are required. The description is complete enough for this low-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the parameter routeTableNo is already described as 'Route table number' in the input schema. The tool description adds no extra semantic detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with resource 'subnets' scoped by 'associated with a specific route table', clearly indicating the operation. It distinguishes from sibling mutation tools like ncloud_add_route_table_subnet and ncloud_remove_route_table_subnet, as well as ncloud_get_routes which returns routes rather than subnets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: use this tool when you need to see which subnets are attached to a route table. However, it does not explicitly mention alternatives or when not to use it, such as referencing sibling tools for adding/removing subnets or noting that route table detail might contain similar info.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_rule_groupBRead-only
Get detailed information about a specific Cloud Insight event rule group.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) the rule group belongs to | |
| ruleGroupId | Yes | Rule group (Event Rule) ID to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already communicates that this is a safe read operation. The description adds no behavioral context beyond that, such as authentication requirements, error behavior, or what 'detailed' includes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence with no filler. It is appropriately brief, though arguably too terse to be maximally useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only tool with full schema coverage and a readOnlyHint annotation, the description is sufficient to select and invoke it. It could be more complete by indicating what details are returned, but no output schema exists to contradict this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both required parameters (prodKey and ruleGroupId) are fully documented in the schema. The description adds only the phrase 'specific rule group' and no extra semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Get detailed information about a specific Cloud Insight event rule group.' The word 'specific' semantically distinguishes it from the plural list_rule_groups, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no alternatives such as list_rule_groups, update_rule_group, or delete_rule_group_by_id. The agent must infer usage entirely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_rules_by_metrics_groupCRead-only
Get Cloud Insight event rules associated with specific rule template (metrics group) IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) | |
| metricsGroupIds | Yes | Metrics group IDs to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds no behavioral context beyond that: no pagination behavior, no result volume, no statement of what an 'event rule' record contains. It essentially restates the resource being fetched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the verb and scope front-loaded and zero filler. It is not padded, though it also stops short of using its brevity budget to add routing or behavioral detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only lookup with a fully documented schema, the description is minimally sufficient: it says what is fetched and by which IDs. The missing piece is disambiguation from the sibling ncloud_get_rules_by_monitor_group, which an agent would need before choosing correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters documented (prodKey as cw_key, metricsGroupIds as the IDs to query). The description adds no syntax, format, or cardinality detail beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (Cloud Insight event rules) plus the scope (associated with specific rule template/metrics group IDs). It even disambiguates the 'rule template' vs 'metrics group' terminology. However, it never contrasts itself with the sibling ncloud_get_rules_by_monitor_group, so an agent must infer the difference from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance. The existence of a near-identical sibling (ncloud_get_rules_by_monitor_group) makes explicit routing guidance important, but the description provides none, nor does it mention prerequisites such as prodKey/cw_key context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_rules_by_monitor_groupBRead-only
Get Cloud Insight event rules associated with specific monitoring target group IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) | |
| monitorGroupIds | Yes | Monitor group IDs to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, and the description is consistent with that. It adds no further behavioral context such as pagination behavior, result size, or whether the query spans all rules of the group, so with annotations carrying the safety profile this sits at minimum viable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is efficient, though it conveys no more than the tool name already implies.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only lookup with full schema coverage and no output schema, the description is adequate but thin. It does not indicate what a returned rule contains or how the underlying product key is obtained, both of which an agent may need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both prodKey and monitorGroupIds documented in the schema, so the baseline is 3. The description adds nothing about the prodKey (cw_key) requirement or whether multiple group IDs are queried with OR semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: fetching Cloud Insight event rules scoped to monitoring target group IDs. This distinguishes it in kind from write siblings, but it never names ncloud_get_rules_by_metrics_group, the near-identical sibling for metrics groups, leaving that pairing unresolved from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when this should be used versus ncloud_get_rules_by_metrics_group, ncloud_get_monitor_group, or ncloud_list_rule_groups. Usage is only implied by the verb 'Get'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_scaling_process_typesARead-only
List available scaling process types for Auto Scaling Groups
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description's 'List' wording is consistent. The description adds the scoping detail 'for Auto Scaling Groups' but does not disclose additional behavioral traits such as return format, pagination, or any edge cases. This matches the annotation coverage without adding extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the action ('List') and specifies the resource and scope. Every word is necessary and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, read-only list endpoint, the description completely conveys the tool's purpose and expected result. The absence of an output schema is not an issue because the description itself tells the agent what will be listed, and no additional context is required for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is 100% vacuously. The description adds no parameter-specific semantics, but the baseline for no-parameter tools is 4, and no compensation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' followed by the resource 'scaling process types' and a clear scope 'for Auto Scaling Groups'. This distinguishes it from related sibling tools like ncloud_get_adjustment_types and ncloud_suspend_processes, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is only implied: an agent would infer this is for retrieving available process types before managing them. No explicit when-to-use or alternative guidance is provided, though the simple list nature makes it reasonably obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_schema_keysARead-only
Get the list of system schema product keys (cw_key) available in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals a safe read operation, so the description does not need to repeat that. The description adds a small amount of context by specifying the data source ('available in Cloud Insight') and the exact item being listed (cw_key). However, it does not disclose what the returned list contains, whether it can be empty, or any other behavioral details beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action ('Get the list') and follows with the specific object. There is zero wasted language, and every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (no parameters, no output schema), the description is sufficient to understand its purpose and output. It does not explain what cw_key is or how the list is ordered, but such details are unnecessary for this simple read-only retrieval.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description does not need to explain any input fields. The schema is empty with 100% coverage, and the description adds meaningful context about the output (the cw_key list). This meets the baseline for parameterless tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: retrieving a list of system schema product keys (cw_key) available in Cloud Insight. The verb 'Get' combined with the specific resource 'system schema product keys' makes the purpose unambiguous. However, it does not differentiate from sibling tools that also retrieve lists or keys, so it misses the top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description does not mention exclusions, prerequisites, or related tools, leaving the agent to infer usage solely from the name and description. No context is given about which scenarios call for this tool rather than another.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_server_detailARead-only
Get one server instance plus what is attached to it: block storages (boot + additional, with size/type/product code) and tags. The Server API's detail payload is field-for-field identical to the list entry, so the extra context is what makes this tool worth calling over ncloud_list_servers. Billing type / contract are NOT in the Server API — price a server with ncloud_get_product_price_list (billing group) using serverProductCode or serverSpecCode.
| Name | Required | Description | Default |
|---|---|---|---|
| includeRelated | No | Also fetch attached block storages and tags (two extra read calls). false = bare getServerInstanceDetail payload. | |
| serverInstanceNo | Yes | Server instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds useful behavioral context: includeRelated triggers two extra read calls and false returns the bare payload. It also clarifies that the detail payload is identical to the list entry, preventing agents from expecting richer server data from this call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences carry the core action, the differentiation from the main sibling, and the pricing alternative without fluff. The key value proposition is front-loaded, and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with no output schema, the description covers what is returned, what extra data includeRelated fetches, the cost of doing so, and what is deliberately not available. An agent has enough context to call it correctly and avoid misuse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters have descriptions. The description adds extra meaning by specifying what 'related' includes: boot and additional block storages with size/type/product code, plus tags. This goes slightly beyond the schema's generic mention of block storages and tags.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-resource pair ('Get one server instance') and clearly enumerates what is included beyond the basic instance: block storages and tags. It explicitly contrasts this tool with ncloud_list_servers, so an agent can distinguish them at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent when to prefer this tool over ncloud_list_servers ('extra context is what makes this tool worth calling'). It also excludes pricing/contract concerns and routes to ncloud_get_product_price_list, giving a clear alternative for a different need.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_server_image_detailARead-only
Get detailed information about a specific server image
| Name | Required | Description | Default |
|---|---|---|---|
| serverImageNo | Yes | Server image number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, so the description's addition of 'detailed information' and 'specific' provides minimal extra behavioral context. It does not disclose response format, error behavior, or field details, but given the annotation and the simplicity of the operation, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the action and resource. Every word contributes to the meaning, with no redundant phrasing or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple one-parameter input, the presence of readOnlyHint, and the clear subject matter, the description is mostly complete. The absence of an output schema means the description could have specified what 'detailed information' includes, but the phrase 'detailed information about a specific server image' is sufficient for an agent to understand the tool's purpose and select it appropriately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the sole parameter 'serverImageNo' described as 'Server image number to query' in the schema itself. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get detailed information about a specific server image' uses a specific verb ('get'), a clear resource ('server image'), and scope ('specific'), which accurately distinguishes it from sibling list tools like ncloud_get_server_images. Although it doesn't explicitly mention alternative detail tools, the name and description unambiguously identify the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need details for an individual image, but it provides no explicit guidance on when to use this tool versus alternatives such as ncloud_get_server_images for listing or ncloud_get_member_server_image_detail for member images. No exclusions or alternative suggestions are given, making the usage context clear but not explicitly articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_server_imagesBRead-only
List available server images (supports Gen2 XEN and Gen3 KVM)
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| sortedBy | No | Sort field | |
| sortingOrder | No | Sort order (ASC | DESC) | |
| osTypeCodeList | No | Filter by OS type (CENTOS | UBUNTU | WINDOWS | ROCKY | NAVIX) | |
| serverImageName | No | Filter by image name | |
| serverImageNoList | No | Filter by server image numbers | |
| serverImageStatusCode | No | Filter by image status (INIT | CREAT | CREFL) | |
| hypervisorTypeCodeList | No | Filter by hypervisor type (XEN | KVM) | |
| serverImageTypeCodeList | No | Filter by image type (SELF | NCP) | |
| platformCategoryCodeList | No | Filter by platform category (OS | APP | DBMS | GPU) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation. The description adds a constraint about supported hypervisor types, but does not disclose pagination behavior, default result size, or response structure. It is consistent with annotations but adds minimal extra behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the core action and includes a useful parenthetical scope note. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 11 optional parameters and no output schema, yet the description does not mention pagination, filter options, or that all parameters are optional. The Gen2/Gen3 note provides some scope context, but the description remains brief for a list operation with this many filters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 11 parameters carry their own descriptions. The tool description does not add any extra parameter semantics beyond what is already in the schema, making the baseline score appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('server images'), and adds a scope note about Gen2 XEN and Gen3 KVM support. It is clear, though it doesn't explicitly call out distinctions from sibling tools like ncloud_nks_get_server_images or ncloud_ses_get_cluster_server_images.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives or service-specific image listing tools. The description simply states the function without context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_server_specsARead-only
List available server specifications (supports Gen2 XEN and Gen3 KVM). Use serverImageNo from ncloud_get_server_images to filter compatible specs.
| Name | Required | Description | Default |
|---|---|---|---|
| zoneCode | No | Filter by zone code | |
| serverImageNo | No | Server image number to filter compatible specs (from ncloud_get_server_images) | |
| serverSpecCodeList | No | Filter by server spec codes (e.g., c2-g3, m2-g2-h100) | |
| hypervisorTypeCodeList | No | Filter by hypervisor type (XEN | KVM) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint: true already declaring the read-only nature, the description adds beyond annotations by noting support for Gen2 XEN and Gen3 KVM, which implies the tool can show specs across different hypervisor generations. This is useful behavioral context not present in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the main action, and no redundant words. Every sentence provides distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for a simple read-only listing tool with no output schema. However, given multiple sibling tools with similar names for other services, the description could have explicitly stated that this is for standard Cloud Servers to avoid ambiguity. Otherwise, it's complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining that serverImageNo should come from ncloud_get_server_images, which gives the agent an actionable way to populate that parameter beyond the schema's generic description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists available server specifications, which is a specific verb+resource. It also mentions Gen2 XEN/Gen3 KVM support, adding useful context. It does not explicitly distinguish from sibling tools like ncloud_nks_get_server_specs, but the name and context signal it's for standard servers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance to use serverImageNo from ncloud_get_server_images to filter compatible specs, which is a concrete cross-tool workflow. It doesn't mention when not to use this tool or alternatives, but the primary usage pattern is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_servers_topARead-only
Get the top 5 servers by CPU, memory, or filesystem usage from Cloud Insight monitoring.
| Name | Required | Description | Default |
|---|---|---|---|
| prod | No | Server environment: VPC (default) or Classic | |
| query | Yes | Metric to rank by: avg_cpu_used_rto (CPU), mem_usert (memory), avg_fs_usert (filesystem) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read. The description adds two useful behavioral facts: the output is capped at 5 entries and the data originates from Cloud Insight monitoring. It does not state the observation time window (and no time parameter exists), so the agent cannot infer how the ranking is computed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the resource, the fixed cardinality, and the ranking dimension. No filler, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The parameters are fully covered by the schema and there is no output schema, so return-value detail is not strictly required. However, for a monitoring query the description omits the time/aggregation window used for ranking and the shape of the result, both of which an agent would want before relying on the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are enums, each with a schema-level description. The description's 'CPU, memory, or filesystem usage' merely restates the query enum meanings already documented in the schema, adding no format or default detail beyond it, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete verb and resource: 'Get the top 5 servers by CPU, memory, or filesystem usage', plus the source system (Cloud Insight monitoring). It clearly implies this is a bounded top-N ranking rather than a full server list, which separates it in spirit from ncloud_list_servers, though it never names an alternative tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the three metrics you can rank by, which implies when to reach for this tool (metric-based ranking), but there is no explicit when-to-use/when-not guidance, no mention of prerequisites, and no routing to or away from alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_snapshot_detailARead-only
Get detailed information about a specific block storage snapshot instance
| Name | Required | Description | Default |
|---|---|---|---|
| blockStorageSnapshotInstanceNo | Yes | Block storage snapshot instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds 'detailed information,' which implies a response with snapshot details, but it does not disclose additional behavioral traits such as response format, required permissions, or error conditions. Given the annotation coverage, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and resource. No extraneous words or repetitions; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple one-parameter, read-only detail retrieval tool. The description adequately conveys the core purpose. While there is no output schema, the phrase 'detailed information' hints at the return type. For such a straightforward tool, the description is sufficiently complete, though it could specify what details are returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with a clear description for the single parameter ('Block storage snapshot instance number to query'). The tool description adds no additional meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and clearly identifies the resource ('detailed information about a specific block storage snapshot instance'). It distinguishes this tool from sibling tools like ncloud_list_snapshots (listing) and ncloud_create_snapshot (creation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied: use this when you need details of a specific snapshot instance. However, there is no explicit mention of when to use this over alternatives (e.g., when you already have the snapshot instance number vs. needing to list snapshots first). No exclusions or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_sub_account_detailARead-only
Get detailed information about a specific sub account
| Name | Required | Description | Default |
|---|---|---|---|
| subAccountId | Yes | Sub account ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates that this is a safe read operation. The description adds minimal behavioral context—it indicates the query targets one sub account—but does not describe response format, potential errors, or data returned, so the description contributes little beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that conveys the essential purpose without any redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, one-parameter read-only detail query, the description is mostly sufficient alongside the schema and readOnlyHint. However, since there is no output schema, some indication of what 'detailed information' includes would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully covers the single parameter with a clear description ('Sub account ID to query'), so the description adds no meaningful extra semantics. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('detailed information about a specific sub account'). It is distinguished from sibling tools like ncloud_list_sub_accounts by emphasizing 'specific', making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is only implied by the word 'specific', which suggests this is for a particular sub account rather than listing all. No explicit guidance on when to use this over alternatives like ncloud_list_sub_accounts, or any exclusions, is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_subnet_detailARead-only
Get detailed information about a specific subnet
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | Yes | Subnet number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals this is a safe read operation. The description 'Get detailed information' is consistent with that and adds no additional behavioral context such as return format, pagination, required permissions, or rate limits. With the annotation covering safety, the description adds only slight value by clarifying it targets a specific resource rather than a broad query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence that conveys the essential purpose without any extraneous words. Every word earns its place, and it's front-loaded with the verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, single-parameter, read-only tool with no output schema, the description is nearly complete. It clearly states what the tool does. However, it doesn't hint at what kind of 'detailed information' is included (e.g., VPC, network ACL, status), though such details are often implied by domain knowledge. A minor gap, but acceptable for this simplicity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the only parameter subnetNo is described as 'Subnet number to query' in the schema itself. The tool description repeats no further parameter details, so it adds no meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get detailed information about a specific subnet' uses a specific verb ('Get') and a clear resource ('subnet'), and it distinguishes itself from the sibling tool ncloud_list_subnets by targeting a single subnet rather than listing all. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you need details about one specific subnet), but it does not explicitly mention alternatives or exclusions. For example, it doesn't state 'Use ncloud_list_subnets to find subnet numbers' or contrast with list operations. Guidance is minimal beyond the name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_target_group_detailARead-only
Get detailed information about a specific target group
| Name | Required | Description | Default |
|---|---|---|---|
| targetGroupNo | Yes | Target group number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, so the description doesn't contradict it. However, the description adds minimal behavioral context beyond the annotation—it doesn't mention what 'detailed information' includes, whether the response is paginated, or any error conditions. Since the safety profile is handled by annotations, the lack of extra behavioral detail is acceptable but not exemplary.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single succinct sentence, front-loaded with the action and resource. No filler or redundant explanation. It earns every word and is instantly scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool with readOnlyHint and no output schema, the description is nearly complete. It clearly identifies the resource and action, but doesn't specify what 'detailed information' comprises (e.g., health checks, load balancer associations, protocol). This small gap prevents a 5, but it's adequate for a straightforward get-by-id operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter targetGroupNo with description 'Target group number to query', giving 100% schema coverage. The tool description adds little beyond the schema's 'specific target group' phrasing, merely reinforcing the need for an identifier without providing extra format, source, or prerequisite details. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get detailed information about a specific target group' uses a clear verb ('Get') and resource ('detailed information about a specific target group'), distinguishing it from sibling tools like ncloud_list_target_groups (which lists all groups) and modification tools (change/create/delete). The scope is precise: a single identified target group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific target group' implies the caller must already know the targetGroupNo, but no explicit alternatives or exclusions are given. It doesn't state that ncloud_list_target_groups should be used first to find the number, nor does it contrast with related detail tools like ncloud_get_load_balancer_detail. The usage context is only implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_vpc_detailARead-only
Get detailed information about a specific VPC
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral detail beyond the readOnlyHint annotation. It does not state what fields are returned, whether authentication is needed, or any side effects. Since the annotation already declares read-only, the description offers no additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the action, zero unnecessary words. Perfectly concise for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple, the description lacks detail about what 'detailed information' includes (e.g., CIDR, status, name). With no output schema, the description should clarify the return value, but it remains vague. Adequate for a straightforward get-by-ID tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents vpcNo with a clear description, so the baseline is 3. The description adds no extra parameter semantics, but the schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('VPC'), clearly indicating a read operation for a single VPC. It distinguishes from sibling tools like ncloud_list_vpcs by emphasizing 'specific'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage when a specific VPC needs to be examined, but does not explicitly mention alternatives like ncloud_list_vpcs for listing all VPCs or note when not to use it. Context is clear but exclusions are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_vpc_peering_detailARead-only
Get detailed information about a specific VPC Peering instance
| Name | Required | Description | Default |
|---|---|---|---|
| vpcPeeringInstanceNo | Yes | VPC Peering instance number to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is covered. The description adds little behavioral context beyond 'detailed information' and does not mention response structure, pagination, or error behavior. With annotations covering the primary safety trait, a neutral score is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the verb and resource. No filler words, and every word contributes to clarity. It is appropriately sized for a simple get-detail tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (1 parameter, no output schema, readOnly annotation), the description is mostly sufficient. It clearly states the tool's function and required identifier. However, it does not explicitly mention the relationship to list_vpc_peerings or what the returned 'detailed information' includes, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'vpcPeeringInstanceNo', which is already described as 'VPC Peering instance number to query'. The tool description does not add extra meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('detailed information about a specific VPC Peering instance'), clearly indicating this is a detail-fetch operation for a single peering. It distinguishes from sibling 'list_vpc_peerings' by emphasizing 'specific', making the tool's scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied: to retrieve details for a known VPC Peering instance number. However, there is no explicit when-to-use advice, mention of prerequisites (e.g., obtaining the instance number from list_vpc_peerings), or exclusion of alternatives. This earns a 'implied usage' score rather than higher.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_get_zonesARead-only
List all available zones in the current region
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the description's 'List' operation aligns with that. The description adds the scoping behavior of 'current region' but does not disclose other behavioral aspects like return format, pagination, or authentication. With annotations covering the safety profile, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It conveys the essential information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter read-only tool, the description sufficiently states what it returns (zones in current region). However, with no output schema, it doesn't detail the structure of the returned zones, which could be a minor gap for the agent to fully understand the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is 100% vacuously. The baseline for zero-parameter tools is 4, and the description doesn't need to add parameter details. The description's mention of 'current region' is not a parameter but contextual context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all available zones in the current region' uses a specific verb ('List'), a clear resource ('zones'), and a scope ('current region'). This clearly distinguishes it from sibling tools like ncloud_get_regions or ncloud_get_current_region, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by stating the operation is scoped to the current region, which helps the agent understand when to use it. However, it does not explicitly mention alternatives or when not to use it, so it stops short of a perfect score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_create_geo_cidr_mapB
Create a new Geo or CIDR map for Global Traffic Manager
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Map name | |
| mapType | Yes | Map type | |
| detailedMapList | Yes | Detailed map entries |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint=false is the only behavioral signal. The description adds no additional context such as idempotency, failure conditions on duplicate names, or whether the operation is synchronous. It does not contradict the annotation but also adds no value beyond it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose without any redundant or extraneous words. Every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema fully documents the required parameters, and the description clearly states the action. Given the richness of the schema and the simplicity of a create operation, the description is largely complete. It lacks some behavioral details like return values or duplicate-name handling, but these are not essential for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% description coverage for all parameters, including the mapType enum and the nested detailedMapList structure. The description adds no parameter-specific meaning beyond what the schema already supplies, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('new Geo or CIDR map') within the context of Global Traffic Manager. This distinguishes it from sibling operations like list, get, update, and delete on the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention that it should be used only for creating new maps, nor does it reference the update or delete siblings. There are no prerequisites or special cases described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_create_policyB
Create a new Global Traffic Manager policy with load balancing, monitor, and resource groups
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Policy name | |
| lbType | Yes | Load balancing type | |
| monitor | No | Health check monitor configuration | |
| geoMapId | No | Geo/CIDR Map ID (required when lbType is GEO or CIDR) | |
| resourceGroups | No | Resource groups with active/standby resources |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not add behavioral context beyond the annotation destructiveHint=false. It does not mention prerequisites, side effects, or what the response will contain. This is especially weak for a create operation without an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that leads with the action and resource, followed by the key components. Every word is necessary and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the schema being well-documented, the description does not explain the overall workflow or any relationship dependencies (e.g., that a policy belongs to a profile). It lacks guidance on how the nested monitor and resourceGroups structures fit together, and there is no output schema to clarify return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all parameters thoroughly. The description adds a high-level summary that mentions 'load balancing, monitor, and resource groups', but this does little beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the resource ('a new Global Traffic Manager policy'), and the key components ('load balancing, monitor, and resource groups'). This distinguishes it from related tools like ncloud_gtm_create_profile or ncloud_gtm_create_geo_cidr_map.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the verb and resource, but there is no explicit guidance on when to use this tool versus alternatives such as ncloud_gtm_update_policy or ncloud_gtm_create_profile. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_create_profileB
Create a new Global Traffic Manager profile (domain)
| Name | Required | Description | Default |
|---|---|---|---|
| ttl | No | TTL value in seconds | |
| name | Yes | Domain name (e.g., profile.ncloudgtm.com) | |
| policyId | Yes | Policy ID to associate | |
| claRegion | No | CLA region code (e.g., KR) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false, which is consistent with the description. However, the description adds no additional behavioral context such as idempotency, required permissions, or behavior on duplicate names. It does not contradict the annotations, but it also does not go beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a clear verb and resource. There is no redundant or unnecessary wording, making it highly concise for a simple create operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a straightforward create operation with a well-documented schema, but there is no output schema and no additional context about prerequisites, side effects, or success criteria. It meets the minimum viable standard but leaves some gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for all four parameters. The description itself adds minimal semantic value beyond the schema, merely noting that the profile is a domain, which is already captured in the 'name' parameter description. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create) and the resource (a Global Traffic Manager profile, clarified as a domain). This distinguishes it from sibling tools like update, delete, list, and get profile.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites (e.g., an existing policy) or when to prefer create over update/delete. The usage is only implied by the verb 'Create'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_delete_geo_cidr_mapADestructiveIdempotent
⚠️ Destructive: Permanently delete a Geo or CIDR map. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| mapId | Yes | Map ID to delete | |
| confirm | No | Must be true to execute |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true, so the description adds value by stating the destruction is permanent and by explicitly disclosing the confirm=true requirement. It does not explain idempotency behavior or consequences on related resources, but the added context is meaningful beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one tightly packed sentence: a warning emoji, a clear destructive statement, and a key operational directive. No redundant phrases or filler; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the delete operation, the schema covers all parameters, annotations cover destructive/idempotent hints, and no output schema exists. The description effectively conveys the essential context: permanence and confirmation. It lacks details on edge cases like non-existent maps, but these are not critical for a one-off delete tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters (mapId and confirm) are fully documented at the schema level. The description's mention of 'Set confirm=true' simply restates the schema's parameter description and does not add new semantic meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete') and the resource ('Geo or CIDR map'), using a specific verb. It is directly distinguishable from sibling tools like create, update, get, and list by the explicit delete operation embedded in the name and description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use the tool (when you intend to delete a Geo/CIDR map) and includes a critical usage instruction ('Set confirm=true to execute'). However, it does not mention alternatives or exclusion criteria, such as 'use update to modify instead of delete' or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_delete_policyADestructiveIdempotent
⚠️ Destructive: Permanently delete a Global Traffic Manager policy. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| policyId | Yes | Policy ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint and idempotentHint. The description adds context beyond these: it clarifies the deletion is 'permanent' and that confirm=true is necessary. This goes beyond the structured annotations and helps the agent understand the irreversible nature and confirmation requirement without relying solely on the annotation flags.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded with the critical warning. It conveys the action, permanence, and confirmation requirement in one sentence. No filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter destructive operation with full schema coverage and no output schema, the description is complete. It states the action, permanence, and the confirmation requirement. No additional return-value explanation is needed, and the annotations cover the safety profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (both policyId and confirm have descriptions). The description reinforces the confirm parameter's role ('Set confirm=true to execute') but doesn't add new parameter-level meaning beyond what the schema already provides. Thus, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a Global Traffic Manager policy.' It uses a specific verb (delete) and resource (GTM policy), distinguishing it from sibling tools like create, update, or get. The destructive nature is explicitly flagged.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an important usage instruction: 'Set confirm=true to execute.' This implies the tool requires explicit confirmation for the destructive action. However, it doesn't explicitly mention when to use this tool vs alternatives (e.g., checking with get_policy_detail first or using update instead). The guidance is minimal but useful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_delete_policy_health_checkADestructiveIdempotent
⚠️ Destructive: Delete health check configuration for a GTM policy. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute | |
| policyId | Yes | Policy ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint and idempotentHint, and the description supplements this with a ⚠️ Destructive warning and the explicit requirement to set confirm=true before execution. It adds operational context beyond the annotations, though it doesn't elaborate on irreversibility or side effects beyond the deletion itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with a warning emoji, the action, the target, and the key safety condition. No filler or repetition; the description is minimal but complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive operation, the description covers the action, target, and confirmation requirement, and annotations supply safety/idempotency context. It doesn't describe the return value, but no output schema exists and delete operations often require no return detail; still, it could mention whether the operation is reversible or what happens to the policy afterward.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: policyId is described as 'Policy ID' and confirm as 'Must be true to execute.' The description reiterates the confirm requirement but adds no new semantic detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Delete health check configuration for a GTM policy.' It names a specific verb and resource, distinguishing it from sibling tools like ncloud_gtm_delete_policy and ncloud_gtm_update_policy_health_check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when deleting a policy's health check configuration and provides the required confirm flag, but it does not explicitly contrast with alternatives or state prerequisites. The 'Set confirm=true to execute' is operational guidance rather than decision guidance for choosing this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_delete_profileADestructiveIdempotent
⚠️ Destructive: Permanently delete a Global Traffic Manager profile (domain). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| domainId | Yes | Domain(Profile) ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description adds valuable context by noting the deletion is permanent and requires an explicit confirm flag. It does not contradict annotations and provides extra safety-relevant behavior beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler, front-loading the destructive warning and clearly stating the required action. Every word contributes to understanding the tool's purpose and safety requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with two parameters and strong annotations, the description is largely complete. It covers the destructive nature, permanence, and confirm guard. It could mention any cascading effects or return behavior, but these are not necessary given the low complexity and schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters well-documented. The description restates the confirm requirement but adds little beyond the schema. This matches the baseline of 3 when the schema already explains parameters fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('delete') and specific resource ('Global Traffic Manager profile (domain)'), clearly distinguishing it from sibling tools like ncloud_gtm_delete_policy or ncloud_gtm_update_profile. The phrase 'Permanently delete' reinforces the exact action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly frames this as a destructive operation and provides a key usage instruction: 'Set confirm=true to execute.' This gives the agent clear context for when to invoke it, though it does not explicitly mention alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_geo_cidr_map_detailBRead-only
Get detailed information about a specific Geo or CIDR map
| Name | Required | Description | Default |
|---|---|---|---|
| mapId | Yes | Map ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already conveys the safe read-only nature. The description adds only that it retrieves 'detailed information' but does not disclose what that detail includes, whether any authorization is needed, or how errors are surfaced. With annotations present, the bar is lower, but the description still adds minimal behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It conveys the essential purpose efficiently, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter, full schema coverage, and a read-only annotation, the description is minimally adequate for a simple getter. However, it does not mention the return format or how to interpret 'detailed information', and it lacks guidance on the relationship to the list tool. It is complete enough for basic selection but leaves gaps for an agent expecting a fully self-contained description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% because mapId is described as 'Map ID to query'. The tool description adds context that this map is a 'Geo or CIDR map', which clarifies the entity type, but it does not offer syntax, format, or how to obtain valid IDs. Baseline 3 applies since the schema carries the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information') and the resource ('a specific Geo or CIDR map'), which is specific and not a tautology. It distinguishes itself from the list sibling ('list_geo_cidr_maps') by emphasizing 'specific' and 'detailed', though it does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that list_geo_cidr_maps should be used first to obtain map IDs, nor does it state any exclusions or prerequisites. The context signals show a related list tool, but the description does not leverage that.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_geolocation_infoARead-only
Get geolocation information (country/continent mappings) for Global Traffic Manager
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'Get' aligns with that. The parenthetical 'country/continent mappings' adds a small behavioral detail beyond annotations but does not disclose return format or any other operational nuances. The low bar is met without rich detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that is front-loaded with the verb and resource, with no redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only getter with no output schema, the description sufficiently conveys the core purpose and result type ('country/continent mappings'). It does not detail the exact return structure, but the simplicity and annotations make this adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so per rubric the baseline is 4. Schema coverage is trivially 100%, and the description adds no parameter-specific detail because none are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get') and resource ('geolocation information') for Global Traffic Manager, and clarifies it covers country/continent mappings. This distinguishes it from sibling GTM tools like health check regions or geo CIDR maps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by indicating it returns geolocation data for GTM, but it does not explicitly state when to choose this over related sibling tools such as ncloud_gtm_get_geo_cidr_map_detail or ncloud_gtm_get_map_types. No exclusions are given, but the context is sufficient for a simple getter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_health_check_regionsARead-only
Get available health check region codes for Global Traffic Manager
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation. The description adds context about what is returned (health check region codes) but doesn't disclose behavioral traits like pagination, response format, or any rate limits. This is acceptable for such a simple lookup tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action and resource. It is concise and contains no extraneous detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, read-only lookup tool, the description fully covers what the agent needs to know: it returns a list of available health check region codes. No output schema exists, so explaining the returned data type is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is empty, so there is nothing to document. The description adds no parameter information, which is fine because there are none. Per the baseline for 0 params, this is a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get') and resource ('available health check region codes for Global Traffic Manager'). It distinguishes itself from sibling GTM tools by naming the exact data returned (health check regions) rather than just saying 'get regions'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: whenever you need health check region codes for GTM. It doesn't explicitly mention alternatives or exclusions, but the purpose is unambiguous enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_lb_typesARead-only
Get available load balancer types for Global Traffic Manager policies
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the description is not required to restate that this is a safe read operation. The description adds useful scope context (that these are for Global Traffic Manager policies), which goes beyond the annotation. However, it does not disclose any additional behavioral details such as whether the result is a list, how it is formatted, or if any special conditions apply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately communicates the tool's purpose. It contains zero filler words and is front-loaded with the action verb 'Get'. Every word contributes meaning, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters, no output schema, and a read-only annotation, the description is adequately complete. It identifies the domain (Global Traffic Manager) and the specific object (load balancer types). The lack of usage guidance is a minor gap, but given the simplicity of the tool, the description is sufficient for an agent to understand what the tool does and how to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters in the schema, so the baseline for this dimension is 4. The description does not need to explain any parameter semantics since there are none. The schema coverage is 100% (vacuously), and the description adds no parameter-related information, which is acceptable given the tool's simplicity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: getting available load balancer types for Global Traffic Manager policies. It uses a specific verb (Get) and resource (load balancer types), and it is not a tautology. However, it doesn't explicitly distinguish from sibling tools like ncloud_gtm_get_resource_types or ncloud_gtm_get_map_types, though the resource is specific enough to avoid major confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. It simply states what the tool retrieves, leaving the agent to infer usage context. This is a minimal but functional statement, but it lacks the explicit contextual cues that would help an agent decide between this and similar GTM lookup tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_map_typesARead-only
Get available Geo and CIDR map types for Global Traffic Manager
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is limited to the tool's purpose and adds no behavioral details beyond the readOnlyHint annotation, such as return format, pagination, or any constraints. It does not contradict the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler or redundant details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description adequately covers the tool's simple zero-parameter read-only purpose, but lacks any detail about the structure of the returned map types. Given the absence of an output schema, slightly more context could be helpful, but it remains functionally sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool accepts zero parameters and the schema has 100% coverage, so the description need not elaborate on parameters. Baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and identifies the exact resource ('available Geo and CIDR map types') within the Global Traffic Manager scope, clearly distinguishing it from sibling tools like ncloud_gtm_get_resource_types and ncloud_gtm_get_lb_types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage to retrieve map types but provides no explicit guidance on when to use this tool versus alternatives, such as listing actual Geo CIDR maps or getting resource types. No exclusions or conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_policy_detailBRead-only
Get detailed information about a specific Global Traffic Manager policy
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | Policy ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only states it retrieves info, which aligns with the readOnlyHint=true annotation but adds no behavioral context (e.g., error behavior, return structure, or required permissions). It provides no value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence with no redundancy. It is appropriately front-loaded and contains exactly the necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter read operation, the description is functional but omits what 'detailed information' includes. With no output schema, a bit more specificity about the returned policy details would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with policyId described as 'Policy ID to query'. The description does not add any parameter semantics, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed information about a specific Global Traffic Manager policy, using a specific verb and resource. It distinguishes from list tools but doesn't explicitly contrast with the sibling get_policy_resources tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like ncloud_gtm_list_policies or ncloud_gtm_get_policy_resources. The word 'specific' implies an existing policy ID, but prerequisites or alternative scenarios are not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_policy_resourcesBRead-only
Get resource details for a specific Global Traffic Manager policy
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | Policy ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares that this is a safe read operation, so the description does not contradict it. The description adds no additional behavioral context beyond what the annotation provides, but no further disclosure is needed for a straightforward GET operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently states the tool's purpose without any filler or redundant information. It is appropriately sized for a tool with one parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter, the description is minimally adequate. However, with no output schema, the agent is not informed about what 'resource details' entails (e.g., which resource types are included), leaving some ambiguity that could be clarified with a short explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for the single parameter (policyId with description 'Policy ID'), so the description is not required to compensate. The description's reference to 'a specific policy' aligns with the parameter but adds no new semantic information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (Get) and resource (resource details for a specific Global Traffic Manager policy), making the tool's purpose immediately understandable. It distinguishes itself from list-oriented tools by specifying 'for a specific... policy', though it does not explicitly differentiate from the sibling tool ncloud_gtm_get_policy_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives such as ncloud_gtm_get_policy_detail or ncloud_gtm_get_resource_types. The phrase 'for a specific policy' implies a prerequisite (having a policyId) but no clear context for choosing this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_profile_detailARead-only
Get detailed information about a specific Global Traffic Manager profile (domain)
| Name | Required | Description | Default |
|---|---|---|---|
| domainId | Yes | Domain(Profile) ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already communicates that this is a safe read operation, and the description's 'Get detailed information' is consistent with that. However, the description adds no additional behavioral context such as required permissions, pagination, error conditions, or what details are returned. It provides no value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently conveys the tool's function without repetition or fluff. Every word contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only one parameter, a read-only annotation, and no output schema, the description provides enough information to know what the tool does and which resource it targets. It does not describe the return format, which is a minor gap, but overall it is reasonably complete for its simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter domainId is fully described in the schema with 100% coverage, so the schema carries the meaning. The description does not add any additional elaboration about the parameter, such as how to obtain it or any constraints. Baseline of 3 applies due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get detailed information' and identifies the resource as 'specific Global Traffic Manager profile (domain)', clearly distinguishing it from list operations and policy tools. The word 'specific' indicates this is for a single entity, and the parenthetical '(domain)' disambiguates the resource type from other GTM elements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes it clear that this tool is for retrieving details of a specific profile, which gives an implied use case. However, it does not explicitly state alternatives, exclusions, or prerequisites like obtaining the domainId from a list call. The context is clear enough for a simple tool, but lacks explicit when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_query_countBRead-only
Get GTM domain (profile) query count time-series monitoring data
| Name | Required | Description | Default |
|---|---|---|---|
| domainId | No | Filter by specific domain (profile) ID | |
| baseTimeUnit | Yes | Time unit for aggregation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, so the description carries less burden. It adds the context that the data is 'time-series monitoring data,' which implies a temporal aggregation. However, it does not disclose details like filtering behavior, default domain selection, or response format beyond what the schema and annotation imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the tool's function. No redundant words or filler. It is front-loaded with the action and resource, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only query tool with a fully documented schema and readOnlyHint annotation, the description is adequate. However, the absence of an output schema means the description should hint at return value structure; 'time-series monitoring data' is a minimal hint. It lacks details on how to interpret the data or specify a time range beyond baseTimeUnit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters documented in the input schema. The description itself adds no parameter semantics beyond what the schema provides. The baseline of 3 applies since the schema handles the parameter documentation fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('GTM domain (profile) query count time-series monitoring data'). It identifies this as a monitoring data retrieval tool specific to GTM domains, which distinguishes it from other monitoring tools like ncloud_dns_get_query_count. However, it could be more explicit about the output type or that it returns a time series.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, context, or exclusions. Given the large number of sibling tools (e.g., ncloud_cdss_get_monitoring, ncloud_ses_get_monitoring), the lack of any usage direction is a significant gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_get_resource_typesARead-only
Get available resource types for Global Traffic Manager policies
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description correctly reflects a 'Get' operation. The description doesn't add any behavioral details beyond the annotation (e.g., response format, pagination, or region dependence), but for a zero-parameter read-only tool, the behavior is straightforward and adequately disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of 10 words with no filler or redundant information. Every word contributes to the meaning, stating exactly what resource is being retrieved and for what purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, read-only, no output schema), the description is reasonably complete. It identifies the subject (resource types) and domain (GTM policies), and the readOnlyHint annotation covers safety. It could arguably mention what the returned resource types look like, but that level of detail is not essential for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description need not explain any parameter semantics. The input schema confirms there are no parameters, and the description's phrase 'available resource types' sufficiently conveys what the tool returns. The baseline of 4 for zero parameters applies here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and noun ('resource types') scoped to 'Global Traffic Manager policies'. This distinguishes it from sibling tools like ncloud_gtm_get_policy_resources or ncloud_gtm_get_lb_types by focusing on the set of available resource types rather than a specific policy's resources or load balancer types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the name and description: an agent would call this to list resource types before creating or updating a GTM policy. However, there is no explicit statement of when to use it versus alternatives like ncloud_gtm_get_lb_types or ncloud_gtm_get_map_types, and no exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_list_geo_cidr_mapsARead-only
List Global Traffic Manager Geo and CIDR maps with optional pagination
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default: 0) | |
| size | No | Number of items per page (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already covers the operation's safety, and the description adds the pagination behavior. It does not disclose return format or ordering, but for a simple list operation with read-only annotations, this is adequate. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that directly states the action and resource. No filler words; every term (List, Global Traffic Manager, Geo and CIDR maps, optional pagination) is informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with two optional parameters, the description plus schema provides a complete operational picture. However, the lack of an output schema and any mention of response details means the agent must infer what fields are returned, though this is typical for list operations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully documented in the schema with defaults (page=0, size=20), so the description's mention of 'optional pagination' adds little. The description does not provide additional context beyond the schema's property descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource as 'Global Traffic Manager Geo and CIDR maps', clearly stating the operation. It distinguishes from sibling tools like ncloud_gtm_get_geo_cidr_map_detail, which retrieves a single map, and create/update/delete tools, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for enumerating Geo and CIDR maps but does not explicitly contrast with alternatives or state when to use pagination. No exclusions or prerequisites are mentioned, leaving the agent to infer from the tool name and sibling context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_list_policiesARead-only
List Global Traffic Manager policies with optional pagination and filters
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Filter by policy name | |
| page | No | Page number (0-based, default: 0) | |
| size | No | Number of items per page (default: 20) | |
| applyYn | No | Filter by apply status (true: applied, false: not applied) | |
| domainName | No | Filter by associated profile (domain) name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's 'List' is consistent. The description adds that pagination and filters are optional, which is slight extra context, but this mostly restates what the schema already documents. No additional behavioral traits (e.g., default page size, return format, rate limits) are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It conveys the action, resource, and key capability (pagination/filters) efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple read-only list tool with 5 optional, fully documented parameters and a readOnlyHint annotation. While there is no output schema, the description's 'List policies' adequately implies a list of policy objects is returned. It could mention default pagination values or return shape, but for a straightforward list operation, the coverage is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% - each of the 5 parameters has a clear description. The tool description only summarizes them as 'optional pagination and filters', adding no new meaning beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with a clear resource 'Global Traffic Manager policies' and scoping qualifiers 'with optional pagination and filters'. This distinguishes it from sibling tools like ncloud_gtm_get_policy_detail (single policy) and ncloud_gtm_list_profiles (different resource).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use as a listing operation is implied by the verb 'List', but there is no explicit guidance on when to use this tool versus alternatives such as ncloud_gtm_get_policy_detail or ncloud_gtm_list_profiles. No exclusions or comparison to other tools are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_list_profilesARead-only
List Global Traffic Manager profiles (domains) with optional pagination and name filter
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Filter by profile name | |
| page | No | Page number (0-based, default: 0) | |
| size | No | Number of items per page (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation, lowering the bar. The description adds a useful clarification that profiles are domains and mentions pagination/filtering, but it does not disclose return format, ordering, or potential edge cases beyond what the schema and annotation already convey. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the operation and resource. It is concise, clear, and contains no redundant or filler wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with three optional parameters and no output schema, the description adequately captures the resource type and available filters. It could be slightly more complete by explicitly pointing to the detail tool for full profile information, but it is sufficient for a straightforward listing use case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the three parameters. The description merely restates the name filter and pagination without adding new meaning, constraints, or examples beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and a specific resource ('Global Traffic Manager profiles (domains)'), and it clarifies scope with optional pagination and name filter. This clearly distinguishes it from sibling tools like ncloud_gtm_list_policies and ncloud_gtm_get_profile_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The verb 'List' implies the primary use case of enumerating profiles, and sibling detail/create/update tools are natural alternatives by naming convention, but the description gives no explicit guidance on when to choose this tool over those alternatives or when to apply the optional filters. It provides context but no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_update_geo_cidr_mapBIdempotent
Update an existing Geo or CIDR map
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Map name | |
| mapId | Yes | Map ID to update | |
| mapType | No | Map type | |
| detailedMapList | No | Detailed map entries |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, covering the safety profile. However, the description adds no extra behavioral context, such as whether the update replaces or merges detailedMapList, whether mapType can be changed after creation, or what happens to unspecified fields. For a mutation tool, this omission is a significant gap beyond what annotations disclose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded and free of unnecessary words. It is easy to parse and directly states the action and resource. While it could be more informative, it is appropriately sized for a simple tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested detailedMapList and a mapType enum, but the description does not explain update semantics, whether fields are required or optional, or what the outcome of a successful update is. With no output schema, the description should carry more load for behavioral expectations, but it does not. Given the moderate complexity and minimal description, it is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters (mapId, name, mapType, detailedMapList) are already documented in the schema. The description adds no parameter-specific meaning beyond this, which is acceptable given the high schema coverage. However, it does not clarify partial-update behavior or parameter dependencies, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Update' and clearly identifies the resource as 'an existing Geo or CIDR map', which distinguishes it from sibling tools like create, delete, list, and get. However, it does not enumerate which fields can be updated, but for a single-line description it is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when modifying an existing Geo or CIDR map, but it does not explicitly state when to use this tool versus create/delete/list/get, nor does it mention any prerequisites or alternatives. Guidance is only implied by the word 'Update' and the sibling context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_update_policyBIdempotent
Update an existing Global Traffic Manager policy
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Policy name | |
| lbType | No | Load balancing type | |
| monitor | No | Health check monitor configuration | |
| geoMapId | No | Geo/CIDR Map ID | |
| policyId | Yes | Policy ID to update | |
| resourceGroups | No | Resource groups |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false, and the description adds no additional behavioral context. It does not disclose whether the update is partial (only provided fields are changed) or whether it replaces the entire policy configuration, which would be useful beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant words. It is perfectly concise and front-loaded, efficiently stating the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema is rich and comprehensively describes all parameters, and annotations cover the safety profile. The description is sufficient for a basic understanding but lacks context on scope boundaries (e.g., it does not clarify that this tool handles overall policy settings, not just resources or health checks), which is important given the numerous closely related sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all properties, so the schema already provides full parameter semantics. The tool description adds no extra parameter information, but given the high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (update) and the resource (existing Global Traffic Manager policy). It is specific and unambiguous, but it does not differentiate from related sibling tools like ncloud_gtm_update_policy_resources or ncloud_gtm_update_policy_health_check, which also update aspects of a GTM policy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_gtm_update_policy_resources or ncloud_gtm_update_policy_health_check. It does not mention any prerequisites, such as needing an existing policy ID, or clarify whether this is for general policy settings only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_update_policy_health_checkBIdempotent
Update health check configuration for a Global Traffic Manager policy
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Health check path (HTTP/HTTPS only) | |
| port | No | Health check port | |
| period | No | Check period in seconds | |
| policyId | Yes | Policy ID | |
| protocol | No | Health check protocol | |
| hostHeader | No | Host header (HTTP/HTTPS only) | |
| thresholdFail | No | Failure threshold count | |
| thresholdNormal | No | Normal threshold count |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, so the safety profile is covered, but the description adds no behavioral context beyond restating the operation. It does not explain whether the update replaces or merges existing health check settings, or what happens when optional parameters are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that efficiently communicates the core purpose with no redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite good schema coverage and annotations, the description omits critical behavioral details such as partial-update semantics, response contents, and prerequisites. This is a substantial gap for a mutation tool with 8 configurable fields and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema provides 100% description coverage for all 8 parameters, including enums and descriptions. The description itself adds no parameter semantics beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Update' and identifies the exact resource ('health check configuration for a Global Traffic Manager policy'). It clearly distinguishes from sibling tools like ncloud_gtm_update_policy and ncloud_gtm_delete_policy_health_check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use case is implied by the tool name and description, but there are no explicit guidelines about when to choose this over related tools such as ncloud_gtm_update_policy, which could also modify policy settings. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_update_policy_resourceBIdempotent
Update a specific resource group within a Global Traffic Manager policy
| Name | Required | Description | Default |
|---|---|---|---|
| active | No | Active resources | |
| standby | No | Standby resources | |
| policyId | Yes | Policy ID | |
| weighted | No | Weight (WEIGHTED_RR only) | |
| geoMapDetailId | No | Geo map detail ID | |
| resourceGroupSid | Yes | Resource group SID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds minimal context by specifying 'within a policy' and 'specific resource group', but it does not disclose whether the update replaces the entire resource group or only merges changes, nor any other behavioral details beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that states the action and target without any redundant words or filler. Every word contributes to the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool involves complex nested parameters (active/standby arrays) and no output schema, yet the description is extremely brief. It does not explain what a resource group is, how the update behaves (replace vs. modify), or any relationship to sibling tools like ncloud_gtm_get_policy_resources. The description is insufficient for an agent to safely and correctly invoke this tool in a real GTM policy context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The input schema provides terse descriptions for each parameter (e.g., 'Policy ID', 'Active resources'), and the tool description adds no further semantic meaning. The nested object fields (content, healthCheckRegionId, type) lack explanatory context, but the schema coverage requirement is met.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Update') and resource ('specific resource group within a Global Traffic Manager policy'), clearly identifying the operation's target. It distinguishes from the sibling tool ncloud_gtm_update_policy_resources by indicating a singular resource group, though it does not explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, such as first retrieving the policy or resource group details, nor any exclusion criteria (e.g., use ncloud_gtm_update_policy_resources for bulk updates).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_update_policy_resourcesAIdempotent
Update all resources for a specific Global Traffic Manager policy
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | Policy ID | |
| resourceGroups | Yes | Resource groups to set |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the 'all resources' scope, implying a wholesale replacement of the resource set, which is meaningful beyond the annotations. However, it does not explicitly state that existing resources are overwritten or that the provided resourceGroups array becomes the complete new configuration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of nine words. Every word earns its place, and there is no redundant or boilerplate content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a moderately complex update tool with no output schema, the description covers the basic purpose but lacks usage guidance and explicit replacement/overwrite semantics. The schema compensates for parameter details, but the absence of any reference to related tools or operational context leaves gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both policyId and resourceGroups described in the input schema. The description adds little beyond the schema, though 'all resources' hints that resourceGroups represents the full desired set. Baseline 3 is appropriate since the schema already does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Update all resources for a specific Global Traffic Manager policy.' The qualifier 'all resources' clearly distinguishes this from the sibling tool ncloud_gtm_update_policy_resource (singular), making the scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_gtm_update_policy_resource (singular) or ncloud_gtm_get_policy_resources. There are no exclusions, prerequisites, or context about whether this is a full replacement operation vs. a targeted update.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_gtm_update_profileBIdempotent
Update an existing Global Traffic Manager profile (domain)
| Name | Required | Description | Default |
|---|---|---|---|
| ttl | No | TTL value in seconds | |
| domainId | Yes | Domain(Profile) ID to update | |
| policyId | No | Policy ID to associate | |
| claRegion | No | CLA region code (e.g., KR) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false, covering safety. The description adds only that it updates an 'existing' profile, but does not disclose partial vs. full update semantics, potential side effects, or any required permissions beyond what annotations imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler words. It front-loads the action and resource, making it highly scannable and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too terse to be fully complete. It omits whether updates are partial (only provided fields) or a full replacement, lacks any return value indication (no output schema), and does not clarify how to locate the domainId. While annotations and schema cover safety and parameters, the core update behavior remains ambiguous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with clear descriptions for all four parameters (e.g., ttl is 'TTL value in seconds'). The description text adds no additional parameter context, so the schema carries the full burden, meriting the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the resource ('existing Global Traffic Manager profile (domain)'), distinguishing it from create/delete/list siblings like ncloud_gtm_create_profile and ncloud_gtm_delete_profile. However, it does not enumerate the updatable fields (TTL, policyId, claRegion), which appear only in the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit when-to-use guidance or alternatives. It does not mention related tools such as ncloud_gtm_create_profile or ncloud_gtm_update_policy, leaving the agent to infer usage solely from the tool name and context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_backup_configA
Backup all cluster component configurations to Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full transparency burden. It states what is backed up and the destination, but fails to disclose key behavioral traits such as whether the backup overwrites existing data, whether a bucket must already exist, or whether permissions are required for the Object Storage write. The word 'all' implies scope, but nuances like destructuring location or asynchronous nature are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the action verb and clearly states the object and target. Every word contributes to conveying the tool's purpose without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with one required parameter and no output schema, so the description is reasonably adequate. However, it omits details about how the Object Storage bucket is selected, since no bucket parameter exists in the schema, and does not indicate whether the operation returns a job ID or status. These gaps leave some ambiguity for an agent invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters with clear descriptions, achieving 100% coverage. The description adds no additional parameter-level semantics beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('backup') with a clear resource ('all cluster component configurations') and destination ('Object Storage bucket'), establishing exactly what the tool does. This clearly distinguishes it from sibling tools, which operate on clusters for creation, deletion, or listing but not for configuration backup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (use when you need to back up Hadoop cluster configurations), but provides no explicit when-to-use guidance, prerequisites, or exclusions. No alternative tools are mentioned, and the description does not explain scenarios where this tool should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_change_node_countAIdempotent
Change worker node count in a Cloud Hadoop cluster (add or remove nodes)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| workerNodeCount | Yes | Target worker node count (max +10 per call) | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, and the description adds no further behavioral context beyond restating the purpose. It does not disclose potential outcomes or side effects of node removal, such as data rebalancing or whether the operation is asynchronous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler words. Every part is meaningful, directly stating the action, resource, and scope of the operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with full schema coverage and clear annotations, making the description minimally adequate. However, it lacks any note about operational aspects like async execution, prerequisites, or when not to use it, which would be helpful for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and all parameters are described with sufficient detail in the schema. The description does not add additional semantics beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (change worker node count) and resource (Cloud Hadoop cluster), with a parenthetical clarifying that this includes both adding and removing nodes. This distinguishes the tool from related operations like changing node specifications.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used for scaling worker nodes in a Hadoop cluster, but it does not provide explicit guidance on when to use it versus alternatives (e.g., changing node specs) or any exclusions. Clear context exists but no alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_change_node_specAIdempotent
Upgrade node specs for Cloud Hadoop cluster (at least one node type required)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| edgeNodeProductCode | No | New edge node server type code | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number | |
| masterNodeProductCode | No | New master node server type code | |
| workerNodeProductCode | No | New worker node server type code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations (idempotentHint=true, destructiveHint=false) already disclose the safety profile, so the description doesn't need to restate that. The description adds little behavioral context beyond the action itself; it doesn't mention potential impact on cluster availability, long-running nature, or return behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb 'Upgrade', and contains no filler. It communicates the core purpose and a key requirement efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple parameter structure (5 parameters, 1 required, no nested objects) and the presence of annotations covering safety, the description is largely complete. It could elaborate on operational expectations (e.g., whether the change is applied immediately, cluster downtime), but the schema and annotations already cover most of what an agent needs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers each parameter with a brief description (e.g., 'New edge node server type code'), but the tool description adds the important constraint that at least one node type must be specified, which is not encoded in the schema's required fields. This semantic goes beyond the schema and helps the agent invoke the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Upgrade') and the resource ('node specs for Cloud Hadoop cluster'). It distinguishes this tool from similar node spec change tools for other services (e.g., ncloud_ses_change_node_spec, ncloud_cdss_change_node_spec) by explicitly mentioning Cloud Hadoop.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context that this tool is for upgrading node specs in a Cloud Hadoop cluster and includes a prerequisite ('at least one node type required'). However, it does not explicitly mention when to use this tool over alternatives like ncloud_hadoop_change_node_count or exclude scenarios where it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_create_clusterA
Create a new Cloud Hadoop cluster. HA is always enabled (2 master nodes). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| dryRun | No | Preview without creating | |
| useKdc | No | Use Kerberos KDC (default: false) | |
| kdcRealm | No | KDC Realm (required when useKdc=true) | |
| bucketName | Yes | Object Storage bucket name | |
| regionCode | No | Region code (e.g. KR) | |
| kdcPassword | No | KDC admin password (required when useKdc=true) | |
| loginKeyName | Yes | Login key name for SSH access | |
| useDataCatalog | No | Use Data Catalog for Hive metastore (default: false) | |
| bootstrapScript | No | Bootstrap script path (required when useBootstrapScript=true) | |
| workerNodeCount | No | Worker node count (2-8, default: 2) | |
| edgeNodeSubnetNo | Yes | Edge node subnet number | |
| engineVersionCode | No | Engine version code (for Rocky cluster) | |
| masterNodeSubnetNo | Yes | Master node subnet number | |
| useBootstrapScript | No | Use bootstrap script (default: false) | |
| workerNodeSubnetNo | Yes | Worker node subnet (private subnet only) | |
| edgeNodeProductCode | No | Edge node server type code | |
| masterNodeProductCode | No | Master node server type code | |
| workerNodeProductCode | No | Worker node server type code | |
| cloudHadoopClusterName | Yes | Cluster name (3-15 chars, lowercase+numbers+'-') | |
| cloudHadoopAddOnCodeList | No | Add-on codes (e.g. PRESTO, HBASE) | |
| cloudHadoopAdminUserName | Yes | Admin user name for Ambari (3-15 chars) | |
| masterNodeDataStorageSize | Yes | Master storage GB (100-2000/10GB, or 4000, 6000) | |
| workerNodeDataStorageSize | Yes | Worker storage GB (100-2000/10GB, or 4000, 6000) | |
| cloudHadoopClusterTypeCode | Yes | Cluster type code (use ncloud_hadoop_list_cluster_types) | |
| cloudHadoopImageProductCode | No | Image product code. Default: latest | |
| cloudHadoopAdminUserPassword | Yes | Admin password (8-20 chars) | |
| masterNodeDataStorageTypeCode | Yes | Master storage type (SSD|HDD|CB2) | |
| workerNodeDataStorageTypeCode | Yes | Worker storage type (SSD|HDD|CB2) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that HA is always enabled (2 master nodes) and that dryRun provides a preview, adding useful context beyond the destructiveHint annotation. However, it does not cover other behavioral aspects like asynchronous creation, expected wait times, or post-creation status, so transparency is only partially addressed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, each contributing a distinct piece of information: the action (create), a key characteristic (HA with 2 master nodes), and a usage tip (dryRun). There is no fluff or repetition, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex 29-parameter creation tool with no output schema, the description is minimal. It provides high-level context (HA, dryRun) and the schema fills parameter-level detail, but it lacks guidance on workflows like listing cluster types, checking login keys, or what to do after creation. The description is adequate but not complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although the schema covers all parameters with descriptions (100% coverage), the description adds meaning beyond the schema: it explains that HA is forced (so no master node count parameter is needed) and clarifies the dryRun parameter's purpose as a preview mode. This extra context aids parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new Cloud Hadoop cluster' with a specific verb and resource. It adds a distinguishing detail (HA always enabled, 2 master nodes) and mentions dryRun, making the tool's intent unambiguous even among many sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when a Cloud Hadoop cluster needs to be created, but it does not explicitly compare to alternatives or state prerequisites such as needing VPC subnets or consulting cluster type lists. The only usage hint is 'Use dryRun=true to preview', which applies to invocation rather than tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_create_notebookA
Create a Cloud Hadoop notebook instance attached to an existing cluster
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket name | |
| regionCode | No | Region code | |
| loginKeyName | Yes | Login key name for SSH access | |
| engineVersionCode | No | Engine version code (for Rocky) | |
| notebookNodeSubnetNo | Yes | Notebook node subnet number | |
| cloudHadoopInstanceNo | Yes | Cluster instance number to attach | |
| cloudHadoopNotebookName | Yes | Notebook name (3-15 chars, lowercase+numbers+'-') | |
| notebookNodeProductCode | No | Notebook node server type code | |
| useNotebookBlockStorage | No | Add block storage (default: false) | |
| notebookNodeDataStorageSize | No | Storage GB (when useNotebookBlockStorage=true) | |
| cloudHadoopNotebookComponent | Yes | Notebook component code (use ncloud_hadoop_list_notebook_components) | |
| notebookNodeDataStorageTypeCode | No | Storage type SSD|HDD|CB2 (when useNotebookBlockStorage=true) | |
| cloudHadoopNotebookImageProductCode | No | Notebook image code. Default: latest |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotation (destructiveHint=false), the description only adds the prerequisite of an existing cluster. It does not disclose that creation may take time, incur costs, or require specific cluster states. With annotations present, the bar is lower, but the description offers minimal additional behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no fluff. Every word earns its place, conveying the core action and attachment constraint efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (13 params, 6 required, no output schema), the description is thin. It provides the essential context but omits prerequisite details like the cluster must be in a certain state, the bucket must exist, or what the response contains. Schema covers params, but the description doesn't tie them together.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all 13 parameters, so the schema already explains each parameter. The description adds no parameter-level meaning or relationships (e.g., the dependency on useNotebookBlockStorage). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Create' with a clear resource 'Cloud Hadoop notebook instance' and adds a key qualifier 'attached to an existing cluster'. This clearly distinguishes it from sibling tools like ncloud_hadoop_delete_notebook or ncloud_hadoop_list_notebooks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for creating a notebook on an existing cluster, which gives context but no explicit alternatives or when-not-to-use guidance. It doesn't reference sibling tools or exclusion criteria, so it's not fully instructive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_delete_clusterADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud Hadoop cluster. All data will be lost. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion | |
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation destructiveHint is reinforced by the description's explicit 'All data will be lost' warning, which explains the consequence. The confirm=true requirement adds safety context that annotations do not provide, giving the agent a clear understanding of the operation's irreversibility and the required gate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence plus a short imperative, front-loading the destructive warning and stating the action, consequence, and required confirmation in about 20 words. Every phrase earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete tool with three parameters and no output schema, the description covers the essential purpose, consequence, and activation prerequisite. It omits details about return values or behavior for nonexistent clusters, but these are not critical given the schema covers parameters and annotations cover idempotency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with descriptions for cloudHadoopInstanceNo, confirm, and regionCode. The description only reiterates the confirm parameter's role ('Set confirm=true to execute'), adding no additional meaning for the other parameters. Thus the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Permanently delete a Cloud Hadoop cluster,' identifying the exact action (delete) and resource (Cloud Hadoop cluster). This distinguishes it from sibling tools that delete notebooks or other cluster types, such as ncloud_ses_delete_cluster or ncloud_nks_delete_cluster.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not mention alternatives or when to avoid using this tool. However, it clearly implies use only when deleting a Cloud Hadoop cluster is intended and establishes a necessary precondition: 'Set confirm=true to execute.' This provides basic usage guidance but lacks explicit comparison to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_delete_notebookADestructiveIdempotent
⚠️ Destructive: Permanently delete a Cloud Hadoop notebook. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute deletion | |
| regionCode | No | Region code | |
| cloudHadoopNotebookInstanceNo | Yes | Notebook instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint. The description adds 'permanently' and the confirm gate, which are useful behavioral details. However, it does not disclose potential side effects, permission requirements, or recovery options, so it provides only modest added value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately warns of destructiveness, states the action and resource, and specifies the confirmation requirement. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation, the description paired with annotations and schema is largely complete. It conveys the permanent nature, the mandatory confirm flag, and the target instance number is in the schema. It could mention irreversibility or post-deletion effects more explicitly, but 'permanently' covers the core concern.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already fully documents all three parameters. The description reinforces the confirm parameter's role as a required safety switch, but adds no new semantic information about regionCode or cloudHadoopNotebookInstanceNo beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete') and the resource ('Cloud Hadoop notebook'), distinguishing it from sibling tools like ncloud_hadoop_delete_cluster. The warning prefix and confirm requirement add specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly conveys when to use this tool (to delete a specific notebook) and explicitly requires confirm=true to proceed. It does not explicitly name alternatives for other operations, but the delete intent is unmistakable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_get_cluster_detailARead-only
Get detailed information about a specific Cloud Hadoop cluster
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, but the description adds no behavioral context beyond that. It does not disclose what kind of details are returned, potential exceptions, or any side effects (though none are expected). Since annotations cover the safety profile and the description adds nothing beyond a generic 'get' statement, the contribution to behavioral transparency is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded and free of unnecessary words. It serves its purpose without extraneous information, achieving high efficiency with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with two parameters and no output schema, the description is adequate but does not elaborate on what 'detailed information' includes. Since there is no output schema to explain return values, the description could have been more explicit about the response contents, but the tool name and purpose make it sufficiently clear for this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both 'regionCode' and 'cloudHadoopInstanceNo' having descriptions. The tool description adds no parameter-level meaning beyond the schema, so the baseline of 3 applies. The description does not compensate for any missing schema details, but none are missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get detailed information about a specific Cloud Hadoop cluster' clearly identifies the action (get), the resource (Cloud Hadoop cluster), and the scope ('specific'), effectively distinguishing it from listing tools like ncloud_hadoop_list_clusters. This matches the verb-resource-scope ideal and differentiates from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (retrieve details for a specific cluster) but does not explicitly state when to use this tool instead of alternatives, such as listing clusters first to obtain the instance number. No exclusions or alternative tools are mentioned, making the guidance implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_get_notebook_detailARead-only
Get detailed information about a specific Cloud Hadoop notebook
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopNotebookInstanceNo | Yes | Notebook instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a safe read operation, and the description aligns with a read-only 'get' action. However, the description does not disclose what specific details are returned, whether any additional inputs are required (like region), or any other behavioral nuances, so it adds minimal context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the verb and resource. There is no redundant or extraneous wording, making it highly scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only detail tool with complete parameter schema and a read-only annotation, this description is adequate but minimal. There is no output schema, and the description does not specify what 'detailed information' includes or whether the region code affects the result, leaving some ambiguity for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions ('Region code' and 'Notebook instance number'), so the baseline is 3. The description adds no additional parameter semantics, such as the format of the instance number or the optionality of region.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'get' and identifies the resource as 'a specific Cloud Hadoop notebook', which clearly distinguishes it from listing or creating notebooks. However, it does not explicitly contrast itself with sibling tools like list_notebooks, though the 'specific' qualifier implies a single-resource lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: the tool is for retrieving details of a particular notebook, presumably when its instance number is known. There is no explicit guidance on when to use this versus other notebook-related tools, nor any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_addonsBRead-only
List available add-on components for Cloud Hadoop clusters
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopImageProductCode | No | Image product code filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates the safe read-only nature, lowering the need for the description to repeat that. The description adds minimal context ('available') but does not disclose any additional behavioral traits such as filtering behavior or response scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. Every word contributes to clarifying what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with annotations and complete parameter descriptions, the description is adequate but thin. It does not explain what add-ons are, how results are returned (no output schema), or any specifics about how the optional parameters affect the listing, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters ('regionCode', 'cloudHadoopImageProductCode') are meaningful from their descriptions. The tool description adds no extra semantics beyond what the schema already provides, so it meets the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('available add-on components for Cloud Hadoop clusters'), making its purpose clear. It is reasonably distinct from sibling tools like ncloud_hadoop_list_image_products, though it does not explicitly differentiate itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or context for choosing it over similar list tools. Usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_bucketsCRead-only
List Object Storage buckets available for Cloud Hadoop
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | No | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true, the agent knows this is a safe read operation. The description adds the 'available for Cloud Hadoop' scope, but does not disclose whether it returns only buckets linked to a specific instance, what happens if cloudHadoopInstanceNo is omitted, or any details about the returned data. This goes little beyond what the annotation already conveys.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. It is front-loaded with the verb and resource, making it easy to scan and parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should compensate by explaining what is returned, but it does not. It also does not address optional parameters or behavior when no Cloud Hadoop instance is specified. While simple, it leaves important gaps for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (both parameters have descriptions: 'Region code' and 'Cloud Hadoop instance number'), so the schema carries the load. The description does not add any parameter-specific meaning beyond that, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), the resource ('Object Storage buckets'), and the context ('for Cloud Hadoop'). This differentiates it from generic bucket-listing tools like ncloud_list_buckets, though the scope 'available for Cloud Hadoop' is somewhat broad and could be more specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not say when to use this tool versus alternatives such as ncloud_list_buckets or ncloud_ses_get_snapshot_buckets. There is no mention of prerequisites, filtering scenarios, or when to prefer this tool over siblings. The only usage signal is the name and brief 'for Cloud Hadoop' context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_clustersARead-only
List Cloud Hadoop clusters with optional filtering
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | VPC number filter | |
| pageNo | No | Page number (default: 0) | |
| pageSize | No | Page size (default: 1) | |
| subnetNo | No | Subnet number filter | |
| zoneCode | No | Zone code filter (e.g. KR-2) | |
| regionCode | No | Region code (e.g. KR, SGN, JPN) | |
| cloudHadoopServerName | No | Server name filter | |
| cloudHadoopClusterName | No | Cluster name filter | |
| cloudHadoopInstanceNoList | No | Cluster instance numbers | |
| cloudHadoopServerInstanceNoList | No | Server instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description does not contradict this. It adds the notion of 'optional filtering', which is minor. No further behavioral details (e.g., pagination, performance) are disclosed. Given the annotations, the description provides minimal additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with 6 words, conveying the core purpose and filtering capability without redundancy. It earns its place and is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 10 optional parameters and no output schema. The description is minimal, lacking details about default behavior, output format, or pagination. For a list tool with complex filtering, a bit more context would be helpful, but the schema covers parameter usage, making it adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 10 parameters. The description only summarizes 'optional filtering' without adding parameter-specific details. Baseline 3 is appropriate as the schema already defines all parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'Cloud Hadoop clusters', and mentions optional filtering. Among sibling tools, it uniquely identifies this tool for listing Hadoop clusters, distinguishing it from other Hadoop list tools like ncloud_hadoop_list_addons or ncloud_hadoop_list_buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing clusters with optional filtering, but does not explicitly state when to use this tool over alternatives or provide any exclusions. For a read-only list tool, this level of guidance is adequate but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_cluster_typesBRead-only
List available cluster types for Cloud Hadoop
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopImageProductCode | No | Image product code filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already declares read-only behavior, and 'List' confirms it. However, the description adds no additional behavioral context such as pagination, return format, regional filtering semantics, or authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of six words, perfectly concise and front-loaded. Every word contributes to the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool, the description states the core function, but it does not explain the return structure (no output schema exists) or mention the typical use case (e.g., selecting types during cluster creation). Optional filters are documented in the schema, making it adequate but minimal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (both parameters have descriptions), so the description does not need to repeat them. It does not clarify how 'cloudHadoopImageProductCode' filters cluster types, but the schema already labels it as a filter, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource 'available cluster types for Cloud Hadoop'. It clearly distinguishes from sibling tools like list_clusters (which lists actual clusters) and list_products (which likely lists service products).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as list_products or list_image_products. It does not mention prerequisites, typical use in cluster creation, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_image_productsARead-only
List available Cloud Hadoop image products (engine versions)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which the description aligns with by using 'List'. The description adds the detail that results are engine versions, which is some extra context. However, it does not disclose any additional behavioral traits like return format, pagination, or region filtering behavior, relying mostly on the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, succinct sentence (7 words) that is front-loaded with the verb and object. It contains no filler or redundant information, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description provides adequate context to understand its purpose and differentiate it from siblings. It is not overly detailed, but it is sufficient for an agent to select and invoke the tool correctly, especially with the read-only annotation and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has only one parameter (regionCode) with 100% description coverage; the description does not need to elaborate on parameters. The baseline of 3 applies since the schema fully documents the parameter, and the description adds no redundancy or additional meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List available Cloud Hadoop image products' with a parenthetical clarification 'engine versions', which distinguishes this tool from sibling tools like ncloud_hadoop_list_products (likely hardware products) and ncloud_hadoop_list_cluster_types. The verb 'List' and specific resource make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is used when you need to list Hadoop image products/engine versions, but it does not explicitly state when to use it over alternatives or mention any prerequisites. It provides enough context for basic selection but lacks explicit guidance on when to prefer this tool over similar list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_login_keysARead-only
List login keys available for Cloud Hadoop SSH access
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, which the description aligns with via 'List'. The description adds the Hadoop SSH access scope but does not disclose further behavioral traits such as pagination, filtering behavior, or response format. Given the annotations cover the safety profile, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence of 10 words, front-loaded with the action verb 'List' followed by the specific resource and scope. There is zero wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one optional parameter, the description covers the essential purpose and scope, making it sufficient for tool selection and invocation. It could be slightly richer with explicit alternative guidance, but the current level of detail is adequate given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema coverage is 100%, with regionCode described as 'Region code' in the schema. The description does not mention parameters, but since the schema fully documents the only parameter, the baseline of 3 applies. No additional parameter semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'List' with resource 'login keys' scoped to 'Cloud Hadoop SSH access', clearly identifying its function. It distinguishes itself from the general ncloud_list_login_keys and the SES-specific ncloud_ses_get_login_keys siblings by the Hadoop context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool (for Cloud Hadoop SSH login keys), which effectively guides selection among siblings that operate on different resource types. It does not explicitly name alternatives or exclusions, but the Hadoop scope makes the intended use unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_mysql_instancesARead-only
List Cloud DB for MySQL instances for Hive metastore integration
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | No | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation, which already signals a safe read operation. It adds some scoping context ('for Hive metastore integration') but does not disclose details like filtering behavior, pagination, or response format. This is similar to the high-calibration example where limited extra context earned a 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that leads with the verb and resource, with no redundant content. Every word adds value, making it highly efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple (2 params, read-only, no output schema), the description lacks critical contextual details: it does not explain how parameters filter results, what the returned list contains, or how this relates to Hive metastore setup. The ambiguous phrase 'for Hive metastore integration' could mean these instances are already integrated or are candidates, creating confusion. This is insufficient for an agent to reliably select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters ('Region code' and 'Cloud Hadoop instance number') with 100% coverage, so the baseline is 3. The description does not add any additional meaning about how these parameters affect the listing, nor does it clarify the role of 'cloudHadoopInstanceNo' in the Hadoop context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('Cloud DB for MySQL instances') with a specific purpose ('for Hive metastore integration'). This distinguishes it from the sibling tool 'ncloud_list_mysql_instances' (generic MySQL listing) and other Hadoop-related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for Hive metastore integration' implies when this tool is useful, but it does not explicitly mention alternatives or exclusions. There is no guidance on when to prefer this over 'ncloud_list_mysql_instances' or other similar tools, leaving usage context implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_mysql_usersARead-only
List MySQL users for Hive metastore integration
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudMysqlInstanceNo | Yes | Cloud DB for MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, which is consistent with the description. The description does not disclose any additional behavioral traits such as filtering behavior, pagination, or the specific set of users returned. It adds no behavioral context beyond what annotations already guarantee, but it does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no superfluous words. It front-loads the verb and resource, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with well-documented parameters and annotations, the description is mostly sufficient. However, it lacks any detail about the response format or how the listed users relate to the Hive metastore configuration workflow, which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both parameters ('regionCode' and 'cloudMysqlInstanceNo') have clear descriptions. The tool description adds no additional meaning to the parameters, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (List) and resource (MySQL users) with a clear qualifier 'for Hive metastore integration', which distinguishes it from the general 'ncloud_list_mysql_users' tool and sibling Hadoop tools like 'ncloud_hadoop_list_mysql_instances'. The purpose is immediately clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('for Hive metastore integration') but does not explicitly state when to use this tool versus alternatives, nor does it provide any exclusions or mention of sibling tools like test_hive_metastore or save_hive_metastore. The context is helpful but not actionable as guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_notebook_bucketsARead-only
List Object Storage buckets available for Cloud Hadoop notebooks
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | No | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'List' verb aligns with that. The description adds the scope constraint ('available for Cloud Hadoop notebooks'), but provides no additional behavioral details such as pagination, required permissions, or default region behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the essential purpose with no wasted words. Every word contributes to understanding the tool's scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity, read-only annotation, and fully described schema parameters, the description is sufficient for an agent to understand the tool's core behavior. It does not explain return values, but no output schema exists and this is a simple list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters ('Region code', 'Cloud Hadoop instance number'). The description does not add meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('Object Storage buckets') with a clear scope ('available for Cloud Hadoop notebooks'). This distinguishes it from siblings like ncloud_hadoop_list_buckets by limiting to notebook-available buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'available for Cloud Hadoop notebooks' implies when to use this tool, but it does not explicitly state alternatives, prerequisites, or when not to use it. There is no mention of how this differs from related bucket-listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_notebook_componentsBRead-only
List available notebook components (e.g. Jupyter versions)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopImageProductCode | No | Image product code filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation declares this is a safe read operation, and the description is consistent with that. The description adds minimal context beyond the annotation—only the example of Jupyter versions hints at what the response contains. No additional behavioral details (pagination, auth, return structure) are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with zero wasted words. The verb 'List' leads immediately, and the parenthetical example adds useful specificity without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with full schema coverage and a readOnlyHint annotation, the description is minimally adequate. However, with no output schema, it could have explained the response format, and given the sibling tools, it could have clarified how 'components' differs from 'images' and 'products'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (regionCode, cloudHadoopImageProductCode) are already documented in the schema. The description adds no parameter-level meaning, meeting the baseline of 3 when the schema carries the full burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and identifies the resource as 'available notebook components' with a concrete example ('Jupyter versions'). However, it does not explicitly distinguish this from sibling tools like ncloud_hadoop_list_notebook_images or ncloud_hadoop_list_notebook_products, leaving potential ambiguity about what 'components' includes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is provided. The description does not mention when this tool should be chosen over the similar Hadoop notebook listing siblings (list_notebook_images, list_notebook_products), nor does it note any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_notebook_imagesBRead-only
List available notebook image products
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, so the description does not need to repeat that. However, it adds no additional behavioral context such as pagination, region-scoping behavior, or relationship between 'image products' and other listing tools. The description barely goes beyond the name and annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise phrase that conveys the essential purpose without filler. Every word adds value, and it is appropriately sized for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema), the description is minimally adequate but leaves gaps. It does not clarify what an 'image product' is, whether regionCode is needed to scope results, or what the response format looks like. The absence of an output schema makes some return-value context desirable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% since the only parameter, regionCode, is described as 'Region code'. The description itself provides no parameter-specific details beyond what the schema already states, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List available notebook image products' clearly states the action (list) and the resource (notebook image products). It is specific enough to distinguish from generic list tools, though it does not explicitly differentiate from the closely related sibling tool ncloud_hadoop_list_notebook_products.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_hadoop_list_notebook_products or ncloud_hadoop_list_image_products. The description does not mention any exclusions, preconditions, or use cases, leaving the agent without comparative context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_notebook_productsBRead-only
List available server types for notebook nodes
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopNotebookImageProductCode | No | Notebook image product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation covers the safety profile, so the description doesn't need to repeat it. The phrase 'available server types' adds a slight nuance but does not disclose behavior beyond what the annotation implies, such as pagination, delays, or output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that states the action and target resource clearly. No unnecessary words, no redundancy, and it is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with two optional parameters and no output schema, the description is largely sufficient. However, it doesn't clarify the relationship with sibling tools like list_notebook_images, which could lead to ambiguity in selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides descriptions for both parameters (regionCode and cloudHadoopNotebookImageProductCode) with 100% coverage. The description itself does not add further context about parameter values or formats, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses 'List' as a clear verb and specifies the resource as 'available server types for notebook nodes'. It distinguishes from sibling tools that list notebooks, images, or components, though it doesn't explicitly name those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor are any prerequisites or context mentioned. The agent is left to infer that it's for selecting server types when creating notebooks, but no explicit advice is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_notebooksBRead-only
List Cloud Hadoop notebook instances
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size | |
| regionCode | No | Region code | |
| cloudHadoopInstanceNo | No | Filter by cluster instance number | |
| cloudHadoopNotebookInstanceNoList | No | Notebook instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals this is a safe read operation. The description adds no further behavioral context—it does not mention filtering options, pagination behavior, return volume, or any limitations. This is a bare 'List' statement that adds no value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence ('List Cloud Hadoop notebook instances') with zero superfluous words. It efficiently captures the core action and resource, making it perfectly sized for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a straightforward list operation with no output schema. While the schema covers parameters and the readOnlyHint annotation is present, the description lacks any mention of what the response contains, whether all notebooks across clusters are returned by default, or any other operational detail. This is adequate but not complete for a tool with multiple optional filters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all five parameters (pageNo, pageSize, regionCode, cloudHadoopInstanceNo, cloudHadoopNotebookInstanceNoList) documented in the input schema. The description itself does not elaborate on parameter usage, but since the schema already does, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and identifies the resource ('Cloud Hadoop notebook instances'), clearly conveying the tool's function. However, it does not explicitly distinguish itself from sibling tools like ncloud_hadoop_get_notebook_detail or other list tools, though the resource type is precise enough to avoid major confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives (e.g., ncloud_hadoop_get_notebook_detail for details, or ncloud_hadoop_list_notebook_buckets for buckets). There is no mention of scenarios that favor this listing operation, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_objectsARead-only
List objects in Object Storage bucket linked to Cloud Hadoop
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | No | Bucket name | |
| regionCode | No | Region code | |
| directoryName | No | Directory path within bucket | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'List' wording is consistent. The description adds minimal behavioral context beyond the annotation—it does not mention pagination, return format, whether directoryName is required for listing, or how the Hadoop instance linkage affects results. With annotations present, this meets the baseline but does not exceed it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. Every element ('List', 'objects', 'Object Storage bucket', 'linked to Cloud Hadoop') contributes to the core meaning, making it an appropriately sized and well-structured description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 required param, no output schema, readOnly annotation), the description plus schema covers the basics. However, it does not disclose the response shape (since no output schema exists) or clarify that bucketName/directoryName are optional filters and how they interact with the required cloudHadoopInstanceNo. It is minimally viable but leaves gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented in the schema. The tool description adds no parameter-level semantics beyond what the schema provides, which lands at the baseline of 3 per the rubric.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a precise resource ('objects in Object Storage bucket') and a distinguishing scope ('linked to Cloud Hadoop'). It clearly differentiates from siblings like ncloud_list_objects (generic Object Storage listing) and ncloud_hadoop_list_buckets (lists buckets, not objects).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'linked to Cloud Hadoop' implies when this tool is appropriate, but there is no explicit guidance on when to prefer this over ncloud_list_objects or other sibling tools, nor any exclusions stated. The usage context is inferable but not directly documented.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_productsBRead-only
List available server types (specs) for Cloud Hadoop nodes
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudHadoopImageProductCode | No | Image product code filter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the readOnlyHint annotation. It doesn't describe the response format, potential filtering side effects, or how availability might vary by region or image product. The term 'available' hints at dynamic content but is not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence that front-loads the verb and immediately conveys the purpose. No wasted words or redundant structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with a readOnly annotation and fully described schema parameters, the description gives the essential purpose. However, without an output schema, the agent must infer what 'server types (specs)' means in terms of the returned data (e.g., codes, names, CPU/memory details). A bit more detail about the return structure would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for both parameters ('Region code' and 'Image product code filter'), so the description adds no additional parameter meaning. The description doesn't explain how these filters affect the list, but the schema already carries that burden, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('server types (specs) for Cloud Hadoop nodes'), distinguishing it from sibling tools like ncloud_hadoop_list_image_products. However, it does not elaborate on what 'specs' includes, so it stops short of being maximally precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. It doesn't mention that it's useful for cluster creation or how it relates to list_image_products. The word 'available' implies a use case, but no direct when-to-use instructions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_target_subnetsARead-only
List subnets available for Cloud Hadoop deployment
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_hadoop_list_target_vpcs) | |
| isPublic | No | true: public subnets only, false: private subnets only | |
| regionCode | No | Region code | |
| cloudHadoopImageProductCode | Yes | Cluster image product code (from ncloud_hadoop_list_image_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint: true annotation already indicates this is a safe read operation. The description adds the context that it lists subnets 'available for Cloud Hadoop deployment', which is a selection criterion beyond the annotation. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no unnecessary words. It front-loads the action and resource, making it efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool, the description is complete enough. Required parameters are documented in the schema, safety is covered by the annotation, and no output schema is present. It could mention dependencies on prior calls, but those are already referenced in the parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with each parameter having a meaningful description, including references to related tools. The description itself does not add extra parameter semantics beyond the schema, which meets the baseline for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List subnets available for Cloud Hadoop deployment' clearly states the verb (List), resource (subnets), and context (for Cloud Hadoop deployment). It distinguishes from other target_subnets tools by specifying the Cloud Hadoop service, though it does not explicitly name alternative tools. Purpose is clear and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit when-to-use or alternative guidance. However, the parameter descriptions for vpcNo and cloudHadoopImageProductCode reference ncloud_hadoop_list_target_vpcs and ncloud_hadoop_list_image_products, implying that this tool is used after those calls to obtain available subnets. This implicit usage context is useful but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_list_target_vpcsARead-only
List VPCs available for Cloud Hadoop deployment
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds that the result is filtered to VPCs available for Hadoop deployment, which is useful behavioral context. However, it does not clarify what 'available' means (e.g., region eligibility, zone support) or describe return format/pagination, so the bar is only partially met.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single seven-word sentence, front-loaded with the verb 'List,' and contains zero redundant information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, read-only list tool, the description adequately conveys purpose and scope. It lacks an explicit note that regionCode is optional or details on what makes a VPC 'available,' but the low complexity and readOnlyHint annotation make the description sufficient for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter regionCode is fully described in the input schema as 'Region code' (100% coverage). The description adds no parameter-specific detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('VPCs'), and clearly scopes it to 'available for Cloud Hadoop deployment.' This distinguishes it from the general ncloud_list_vpcs and related Hadoop target-list tools (e.g., ncloud_hadoop_list_target_subnets).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'available for Cloud Hadoop deployment' clearly implies this tool is for selecting VPCs when provisioning Hadoop clusters, providing clear context. It does not explicitly name alternatives or exclusions, but the Hadoop-specific scoping makes the intended usage evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_save_hive_metastoreC
Save external Hive metastore configuration to Cloud Hadoop cluster
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudMysqlUserName | Yes | MySQL user name for metastore | |
| cloudMysqlInstanceNo | Yes | Cloud DB for MySQL instance number | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number | |
| cloudMysqlDatabaseName | Yes | MySQL database name for metastore | |
| cloudMysqlUserPassword | Yes | MySQL user password |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits on its own. It only states the action without revealing side effects (e.g., whether it overwrites existing configuration), validation behavior, or prerequisites. This is insufficient for a mutation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It is appropriately front-loaded and easy to parse, though it could potentially add more useful context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 6 parameters and no output schema, the description is minimal. It lacks context about what 'save' entails (e.g., updating existing config, verification steps, relationship to the 'test_hive_metastore' tool), making it incomplete for an agent to know when and how to use it safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description itself adds no additional parameter semantics beyond implying they relate to the Hive metastore configuration. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Save external Hive metastore configuration to Cloud Hadoop cluster' uses a specific verb ('save') and identifies the resource ('external Hive metastore configuration') and destination ('Cloud Hadoop cluster'). It clearly states the operation, though it does not explicitly distinguish itself from the sibling tool 'ncloud_hadoop_test_hive_metastore', which seems related.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, typical scenarios, or contrast with sibling tools like 'test_hive_metastore' or 'backup_config'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_hadoop_test_hive_metastoreARead-only
Test connectivity to external Hive metastore (Cloud DB for MySQL)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code | |
| cloudMysqlUserName | Yes | MySQL user name for metastore | |
| cloudMysqlInstanceNo | Yes | Cloud DB for MySQL instance number | |
| cloudHadoopInstanceNo | Yes | Cloud Hadoop instance number | |
| cloudMysqlDatabaseName | Yes | MySQL database name for metastore | |
| cloudMysqlUserPassword | Yes | MySQL user password |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already discloses that this is a safe read operation, and the description's 'Test connectivity' aligns with that. However, the description adds no extra behavioral context beyond the annotation—such as whether the test is synchronous, what success/failure looks like, or that it sends credentials to the target. With annotations present, the bar is lower, but the description adds minimal value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the verb 'Test' and clearly identifies the resource. No unnecessary words or repetition. It is appropriately sized for its purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a fairly simple purpose, and the schema and annotations cover parameter details and the read-only nature. However, there is no output schema and the description does not explain what the test result will look like (e.g., return values, error cases) or when a user would typically invoke this tool (e.g., before configuring a metastore). This is minimally adequate for a simple test tool but leaves some gaps in operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all six parameters have descriptions. The tool description adds the high-level context that this is for an external Hive metastore backed by Cloud DB for MySQL, but it does not provide any parameter-specific clarifications or explain how the parameters relate to the connectivity test. This matches the baseline of 3 where the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Test connectivity') and the specific resource ('external Hive metastore (Cloud DB for MySQL)'). This distinguishes it from sibling tools like ncloud_hadoop_save_hive_metastore, which is about saving configuration rather than testing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or that it might be a precursor to saving metastore settings. The context implied by the name is not expanded in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_head_bucketARead-only
Check if an Object Storage bucket exists and you have permission to access it (HEAD request, returns headers only). Caution: the legacy endpoint has been observed to answer 200 for names that exist only in Ncloud Storage (ncloud_ncs_*), so confirm membership with ncloud_list_buckets when in doubt
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description goes beyond that by disclosing the HEAD-request mechanism, the headers-only return, and the observed false-positive 200 behavior on the legacy endpoint. This is genuinely additional behavioral context that helps the agent interpret results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: one states purpose and mechanism, the other is a targeted caution with a concrete mitigation. No filler or repeated schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only HEAD check, the description covers what it returns, the existence/permission semantics, and the main reliability caveat plus a verification path. Nothing essential for selecting or invoking this tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers bucketName with a clear description at 100% coverage, and the description does not add format or syntax detail beyond that. Baseline 3 is appropriate because the schema carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Check'), resource ('Object Storage bucket'), and includes the HEAD-request/headers-only qualifier, so it is clearly distinct from bucket-listing, ACL, and object-level tools. It also alludes to the sibling ncloud_ncs_head_bucket by warning about NCS-only names, reinforcing scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent to confirm membership with ncloud_list_buckets when in doubt, and explains why (legacy endpoint may return 200 for ncloud_ncs_* bucket names). This gives a concrete condition for delegating to an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_head_objectARead-only
Retrieve metadata of an object without returning the object body (HEAD request)
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket | |
| objectName | Yes | Object key (path) to get metadata for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is safe, and the description adds the key behavioral detail of returning metadata without the object body. However, it does not disclose other relevant behaviors such as potential 404 responses or required permissions. The added context is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is a single, focused sentence that immediately conveys the tool's purpose and key distinction. There is no redundancy or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only retrieval tool with two well-documented parameters and a readOnlyHint annotation, the description provides sufficient context for correct invocation. It could mention return header details, but this is not critical given the standard HTTP semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% parameter coverage with descriptions for both bucketName and objectName. The tool description adds no additional parameter semantics, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Retrieve') and clearly identifies the resource ('metadata of an object') while distinguishing this from body-returning operations via 'without returning the object body (HEAD request)'. This differentiates it from sibling tools like ncloud_get_object and ncloud_list_objects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly conveys the appropriate use case: when only metadata is needed and the body is not required. It does not explicitly name alternatives or exclusions, but the HEAD request semantics provide clear context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_import_login_keyB
Import an SSH public key as a login key
| Name | Required | Description | Default |
|---|---|---|---|
| keyName | Yes | Name for the login key | |
| publicKey | Yes | SSH public key content to import |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It does not mention side effects (e.g., behavior if key name already exists), success/failure semantics, or return values. It only restates the basic action without adding operational insight.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states the action with no unnecessary words. It is appropriately sized for the tool's simplicity and front-loads the key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no annotations, no output schema, and only a one-line description, the context is incomplete. It lacks guidance on side effects, prerequisites, or what happens on success/failure. While the schema covers parameters, the description fails to provide operational completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, and the description adds no additional meaning beyond what the schema already provides. The baseline of 3 is appropriate because the schema handles parameter semantics adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Import') and resource ('SSH public key') with a clear target ('login key'), making the action unambiguous. It distinguishes itself from sibling tools like create_login_key and delete_login_keys by focusing on importing an existing key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no context such as 'use when you have an existing public key'. It simply states the action without any situational context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_initiate_multipart_uploadB
Initiate a multipart upload for a large object in Object Storage
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) for the multipart upload | |
| bucketName | Yes | Name of the bucket | |
| contentType | No | Content-Type for the object |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does not mention that this is the first step of a multi-step process requiring subsequent upload_part and complete_multipart_upload calls, nor does it state that an upload ID is returned and must be managed. The description is too sparse to inform the agent about side effects or statefulness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded and free of filler. It states the essential purpose without redundancy. No unnecessary words or details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too brief for a complex multipart upload operation. It lacks critical context about the multipart workflow, such as the need to call upload_part and complete_multipart_upload after initiation, the requirement to abort if not completed, and the absence of an output schema means the return value is not explained. The agent would not know how to proceed after calling this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (key, bucketName, contentType) having a clear description. The tool description itself adds no extra parameter meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Initiate a multipart upload') and the resource ('a large object in Object Storage'), with a specific verb and scope. It distinguishes from sibling tools like ncloud_upload_part, ncloud_complete_multipart_upload, and ncloud_abort_multipart_upload, as 'initiate' is uniquely the starting step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a large object' implies a use case, but there is no explicit guidance on when to use this versus alternatives like ncloud_put_object for small objects or ncloud_upload_part for subsequent steps. No exclusions or workflow context is provided, so the usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_interrupt_serverA
Interrupt a server instance for diagnostics of abnormal behavior
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number to interrupt |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must carry the full burden of behavioral disclosure. It states that the tool 'interrupts' a server, which implies a disruptive action, but it does not explain what the interruption entails (e.g., forced shutdown, pause), whether it is reversible, or any side effects like data loss or service downtime. The vague term 'interrupt' could be misinterpreted without operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly states the action and purpose without any wasted words. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema and no annotations, the description is functional but minimal. It omits operational details such as what 'interrupt' does differently from 'stop' or 'reboot', and what the expected outcome or response is. However, the simple structure means the description is not severely incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the only parameter, serverInstanceNo, as 'Server instance number to interrupt,' achieving 100% schema description coverage. The tool description itself adds no further parameter-level meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'interrupt' with the resource 'server instance' and a clear purpose clause 'for diagnostics of abnormal behavior.' This distinguishes it from similar server lifecycle tools like stop, reboot, and terminate by indicating a diagnostic context, though it does not explicitly contrast with those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for diagnostics of abnormal behavior' provides clear context for when to use this tool: when a server is behaving abnormally and needs interruption for investigation. It does not list alternative tools or exclusions, but the diagnostic intent is sufficient to guide selection among sibling server management tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_add_acl_ruleB
Add IPv4 addresses to the IP ACL of a KMS key to allow token requests from those IPs.
| Name | Required | Description | Default |
|---|---|---|---|
| ipList | Yes | IPv4 addresses to allow (e.g. ['192.168.1.1']) | |
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false, so the description carries most of the behavioral burden. It adds useful effect context by stating that the added IPs will 'allow token requests from those IPs', but it does not disclose whether the operation appends to or replaces existing ACL entries, what permissions are required, or whether the ACL must already be active.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no redundant or filler content. Every clause contributes to identifying the operation and its effect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation tool with no output schema and sparse annotations, the description covers the core action and effect. However, it omits operationally relevant context such as whether the ACL must be enabled, whether the add is additive or replacing, and what the caller should expect afterward.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both keyTag and ipList documented directly in the schema. The description adds no further parameter-level meaning such as IP format constraints or key tag derivation, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Add), resource (IPv4 addresses to the IP ACL of a KMS key), and effect (allow token requests from those IPs). It is clear enough to distinguish from the sibling delete_acl_rule by action, but it does not explicitly contrast itself with alternatives such as ncloud_kms_enable_ip_acl or ncloud_kms_get_acl_rule_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use or when-not-to-use guidance. It never mentions prerequisites (e.g., whether IP ACL must already be enabled) or points to alternatives like enable_ip_acl or delete_acl_rule. The effect statement implies a use case, but there is no explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_cancel_key_deletionAIdempotent
Cancel a pending key deletion request. Only keys in REVOKE state can be cancelled.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds valuable behavioral context beyond annotations by specifying the REVOKE state requirement and the nature of the operation (cancelling a pending request). This helps the agent understand the key lifecycle implications without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long and front-loads the action immediately. Every word earns its place, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple tool with one parameter and no output schema. The annotations cover idempotency and non-destructiveness, and the description covers the key state requirement. Together, this is fully complete for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter keyTag, so the schema already documents it. The description does not add any additional parameter meaning beyond what the schema provides, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Cancel' and the resource 'pending key deletion request', and adds a specific precondition ('Only keys in REVOKE state'). This distinguishes it from siblings like ncloud_kms_request_key_deletion and ncloud_kms_delete_key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear context for use: only keys in REVOKE state can be cancelled. This implies the tool should be used when a deletion request is pending and the key is in the REVOKE state. It doesn't explicitly name alternatives, but the state requirement is a strong usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_create_custom_keyA
Generate a random raw key (data encryption key) wrapped by the specified master key. Used for envelope encryption. Only AES256 or RSA2048 key types supported.
| Name | Required | Description | Default |
|---|---|---|---|
| bits | No | Key size in bits: 128, 256 (default), or 512 | |
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| context | No | Base64-encoded context for convergent encryption (max 50 bytes) | |
| requestPlainKey | No | Whether to return the plaintext key (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false, so the description carries the burden. It adds that only AES256/RSA2048 are supported and frames the operation as generating a wrapped key. However, it omits significant behavioral traits such as the deterministic effect of the 'context' parameter (convergent encryption) and the security sensitivity of requestPlainKey, which returns a plaintext key.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences, each earning its place: the first states the core action and object, the second gives the purpose, and the third lists a key constraint. No redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description ideally should explain what the tool returns (e.g., a wrapped key, with plaintext optionally when requestPlainKey is true). It does not describe the return structure or mention prerequisites like the master key existing. These gaps matter for a security-focused API, though the core function is adequately conveyed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's mention of 'Only AES256 or RSA2048 key types supported' adds a useful constraint, but it is ambiguous relative to the bits parameter which lists 128/256/512, and there is no explicit mapping between bits and key type. Thus, added value beyond the schema is limited.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Generate a random raw key (data encryption key) wrapped by the specified master key.' It also specifies the use case ('Used for envelope encryption') and distinguishes from other KMS operations like create_key, which creates a master key, and encrypt/decrypt, which operate on existing data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly identifies the intended scenario: 'Used for envelope encryption,' giving an agent clear context for when to choose this tool. It does not explicitly name alternative tools or exclusions, but within the KMS family, the envelope encryption phrasing sufficiently directs usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_create_keyA
Create a new KMS key. Supports AES256 (symmetric), RSA2048 (asymmetric), and ECDSA key types.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | No | Key memo/description (0-100 chars) | |
| keyName | Yes | Key name (3-15 chars, alphanumeric + '-' + '_', must start with letter) | |
| keyType | Yes | Key type: AES256 (symmetric 256-bit), RSA2048 (asymmetric 2048-bit), ECDSA (asymmetric 256-bit) | |
| isConvergent | No | Enable convergent encryption (only for AES256, default: false) | |
| isAutoRotation | No | Enable auto rotation (default: false) | |
| protectionType | Yes | Key storage type: BASIC (encrypted internal storage) or COMMON_HSM (Hardware Security Module) | |
| rotationPeriod | No | Auto rotation period in days (1-730, default: 90). Only when isAutoRotation is true |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, and the description adds no additional behavioral context such as permissions required, lifecycle side effects, key availability, or deletion behavior. Since this is a create operation, the agent has no information about what happens after creation beyond the schema's parameter hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is just two sentences, front-loaded with the primary action ('Create a new KMS key') and then lists supported types. Every word earns its place with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema covering all seven parameters, the description covers the core intent and key types. However, for a create tool with no output schema and no behavioral details, it is only minimally adequate; it could benefit from mentioning that key versions or rotation settings are handled via other tools, but it is not fatally incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% parameter coverage with descriptions for every field, including keyName constraints, keyType enum meanings, and optional parameters like isAutoRotation and rotationPeriod. The description adds no extra parameter guidance, but the schema already carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Create' and identifies the resource 'KMS key', then lists supported key types (AES256, RSA2048, ECDSA). This clearly distinguishes the tool from sibling KMS operations like encrypt/decrypt/delete, which are present in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by listing supported key types, signaling which scenarios this tool fits (e.g., creating symmetric AES256 or asymmetric RSA/ECDSA keys). However, it does not explicitly state when to choose this over alternatives like ncloud_kms_create_custom_key, nor does it mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_create_token_generatorA
Create (activate) a token generator for a KMS key. Enables token-based authentication for cryptographic operations.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=false, and the description adds the 'activate' aspect and the resulting capability. However, it does not disclose full behavioral traits like idempotency, prerequisites (e.g., key must exist), or what happens if a token generator already exists. With annotations covering the destructive profile, this is baseline adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the verb, and no fluff. Every word contributes to explaining the tool's purpose and effect.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description is largely sufficient. It explains what it does and why. It could be slightly more complete by explicitly stating prerequisites (e.g., the key must already exist) but these are reasonably implied by the reference to a KMS key.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage for the only parameter (keyTag) with a clear description. The tool description adds no additional parameter-specific meaning beyond referencing the KMS key, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action (Create/activate) and the resource (token generator for a KMS key), plus the purpose (enables token-based authentication). It distinguishes itself from sibling tools like update/get/delete token generator.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it is used to create/activate a token generator for a KMS key to enable token-based authentication. However, it does not explicitly contrast with alternatives (e.g., when to use update_token_generator instead) or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_create_token_setA
Create a token set (access token + refresh token) for token-based authentication. Requires an active token generator.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| accessTokenHours | No | Access token validity in hours (1-17520, default 72); 'UL' for unlimited | |
| refreshTokenHours | No | Refresh token validity in hours (1-17520, default 2160); 'UL' for unlimited |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Only destructiveHint=false is provided, so the description must carry most of the behavioral burden. It adds the prerequisite about an active token generator, which is genuinely useful, but says nothing about whether the issued token values are returned only once, whether the operation is idempotent, or whether existing token sets are affected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with no filler; the core action is stated first and the prerequisite follows. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description would ideally say what comes back (the token values) since that is the whole point of the call. The prerequisite is covered, but the return behavior and any one-time visibility of tokens are left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with per-parameter descriptions including ranges, defaults, and the 'UL' option, so the schema does the heavy lifting. The description names the two token concepts but adds no syntax, default, or keyTag details beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Create a token set') and clarifies the payload ('access token + refresh token') and its purpose ('token-based authentication'). It does not explicitly distinguish itself from the sibling ncloud_kms_create_token_generator beyond the prerequisite mention, so it falls just short of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one real precondition, 'Requires an active token generator,' which routes the agent toward the generator lifecycle. However, it never names the sibling to call first (ncloud_kms_create_token_generator) or states when this tool should be used instead of other KMS credential operations, leaving the when-to-use guidance implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_decryptARead-only
Decrypt ciphertext using a KMS key. Only AES256 or RSA2048 key types supported. Ciphertext must include KMS prefix (ncpkms:version:ciphertext).
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| context | No | Base64-encoded context used during encryption (required if convergent encryption was used) | |
| ciphertext | Yes | Ciphertext data including KMS prefix (string or array of strings) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a non-destructive read operation. The description adds valuable behavioral context by specifying the supported key algorithms and the mandatory KMS prefix, which are not disclosed in annotations. No contradictions exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action, and contains no filler. Every sentence provides operational constraints that are useful for correct invocation. Excellent conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential invocation details: supported key types, ciphertext prefix requirement. It does not explicitly state the return value, but the output (decrypted plaintext) is implied by 'decrypt'. Since no output schema exists, a brief note on return format would improve completeness, but the core usage is sufficiently covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% parameter descriptions, so the baseline is 3. The description adds extra meaning by highlighting key type restrictions relevant to keyTag and reiterating the ciphertext prefix format, which reinforces the schema's ciphertext description. This modest addition warrants a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Decrypt ciphertext using a KMS key.' It also specifies supported key types (AES256 or RSA2048) and the required ciphertext prefix format, distinguishing this tool from sibling KMS operations like encrypt, sign, or verify.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by stating which key types are supported and the required ciphertext format, giving the agent enough information to decide when this tool is appropriate. It does not explicitly exclude alternatives, but the constraints effectively guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_delete_acl_ruleADestructiveIdempotent
⚠️ Destructive: Remove IPv4 addresses from the IP ACL of a KMS key. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| ipList | Yes | IPv4 addresses to remove from the ACL (required) | |
| keyTag | Yes | Key tag - unique identifier derived from key name (required) | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, and the schema documents the confirm gate, so the description's ⚠️ warning and confirm note largely restate structured data. It adds the IPv4 scoping detail, but does not describe blast radius or auth requirements beyond what is already covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The destructive warning and the execution gate are front-loaded, so the most important fact reaches the agent first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but for a destructive list-removal tool the description covers purpose and the confirm gate adequately; the safety profile is carried by annotations and the parameter detail by the schema. It stops just short of stating preconditions (e.g. ACL must already exist).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description echoes the confirm=true execution gate but adds no syntax, format, or constraint meaning beyond what the schema already provides for keyTag, ipList, and confirm.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Remove IPv4 addresses from the IP ACL of a KMS key.' The verb 'Remove' cleanly distinguishes it from siblings like ncloud_kms_add_acl_rule and ncloud_kms_get_acl_rule_list, so an agent can tell what it does without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: it's implicitly for removing ACL entries and it flags the confirm=true requirement. There is no explicit when-to-use framing, no mention of prerequisites or of sibling alternatives (enable/disable IP ACL), leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_delete_keyADestructiveIdempotent
⚠️ Destructive: Permanently delete a KMS key. This action is irreversible. The key must be in REVOKE state (deletion requested) before it can be permanently deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name (required) | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, but the description adds valuable context: it's irreversible, requires the key to be in REVOKE state, and requires a confirm flag. This goes beyond the annotation's simple destructive flag and provides operational detail. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with a warning emoji, and contains no fluff. Every sentence provides necessary safety or usage information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given two parameters, no output schema, and annotations covering destructiveness, the description covers the essential safety preconditions and execution requirement. It could mention what happens if the key is not in REVOKE state, but this is not critical for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both keyTag and confirm thoroughly. The description adds a slight reinforcement that confirm=true actually executes the operation, but this largely mirrors the schema description for confirm. It does not add new meaning for keyTag beyond what's in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Permanently delete a KMS key.' This clearly distinguishes it from sibling tools like ncloud_kms_request_key_deletion (which requests deletion) and ncloud_kms_cancel_key_deletion (which cancels a request).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit context for when to use this tool: 'The key must be in REVOKE state (deletion requested) before it can be permanently deleted.' It also instructs the user to 'Set confirm=true to execute,' which is a clear usage requirement. It doesn't name alternatives explicitly but the state precondition implies the appropriate sequence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_delete_token_generatorADestructiveIdempotent
⚠️ Destructive: Delete (deactivate) the token generator for a KMS key. All existing tokens will be invalidated. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name (required) | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: 'All existing tokens will be invalidated' and 'Set confirm=true to execute.' It explains the side effect and the confirmation mechanism, which are critical for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences front-load the destructive warning and provide essential usage information without extraneous detail. The structure is efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter destructive operation, the description covers purpose, effect, and required confirmation. The annotations already declare destructiveHint, so the safety profile is complete without needing an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes both parameters with 100% coverage. The description's instruction to 'Set confirm=true' reinforces the confirm parameter's purpose but adds little new information beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Delete (deactivate)' and the target 'token generator for a KMS key', which distinguishes it from sibling tools like create/update/get token generator. The verb and resource are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear: deleting/deactivating a token generator, and it warns about token invalidation. It doesn't explicitly mention alternatives or when not to use, but the lifecycle context is clear enough for an agent to select this over create/update.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_disable_auto_rotationBIdempotent
Disable automatic key rotation for a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, but the description adds no additional behavioral context such as reversibility, effect on scheduled rotations, or permission requirements. It provides no value beyond what annotations already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that directly states the action. Every word earns its place, with no unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with annotations present, the description conveys the core purpose but lacks explanation of the effect on the key's rotation schedule or how it relates to other KMS rotation tools. It is minimally viable but leaves gaps in contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% description coverage for the single parameter (keyTag), and the description adds no further parameter detail. Baseline 3 applies because the schema fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Disable') and clearly identifies the resource ('automatic key rotation for a KMS key'). It distinguishes this tool from sibling tools like ncloud_kms_enable_auto_rotation and ncloud_kms_rotate_key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as ncloud_kms_enable_auto_rotation or ncloud_kms_update_rotation_period. The description simply states the action without providing context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_disable_ip_aclAIdempotent
Disable IP ACL for a KMS key, allowing token requests from any IP.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false. The description adds the behavioral consequence of disabling the ACL (allowing any IP), which is important security context. It does not describe reversibility or what happens to existing rules, but for a simple toggle, this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, uses active voice, and front-loads the action. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter toggle operation, the description plus annotations cover the action, its effect, and safety profile. The only minor gap is not explicitly pointing to the enable counterpart for reversibility, but that is implied by sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes keyTag ('Key tag - unique identifier derived from key name'), and the description adds no additional parameter guidance. With 100% schema coverage, the description is not required to elaborate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Disable'), identifies the resource ('IP ACL'), and the target ('KMS key'), and explains the effect ('allowing token requests from any IP'). This clearly distinguishes it from sibling tools like ncloud_kms_enable_ip_acl and other KMS key operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it (when you want to allow all IPs for token requests) and contrasts with the enable operation by the opposite effect. However, it doesn't explicitly mention alternatives or when not to use it, so it misses a formal exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_disable_keyAIdempotent
Disable an active KMS key. Disabled keys cannot be used for cryptographic operations.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, and the description adds the key behavioral detail that the key becomes unusable for cryptographic operations. This goes beyond the annotations, although it does not discuss reversibility or implications for existing operations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the action and followed by the consequence. Every word earns its place, with no redundant or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a single required parameter, full schema coverage, and safe annotations (non-destructive, idempotent), the description adequately explains the purpose and effect. It omits explicit mention of reversibility or return value, but these are not critical for this simple operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: keyTag is described as a unique identifier derived from key name. The description does not add any further parameter information, so it provides no extra value beyond the schema, which is the baseline case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Disable an active KMS key') and its functional effect ('Disabled keys cannot be used for cryptographic operations'). It distinguishes this tool from siblings like ncloud_kms_enable_key and ncloud_kms_delete_key by specifying the exact operation on the key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a context for use (when a key needs to be made inactive) and states a consequence, but it does not explicitly mention when to use this tool over related actions like enable, delete, or request deletion. No exclusions or alternatives are referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_disable_key_versionAIdempotent
Disable a specific version of a KMS key. Disabled versions cannot decrypt data encrypted with that version.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| version | Yes | Key version number to disable |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the behavioral consequence that disabled versions cannot decrypt data encrypted with that version, which is valuable context beyond annotations. However, it does not mention whether encryption operations are also affected or whether re-enabling is possible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the action and follow with the key consequence. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with full schema coverage and informative annotations, the description covers the purpose and the material effect on decryption. It doesn't address return behavior or edge cases, but no output schema exists and the annotation covers idempotency. Slight gap about whole-key vs version disabling is more relevant to usage guidelines.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description covers both parameters 100% (keyTag as unique identifier, version as version number). The description adds no additional detail about parameter semantics beyond what schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb+resource+scope: 'Disable a specific version of a KMS key'. The consequence sentence adds useful context that distinguishes it from disabling the entire key or enabling versions, though it doesn't name siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case: targeting a specific version of a KMS key. It does not explicitly state alternatives like `ncloud_kms_disable_key` for whole-key disablement, nor does it state when not to use this tool. The context is clear but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_enable_auto_rotationBIdempotent
Enable automatic key rotation for a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, which already indicate the safety profile. The description adds no additional behavioral context beyond the basic action—no mention of side effects (e.g., scheduling, key version changes), prerequisites, or what happens to existing rotation settings. With annotations present, the description fails to add value about the behavior of enabling auto rotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no superfluous words. It is front-loaded with the verb and resource. However, it is quite sparse and could include relevant context without becoming verbose, so it does not earn a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one parameter, no output schema), but the description does not cover prerequisites (e.g., key must exist, rotation period must be configured), the effect of enabling auto rotation, or return behavior. Given the low complexity, the description is minimally adequate but leaves important operational context unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of the parameter (keyTag) with a clear description ('Key tag - unique identifier derived from key name'). The tool description does not mention keyTag at all, so it adds no meaning beyond the schema. Baseline of 3 is appropriate given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource combination ('Enable automatic key rotation for a KMS key') and clearly identifies the target resource. It distinguishes this tool from sibling tools like ncloud_kms_disable_auto_rotation and ncloud_kms_rotate_key by specifying the action (enable auto rotation) rather than manual rotation or disabling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for enabling automatic key rotation, but it does not explicitly state when to use it versus alternatives (e.g., manual rotation with ncloud_kms_rotate_key or disabling with ncloud_kms_disable_auto_rotation). No prerequisites, conditions, or exclusions are provided. Usage is inferred from the tool name and sibling context rather than explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_enable_ip_aclAIdempotent
Enable IP ACL to control which IP addresses can request tokens for a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations (idempotentHint=true, destructiveHint=false) already communicate safety, and the description aligns with them by describing an enable action. The description adds the behavioral context that the IP ACL controls which IP addresses can request tokens, but it does not disclose side effects such as whether existing ACL rules are preserved or whether it affects active requests. Given the annotations cover safety, this adds some but not rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the action ('Enable IP ACL') and its purpose without any wasted words. It is appropriately concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple: one required parameter fully described in the schema, annotations provide the safety profile, and no output schema is needed for an enable action. The description sufficiently explains what the tool does and why it would be used. However, it does not describe return values or any prerequisites beyond keyTag, but given the low complexity, this is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% because the single parameter keyTag is fully described in the input schema ('Key tag - unique identifier derived from key name'). The tool description does not mention the parameter, but since the schema already carries the meaning, the baseline of 3 applies. No additional parameter semantics are provided beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Enable' and identifies the resource 'IP ACL' with a clear purpose: 'to control which IP addresses can request tokens for a KMS key.' This distinguishes it from the sibling tool ncloud_kms_disable_ip_acl, which performs the opposite action. The verb+resource combination makes the purpose immediately clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool's usage: enable IP ACL when you need to restrict token requests to certain IP addresses. However, it provides no explicit guidance on when to use this tool versus alternatives like ncloud_kms_add_acl_rule or ncloud_kms_disable_ip_acl, nor does it mention any exclusions or prerequisites. It offers clear context but no direct alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_enable_keyAIdempotent
Enable a disabled KMS key to make it usable again.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds the state transition (disabled → enabled) and the consequence of usability, which is useful context. It does not mention permissions, reversibility, or side effects, but with annotations covering the safety profile, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the action and clearly states the condition and result. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with comprehensive schema coverage and solid annotations, the description sufficiently covers the purpose and outcome. It does not explicitly state prerequisites (e.g., key must exist and be disabled), but this is implied and the tool is simple enough that the description is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the only parameter, keyTag, as a 'unique identifier derived from key name'. The tool description adds no additional parameter semantics, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Enable a disabled KMS key') with a clear result ('make it usable again'). It distinguishes itself from sibling tools like ncloud_kms_disable_key (opposite action) and ncloud_kms_enable_key_version (targets key version, not the key).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'disabled KMS key' explicitly indicates the condition under which to use the tool. However, no alternative tools or exclusions are mentioned (e.g., cannot enable a key pending deletion), but the context is clear for a single-state transition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_enable_key_versionBIdempotent
Enable a specific version of a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| version | Yes | Key version number to enable |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, but the description adds no further behavioral context. It does not explain what happens if the version is already enabled, whether the operation is reversible, or any side effects on key lifecycle (e.g., canceling deletion schedules). The description relies entirely on the annotations and the verb itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundancy. It is front-loaded with the action and resource, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple state-change operation with full schema coverage and annotations, the description is minimally sufficient but leaves gaps: it does not mention key lifecycle context (e.g., enabling a disabled version, effect on rotation) or how this action differs from enabling the entire key. The tool is simple, but the description could offer more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptive parameter definitions for keyTag ('unique identifier derived from key name') and version ('Key version number to enable'). The tool description adds no additional semantics beyond what the schema already covers, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Enable') and the specific resource ('a specific version of a KMS key'), making it distinct from sibling tools like ncloud_kms_disable_key_version or ncloud_kms_enable_key. The verb+resource combination is precise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives such as ncloud_kms_enable_key (enabling the whole key) or ncloud_kms_disable_key_version. It neither mentions prerequisites (e.g., the version must be disabled) nor indicates any exclusions or preferred scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_encryptARead-only
Encrypt data (up to 32KB) using the current version of a KMS key. Only AES256 or RSA2048 key types supported.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| context | No | Base64-encoded context for convergent encryption (required if key has convergent encryption enabled, max 50 bytes) | |
| plaintext | Yes | Base64-encoded plaintext data (string or array of strings, max 32KB each) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true annotation, the description adds value by noting size limits and key type support. However, it does not disclose the return format (e.g., ciphertext) or note that encryption may produce non-deterministic results, which would be useful behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the verb 'Encrypt', and every word contributes. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with full schema coverage and an annotation, the description is adequate but incomplete: it does not mention that the output is ciphertext or clarify the role of the 'context' parameter for convergent encryption. Since there is no output schema, some return-value information would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% description coverage for all three parameters (keyTag, context, plaintext). The tool description adds no additional parameter meaning beyond what the schema already states, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Encrypt data), the resource (KMS key), and includes specific constraints (up to 32KB, current key version, AES256/RSA2048). This distinguishes it from sibling tools like decrypt or sign.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for encryption and provides important constraints (size, key types), but it does not explicitly mention when to use this tool over alternatives like ncloud_kms_decrypt or ncloud_kms_sign. It lacks explicit exclusions or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_acl_rule_listARead-only
Get the list of IP addresses allowed by the IP ACL of a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is covered. The description adds that the result is the list of allowed IP addresses, which is useful, but says nothing about ordering, pagination, or behavior when no ACL is configured.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the verb and the returned resource, with zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with annotations covering the safety profile and no output schema, stating that it returns the ACL-allowed IP list is nearly sufficient. Slightly light on whether an empty/no-ACL state is possible.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the lone keyTag parameter is documented in the schema, so the description need not carry it. It adds no extra meaning about the identifier beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get), resource (ACL rule list / allowed IP addresses), and scope (of a KMS key's IP ACL). It is easily distinguishable from siblings like ncloud_kms_add_acl_rule or ncloud_kms_delete_acl_rule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to call this versus alternatives such as ncloud_kms_enable_ip_acl, ncloud_kms_disable_ip_acl, or the add/delete ACL rule tools. No prerequisites (e.g. that the key must exist or that IP ACL must be enabled) are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_key_activity_logsBRead-only
Get activity logs (usage history) for a specific KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| pageNo | No | Page number (default: 1) | |
| keyword | No | Keyword filter | |
| pageSize | No | Page size (default: 100) | |
| timestampTo | No | End of the range (Unix epoch milliseconds) | |
| timestampFrom | No | Start of the range (Unix epoch milliseconds) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this is a safe read, so the description's only added value is glossing 'activity logs' as 'usage history'. It does not disclose pagination behavior, result ordering, retention window, or whether the caller needs key-level permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the verb, resource, parenthetical clarification, and scope. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only log-retrieval tool with a fully documented schema this is minimally adequate, but with no output schema the description could reasonably say what an activity-log entry contains or how paging works, which it omits.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so keyTag, pageNo, keyword, pageSize, timestampFrom, and timestampTo are all already documented in the schema. The description only implies the keyTag requirement via 'for a specific KMS key' and adds nothing about filtering or time-range semantics. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get activity logs ... for a specific KMS key') and clarifies the resource with '(usage history)'. It is clear what the tool returns, but it does not distinguish itself from near siblings such as ncloud_kms_get_latest_use_info, which an agent could confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use or when-not-to-use guidance and names no alternative, even though ncloud_kms_get_latest_use_info and the key-list tools exist as plausible candidates. The agent must infer the choice from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_key_infoARead-only
Get detailed information about a specific KMS key by its keyTag.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, signaling a safe read operation. The description adds that the tool returns 'detailed information' for one key, but does not elaborate on the exact data returned, permission requirements, or error behaviors. It is consistent with annotations and adds minimal context beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant wording. Every word contributes to identifying the operation and its target resource, making it highly concise and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only lookup, the description is functionally sufficient to guide selection and invocation. A minor gap is that 'detailed information' is vague and there is no output schema, so the agent cannot anticipate the returned fields or structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the keyTag parameter fully with a clear description ('unique identifier derived from key name'). The tool description merely restates 'by its keyTag' without adding further format, provenance, or usage nuance, so it adds no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb ('Get detailed information') plus resource ('KMS key') and identifier ('keyTag'), making the tool's purpose unambiguous. It clearly distinguishes from sibling tools like ncloud_kms_get_key_list or ncloud_kms_get_key_version_list, which serve different retrieval scopes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving details of a single key when keyTag is known, but it does not explicitly state when to use this instead of alternatives such as ncloud_kms_get_key_list or ncloud_kms_get_key_version_list. No exclusions or alternative naming are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_key_listARead-only
Get list of all KMS keys with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Page size 1-200 (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation. The description adds the pagination behavior, which is useful, but does not disclose details such as default page size, ordering, or potential inconsistencies when paginating through a changing dataset. This meets the baseline for a tool with annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant wording. It wastes no space and directly states the key aspects: action, resource, and pagination.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only listing tool with two optional parameters and no output schema, the description plus schema is sufficient to guide an agent. It identifies the resource and pagination, and the annotations cover side-effect safety. It does not explain return structure, but that is not necessarily required for such a straightforward list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes both parameters (pageNo, pageSize) with defaults and constraints, so schema coverage is high. The description's mention of pagination adds marginal context but does not go beyond what the schema implies. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('list of all KMS keys'), and the scope ('all'), which distinguishes it from sibling tools like ncloud_kms_get_key_info (single key) and ncloud_kms_get_key_version_list (key versions). This is a specific and unambiguous verb+resource combination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the tool to call when you need a paginated list of all KMS keys, and the sibling context confirms this is distinct from detail/version/log tools. However, there is no explicit when-to-use or when-not-to-use guidance or named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_key_version_listARead-only
Get list of all versions for a specific KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, but the description adds no additional behavioral context such as pagination, version states, or response format. It doesn't go beyond what the annotation already provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant words. It is appropriately sized for a simple list operation and front-loaded with the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one well-documented parameter and a readOnlyHint annotation, the description adequately covers the essential purpose. No output schema or complex behavior exists to require additional explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents keyTag with 'Key tag - unique identifier derived from key name' (100% coverage). The description does not add any parameter semantics beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Get list of all versions for a specific KMS key.' It clearly differentiates from sibling tools like ncloud_kms_get_key_list (which lists keys) and ncloud_kms_get_key_info (which gets key info).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (listing versions of a key) but provides no explicit guidance on when to use this tool versus alternatives, nor any exclusions. The context is clear, but no sibling differentiation or when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_latest_use_infoBRead-only
Get the most recent usage information for a specific KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds no further behavioral context, such as what 'usage information' includes, whether it returns a single record, or if any special permissions are needed. It does not contradict the annotation, but provides no extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant wording. It front-loads the action and resource effectively and is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema) and the readOnlyHint annotation, the description is minimally sufficient. However, it lacks details about what 'usage information' consists of, which could be critical for an agent deciding if this tool meets the user's need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (keyTag is well described as 'unique identifier derived from key name'). The description does not add any additional meaning to the parameter beyond echoing it ('specific KMS key'), so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('most recent usage information for a specific KMS key'), which is specific and distinct from other KMS tools like get_key_info or get_key_activity_logs. It does not explicitly compare with siblings, but the resource is unique enough to avoid confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as ncloud_kms_get_key_activity_logs or ncloud_kms_get_key_info. The description only states what it does, leaving the agent to infer usage from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_public_keyARead-only
Get the public key for an asymmetric key (RSA2048 or ECDSA only). Returns the latest enabled version unless keyVersion is given.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| keyVersion | No | Key version to query (1-100). Omit for the latest version; disabled versions cannot be queried |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds genuine behavioral context beyond that: only asymmetric keys of specific algorithms are supported, and the returned version defaults to the latest enabled one. It omits rate limits or response-shape details, but for a read tool this is solid added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences with the core purpose and applicability first and the version-default caveat second. No filler, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with read-only annotations and a fully covered schema, the definition supplies what an agent needs: what it returns, the key-type restriction, and which version is selected by default. Return-value detail is not required since no output schema exists, though a brief note on the response content would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents both keyTag and keyVersion, including the 'omit for latest version; disabled versions cannot be queried' note. The description's version-defaulting sentence largely restates the schema, so it adds only marginal meaning over structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (get the public key) and adds an applicability constraint (asymmetric keys, RSA2048 or ECDSA only), which distinguishes it from symmetric-key siblings like encrypt/decrypt. It does not name an alternative tool, so it is a clear standalone purpose rather than a routing-quality one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The applicability constraint (asymmetric keys only) and the version-default behavior imply when the tool is valid, but there is no explicit when-to-use vs when-not guidance and no reference to a sibling such as get_key_info. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_get_token_generatorBRead-only
Get token generator information for a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, so the bar is lower. The description adds minimal context beyond that (e.g., 'for a KMS key'), but does not disclose any additional behaviors such as response structure or error cases. It is consistent with the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no redundant words or filler. It front-loads the essential purpose and is appropriate for a simple read operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool with one parameter and a read-only annotation, the description is minimally sufficient. However, with no output schema, it would benefit from a brief mention of what 'token generator information' includes or any notable return values, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter keyTag, and the description does not add any meaning beyond what the schema already provides. The baseline of 3 applies since the description does not compensate with extra parameter detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (get) and resource (token generator information) within the context of a KMS key. It distinguishes itself from sibling tools like create/update/delete_token_generator by making the read intent explicit, though it does not name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus others, nor are any prerequisites or exclusions mentioned. The description simply states what it does without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_migrate_keyB
Migrate a KMS key to another region (KR or JPN). The key becomes usable from the target region's KMS endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| targetRegion | Yes | Target region: KR (Korea) or JPN (Japan) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral burden. It usefully discloses the post-condition ('becomes usable from the target region's KMS endpoint'), but says nothing about whether the key remains usable in the source region, whether migration is reversible, whether it is synchronous, or what permissions are needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the action and scope, then the outcome. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation tool with a fully covered schema and no output schema, the description is adequate on purpose and effect. However, with no annotations it should say more about the key's state in the source region and reversibility to fully equip an agent to call it safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both keyTag and the targetRegion enum (KR/JPN) documented in the schema. The description restates the region options but adds no syntax, format, or lookup detail beyond what the schema already supplies, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Migrate') plus resource ('KMS key') and scope ('to another region'), which clearly separates it from sibling operations like ncloud_kms_rotate_key or ncloud_kms_reencrypt. It stops short of explicitly naming any alternative to route against, so it is clear but not sibling-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use, when-not-to-use, or alternative guidance. The reader must infer from the purpose alone that this is the tool for regional relocation; prerequisites (key state, permissions, downtime) and any contrasting sibling are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_reencryptA
Re-encrypt ciphertext with the latest version of the specified master key. Used after key rotation to update encrypted data. Only AES256 or RSA2048 key types supported.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| context | No | Base64-encoded context for convergent encryption | |
| ciphertext | Yes | Ciphertext to re-encrypt (string or array of strings) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It usefully discloses that only AES256 or RSA2048 key types are supported and that re-encryption uses the latest key version. However, it does not disclose the output format, whether the original ciphertext is replaced or returned, or any side effects such as requiring certain permissions. This leaves important behavioral details unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, front-loaded with the primary action. Every sentence adds relevant information (what it does, when to use, constraints), with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description covers the core purpose and a key constraint (supported key types) but omits the return behavior. It does not explain what the tool returns (e.g., new ciphertext) or how the 'context' parameter affects the operation, leaving gaps for an agent unfamiliar with KMS. It is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides complete descriptions for all three parameters (keyTag, context, ciphertext), including that ciphertext can be a string or array. The tool description adds no parameter-specific detail beyond what the schema provides, so it meets the baseline for high schema coverage but does not go beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Re-encrypt') and resource ('ciphertext with the latest version of the specified master key'), making the tool's function unambiguous. It also distinguishes itself from related KMS siblings like ncloud_kms_encrypt and ncloud_kms_decrypt by focusing on re-encryption after key rotation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly provides a use case: 'Used after key rotation to update encrypted data.' This gives clear context for when to invoke the tool. It does not explicitly list exclusions or alternatives, but the stated purpose is sufficient for an agent to select it appropriately among the many KMS operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_request_key_deletionB
⚠️ Destructive: Request deletion of a KMS key. The key enters REVOKE state and will be permanently deleted after the scheduled date. This action can be cancelled before the destroy date.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states 'Destructive' and explains the key enters REVOKE state with permanent deletion after the scheduled date. However, the annotation destructiveHint is false, directly contradicting the description. This is a serious inconsistency that misleads the agent about the tool's safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the destructive warning, and uses two clear sentences to explain the lifecycle and cancellability. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, the description covers the key behavioral facts: state transition, scheduled permanent deletion, and that it can be cancelled. It does not mention return values, but none are specified, and the lifecycle explanation is sufficient for an agent to understand the action's implications. Minor gap: no explicit prerequisite that the key must exist, but that is implied by requesting deletion of a specific key.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for the single parameter keyTag, with a description of 'Key tag - unique identifier derived from key name'. The tool description adds no additional parameter detail, so the baseline of 3 is appropriate because the schema already fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Request deletion of a KMS key') on a specific resource, and it distinguishes this tool from immediate-delete and cancel-deletion siblings by describing the scheduled deletion flow. The verb 'request' and the mention of REVOKE state make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use this tool: to initiate a cancellable, scheduled deletion of a KMS key. It notes that the action can be cancelled before the destroy date, implying an alternative cancel operation, but it does not explicitly name or compare alternatives like 'ncloud_kms_cancel_key_deletion' or 'ncloud_kms_delete_key' for immediate deletion. No explicit exclusion is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_rotate_keyA
Rotate an active key to create a new version. Only enabled keys can be rotated.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must disclose behavior. It does state the primary effect (creating a new version) and a precondition (enabled key), but omits important details like whether old versions remain usable, permission requirements, or reversibility—leaving some behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence conveys the action, outcome, and a condition with no unnecessary words. It is front-loaded with the verb and immediately clarifies the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating KMS operation with no output schema and empty annotations, the description is somewhat minimal. It does not explain side effects on existing key versions, required permissions, or how it relates to automatic rotation, leaving gaps for an agent deciding to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the sole parameter (keyTag) with coverage at 100%, so the description adds no additional parameter semantics. Baseline of 3 applies since the schema already handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb and resource: 'Rotate an active key to create a new version.' It specifies the outcome (new version) and distinguishes this from sibling operations like ncloud_kms_enable_auto_rotation, emphasizing manual key rotation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a condition ('Only enabled keys can be rotated') but no explicit guidance on when to use manual rotation versus automatic rotation or other key-management alternatives. It implies context but lacks exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_signBRead-only
Generate a digital signature for data (up to 8KB). Only RSA2048 or ECDSA key types supported.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Base64-encoded data to sign (max 8KB) | |
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already communicates the non-mutating nature. The description adds useful constraints (8KB data limit, RSA2048/ECDSA key types) that are not in annotations. However, it does not disclose the return format or any error behaviors, which is a gap since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exactly two sentences, front-loaded with the core action and immediately followed by a key constraint. Every word earns its place; there is no redundant or vague language. It is concise and well-structured for quick agent parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (2 required params, both documented in schema) and annotations cover the read-only safety profile. However, the absence of an output schema means the description should have explained the return value or signature format, which it does not. The missing output detail prevents a higher score, though the basic operation is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both data and keyTag having descriptions. The description repeats the '8KB' limit already present in the data parameter's schema description, adding no new parameter semantics. Thus, it does not go beyond what the schema provides, justifying the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate a digital signature for data (up to 8KB)' with a specific verb and resource. It also adds a key type constraint (RSA2048 or ECDSA), which helps narrow scope. However, it does not explicitly differentiate from sibling tools like ncloud_kms_verify or ncloud_kms_encrypt, so it does not fully meet the highest bar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description only states what it does and a key type constraint, not any preconditions (e.g., needing a compatible key) or exclusions. There is no mention of when to prefer sign over verify or other cryptographic operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_update_key_nameBIdempotent
Update the name of a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| keyName | Yes | New key name (3-15 chars, alphanumeric + '-' + '_', must start with letter) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent and non-destructive behavior, but the description adds no additional behavioral context. It does not clarify that only the display name changes and the underlying key material remains unaffected, nor does it explain the relationship between keyTag and keyName during a rename.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with zero redundancy. It is front-loaded with the core action and resource, making it extremely concise and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple operation with 2 parameters and helpful schema/annotations, the description is minimally viable. However, it omits useful context about side effects (e.g., whether the key tag changes, whether references remain valid) and does not explain the derivation of keyTag from keyName, which could confuse an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the schema (keyTag and keyName) with clear definitions, so the high schema coverage sets a baseline of 3. The tool description itself adds no parameter-level information, relying entirely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (update) and the resource (the name of a KMS key). It is specific and unambiguous, distinguishing itself from sibling tools like ncloud_kms_update_memo or ncloud_kms_update_rotation_period by targeting the key name itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that it only updates the name, nor does it reference related tools or prerequisites such as how to obtain the keyTag.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_update_memoBIdempotent
Update the memo/description of a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | Yes | New memo content (0-100 chars) | |
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the operation as idempotent and non-destructive. The description adds no extra behavioral context (e.g., constraints, side effects, prerequisites) beyond restating the action, so it provides minimal value beyond the structured data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It efficiently conveys the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter update tool with annotations and a clear schema, the description is functional but lacks usage context, alternatives, or return-value information. It does not obstruct understanding but is not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameters. The description adds no additional meaning beyond what the schema already states about 'memo' and 'keyTag', so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('update') and resource ('memo/description of a KMS key'), making the tool's purpose clear. It is distinct from sibling KMS tools like update_key_name and update_rotation_period, though it does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the name and description: it should be used to update the memo field of a KMS key. However, no explicit when-to-use or alternative guidance is provided relative to other KMS update tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_update_rotation_periodBIdempotent
Update the auto rotation period for a KMS key.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| rotationPeriod | Yes | Rotation period in days (1-730) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is known. However, the description adds no additional behavioral context, such as whether the change takes effect immediately, whether it applies to all key versions, or any side effects. It merely restates the tool's purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with zero waste. It is front-loaded and immediately communicates the tool's function, achieving high conciseness without missing critical information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter configuration update, the description is adequate, but it lacks usage context (when to use vs. related tools) and does not mention any return value or post-conditions. With annotations covering safety and schema covering parameters, the description is minimally sufficient but not enriched.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (keyTag and rotationPeriod) having clear descriptions. The tool description adds no extra parameter detail, but the schema already provides sufficient meaning, making the baseline score of 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Update') and resource ('auto rotation period for a KMS key'), clearly stating the action. It distinguishes from sibling tools like ncloud_kms_rotate_key (manual rotation) and ncloud_kms_enable_auto_rotation/disable_auto_rotation by focusing on the period itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives, such as enabling/disabling auto rotation or manually rotating a key. It lacks any prerequisites (e.g., whether the key must already have auto rotation enabled) or contextual triggers for invoking this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_update_token_generatorAIdempotent
Update (rotate) the token generator for a KMS key. Generates a new secret for token creation.
| Name | Required | Description | Default |
|---|---|---|---|
| keyTag | Yes | Key tag - unique identifier derived from key name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, lowering the bar. The description adds behavioral context by stating it 'Generates a new secret for token creation,' which clarifies the core effect. However, it does not discuss potential side effects (e.g., invalidation of existing tokens) or other operational details, so it only partially expands on the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences (19 words) with the action verb first and the effect immediately after. Absolutely no filler; every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple tool with one parameter, full schema coverage, and annotations for safety. The description explains the operation and its outcome, which is sufficient for an agent to invoke it correctly. It lacks explicit sibling differentiation, but that is already addressed in purpose clarity, and the simplicity of the tool limits the need for further context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: keyTag is described as 'Key tag - unique identifier derived from key name.' The tool description redundantly mentions 'KMS key,' but the schema already conveys the meaning. No additional syntax or format details are provided, so the description adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Update (rotate)') and resource ('token generator for a KMS key'), clearly distinguishing this from sibling tools like create/get/delete token generator. It also explains the effect: 'Generates a new secret for token creation.' This is unambiguous and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied through 'Update (rotate)' – it is for rotating an existing token generator, not creating or deleting one. However, it does not explicitly state when to use this tool versus alternatives or mention exclusions, so guidance is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_kms_verifyARead-only
Verify a digital signature against data. Only RSA2048 or ECDSA key types supported.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Base64-encoded original data that was signed | |
| keyTag | Yes | Key tag - unique identifier derived from key name | |
| signature | Yes | Signature value to verify |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is known. The description adds behavioral context beyond this: it specifies that only RSA2048 or ECDSA key types are supported, warning that other key types will fail. This is useful operational knowledge not present in the annotations. It does not contradict the read-only hint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—two short sentences. The action is front-loaded ('Verify a digital signature'), and the key type constraint is stated in a single additional sentence. No wasted words or redundancy with the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a verification tool with no output schema, the description does not disclose the return value or behavior on signature mismatch (e.g., does it return false or throw an error?). This is important for an agent to interpret the result correctly. The key type limitation is covered, but the outcome semantics are missing, leaving a gap in completeness for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with descriptions for all three parameters ('data', 'keyTag', 'signature'), so the schema already explains each parameter. The description adds minimal parameter-level meaning, only implicitly linking 'data' and 'signature' via the verb 'verify'. This meets the baseline for fully documented schema parameters but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Verify a digital signature against data' with a specific verb (verify) and resource (digital signature/data). It distinguishes from sibling tools like ncloud_kms_sign, encrypt, or decrypt by focusing on verification. The added constraint 'Only RSA2048 or ECDSA key types supported' further clarifies scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. The description merely states what it does and a key type limitation, but does not mention scenarios such as 'use to confirm authenticity of signed data' or exclude cases where another KMS operation might be more appropriate. The sibling ncloud_kms_sign is not referenced, leaving the agent to infer the relationship.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_acgsARead-only
List all Access Control Groups (ACGs) in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| pageNo | No | Page number for pagination (0 or 1 for first page) | |
| pageSize | No | Page size for pagination (1-1000, required when pageNo is set) | |
| accessControlGroupName | No | Filter by ACG name | |
| accessControlGroupNoList | No | Filter by ACG numbers | |
| accessControlGroupStatusCode | No | Filter by ACG status code (INIT | SET | RUN | TERMTING) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already establishes that this is a safe read operation, so the description does not need to repeat that. The description adds the 'current region' scope, which is a useful behavioral constraint. However, it does not disclose additional behavioral traits such as pagination defaults, performance implications, or what happens when no region is configured. Since annotations cover the safety profile, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the action and resource: 'List all Access Control Groups (ACGs) in the current region'. It contains no filler, redundancy, or irrelevant details. Every word contributes to defining the tool's purpose and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (a list operation with optional filters) and the high schema coverage, the description is nearly complete. The lack of an output schema means the description does not need to explain return values. The only gap is that it does not mention pagination behavior, but the schema covers pageNo/pageSize semantics. Overall, the context provided by description + schema + annotations is sufficient for invoking the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All six parameters are fully described in the schema (100% coverage), including types and specific descriptions like 'Filter by VPC number' and 'Page number for pagination (0 or 1 for first page)'. The description itself adds no parameter-specific meaning beyond the schema. Per the guideline, when schema coverage is high, a baseline of 3 is appropriate even without additional parameter details in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List'), the resource ('Access Control Groups (ACGs)'), and the scope ('in the current region'). It distinguishes the tool from sibling tools like ncloud_get_acg_detail and ncloud_create_acg by conveying a list-all operation. The phrase 'all' also indicates that the default behavior is to return all ACGs, with optional filters available via parameters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied: one uses this tool when they need to list ACGs in the current region. However, the description does not explicitly mention alternatives, such as using ncloud_get_acg_detail for a single ACG or ncloud_get_acg_rules for rules. It also doesn't state any prerequisites or when filtering would be appropriate, though the parameter schema offers filter options. This is a clear but not fully guided context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_asg_activity_logsARead-only
List activity logs (scaling actions) for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true already in annotations, the description adds the scoping constraint 'scaling actions', clarifying what kind of logs are returned. It does not disclose additional behaviors such as pagination limits, event retention window, or any authentication prerequisites, but the annotation covers the safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with 10 words, front-loaded with 'List activity logs'. It contains no irrelevant details and is optimally concise for a straightforward list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, but since there is no output schema, the description does not explain what the returned log entries contain (e.g., fields, timestamps). It also omits any default pagination behavior or time range. The essential scope is clear, but for a tool returning data, a bit more detail would make it comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents all three parameters with descriptions (100% coverage), including 'Page number for pagination', 'Page size for pagination', and 'Auto Scaling Group number'. The description adds no further parameter meaning, so it relies on the schema – meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'activity logs (scaling actions) for an Auto Scaling Group'. It precisely differentiates this from general activity log tools (like ncloud_get_activity_logs) and other ASG management operations by specifying the log scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied: use when you need scaling actions for an ASG. However, there is no explicit guidance on when not to use it, nor any mention of alternative tools like ncloud_get_activity_logs or ncloud_list_scaling_policies. The description neither names alternatives nor provides exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_asgsARead-only
List all Auto Scaling Groups in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| autoScalingGroupName | No | Filter by Auto Scaling Group name | |
| autoScalingGroupNoList | No | Filter by Auto Scaling Group numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the 'current region' scoping context, which is useful. However, it does not disclose pagination behavior, default page sizes, or what fields are returned, and the readOnlyHint annotation already covers the safety profile. No contradictions exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with a clear verb and object, no filler words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with four optional parameters and a readOnly annotation, the description is mostly adequate. It could mention that it returns a list of ASGs and that pagination is supported, but the schema already exposes the parameters and the operation type is obvious. Slightly incomplete regarding return value specifics, hence 4.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with descriptions for pageNo, pageSize, autoScalingGroupName, and autoScalingGroupNoList. The tool description adds no parameter-specific details beyond what the schema already provides, so it lands at the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and resource 'Auto Scaling Groups' with a scope of 'current region', clearly distinguishing it from sibling tools like ncloud_get_asg_detail (for a single ASG) and ncloud_create_asg (for creation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, such as ncloud_get_asg_detail for detailed information or ncloud_list_asg_activity_logs for activity logs. Usage is implied by the name and phrase 'List all Auto Scaling Groups', but no when-not or alternative instructions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_av_eventsARead-only
List Anti-Virus malware detection events from Security Monitoring. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (>= 1, default 1) | |
| order | No | Sort order | |
| zoneName | No | Zone name | |
| regionCode | No | Region code | |
| endDateTime | Yes | Search end time in Unix epoch milliseconds | |
| malwareType | No | Filter by malware type | |
| countPerPage | No | Items per page (>= 1, default 50) | |
| detectionPath | No | Filter by detection path | |
| startDateTime | Yes | Search start time in Unix epoch milliseconds | |
| infectedServerIp | No | Filter by infected server IP |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint is already provided, indicating a safe read operation. The description adds the subscription prerequisite but does not disclose rate limits, pagination, or response behavior. Since the annotation covers the safety profile, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single succinct sentence with no filler. Clearly front-loaded with the verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with comprehensive schema descriptions and a readOnlyHint annotation, the description sufficiently identifies the data source, event type, and subscription requirement. It doesn't detail output structure, but no output schema is provided and the tool type is well-understood.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage across all 10 parameters, so parameter meaning is already well-documented. The description itself does not add parameter semantics, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Anti-Virus malware detection events from Security Monitoring, using the specific verb 'List' and a specific resource type. It distinguishes itself from sibling event-listing tools (e.g., ncloud_list_ids_events, ncloud_list_waf_events) by focusing on AV events.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (AV malware detection events) and adds an eligibility constraint (Security Monitoring subscription). However, it does not explicitly contrast with alternative event-listing tools or provide when/when-not guidance beyond the subscription requirement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_block_storageARead-only
List all block storage instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| serverInstanceNo | No | Filter by attached server instance number | |
| blockStorageInstanceNoList | No | Filter by block storage instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals that the tool performs a read-only operation, so the description's 'List' is consistent. The description adds the important 'current region' scoping constraint, but does not disclose pagination behavior, response format, or whether filters change the 'all' semantics. With annotations covering safety, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero wasted words. Every term ('List', 'block storage instances', 'current region') is meaningful and directly conveys the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description is clear and the schema/annotations handle parameters and safety, the description is minimal. It does not mention that the tool supports filtering (despite saying 'List all') nor describe the return structure or pagination behavior. For a list tool without an output schema, this could leave the agent uncertain about what fields are returned. The description is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters in the schema have descriptions covering pagination pageNo/pageSize and filtering by serverInstanceNo/blockStorageInstanceNoList. The tool description adds no additional parameter semantics beyond what the schema already provides. According to the rubric, this is baseline 3 because schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all block storage instances in the current region' uses a specific verb ('List') and resource ('block storage instances'), with clear scope ('current region'). It clearly distinguishes from sibling tools like ncloud_get_block_storage_detail (get a single instance) and ncloud_create_block_storage (create).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the tool's use case: listing block storage instances. It does not explicitly mention exclusions or name alternative tools (e.g., 'for a single instance, use get_block_storage_detail'), but the context is straightforward and implies when to use this list operation. No misleading guidance is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_bucketsARead-only
List all Object Storage buckets in the current region
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint: true, so the description doesn't need to disclose safety. It adds useful scoping details: it lists ALL buckets and only in the current region, which helps set expectations about scope. However, it does not mention pagination, ordering, or return format, so it doesn't fully disclose all behavioral aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no filler or redundant information. Every word carries meaning, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool, the description sufficiently states what it lists and the scope. It doesn't specify the return schema, but given the simplicity of the operation, this is an acceptable gap. The read-only annotation and empty schema keep the context small.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is empty, so the description carries no parameter documentation burden. The baseline score of 4 applies due to the absence of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with the clear resource 'Object Storage buckets' and scopes it to 'current region', making it easy for an agent to know exactly what this tool does. This distinguishes it from sibling tools like ncloud_list_cache_buckets or ncloud_list_mssql_buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly identifies the target resource (Object Storage buckets) and geographic scope, which implies the appropriate use case: enumerating buckets in the current region. It does not explicitly state alternatives or exclusions, but the resource qualifier provides sufficient context for most selection scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_backup_detailsARead-only
List system backup details (file names, sizes) for one Cloud DB for Cache instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, so the description only needs to add context. It does add that the tool returns file names and sizes and targets system backups, which is helpful, but it doesn't disclose further behavior such as ordering, filtering, or response shape. This is similar to the calibration case where annotations carry the main burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. It communicates the core action, the resource, the return content, and the scope without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple schema (2 params, 1 required) and read-only annotation, the description covers the essential context. It mentions the key return values (file names, sizes) even though no output schema exists. It could state the system-vs-manual distinction more explicitly, but the name and wording make it sufficiently clear for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both regionCode and cloudCacheInstanceNo clearly described. The description adds no new meaning beyond the schema, so the baseline of 3 is appropriate; it doesn't compensate for any gaps because there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('List'), a specific resource ('system backup details'), and explicitly states what is included ('file names, sizes') and the scope ('for one Cloud DB for Cache instance'). This clearly distinguishes it from sibling tools like ncloud_list_cache_manual_backup_details and ncloud_list_cache_backups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it by scoping to 'system backup details' and 'one instance', but it never explicitly states when to prefer this over ncloud_list_cache_manual_backup_details or other backup-related siblings. Usage context is inferable but not articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_backupsARead-only
List system backups for Cloud DB for Cache in the region. This API takes no instance filter — use ncloud_list_cache_backup_details for one instance's backups.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, and the description adds meaningful scoping context ('system backups', region-wide, no instance filter). However, it does not disclose pagination, response structure, or other behavioral details; the description adds context but not rich behavioral info.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The primary purpose and key limitation are front-loaded, and the alternative sibling is named concisely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-optional-parameter list operation with a readOnlyHint annotation and no output schema, the description is complete. It explains what it lists, the scope, and how to get per-instance backups; nothing essential is missing for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter regionCode is fully described in the schema with examples. The description does not need to add parameter meaning; at baseline 3 it is acceptable since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('List system backups') and a specific resource ('Cloud DB for Cache in the region'). It explicitly distinguishes itself from the sibling tool ncloud_list_cache_backup_details, so an agent can tell them apart without inspecting either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly states the scope ('takes no instance filter') and names the exact alternative for per-instance backups ('use ncloud_list_cache_backup_details'). This is explicit routing guidance with no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_bucketsARead-only
List Object Storage buckets available for Cloud DB for Cache backup export
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number the export will run from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds the specific purpose (available for backup export) which implies filtering by eligibility, but does not disclose other behaviors like pagination, response format, or permission requirements. It adds some context beyond annotations but is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the action and context. It is concise, front-loaded, and free of unnecessary words. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with read-only annotation and no output schema, the description is adequate. It clearly states what is listed and for what purpose. It does not mention pagination or response details, but these are not critical for a straightforward list call. It could be slightly more explicit about the required instance number, but that is implied by the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both regionCode and cloudCacheInstanceNo are documented. The description does not add any additional meaning to the parameters; it only relates to the overall purpose. With full schema coverage, the baseline is 3, and no extra value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Object Storage buckets for a specific purpose: Cloud DB for Cache backup export. It uses a specific verb (List) and resource (Object Storage buckets), and the context distinguishes it from generic bucket listing tools like ncloud_list_buckets and ncloud_ncs_list_buckets, as well as similar tools for other DB services (e.g., ncloud_list_mssql_buckets).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose is clear enough to infer when to use it: when you need buckets for Cloud DB for Cache backup export. It does not explicitly name alternatives or state when not to use it, but the specific context and sibling list make the usage scenario obvious. It lacks explicit exclusions but the context is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_config_groupsBRead-only
List all Cloud Cache config groups, optionally filtered
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| configGroupNo | No | Filter by config group number | |
| configGroupName | No | Filter by config group name | |
| cloudCacheDbmsCode | No | Filter by DBMS type: Redis | Valkey | |
| cloudCacheModeCode | No | Filter by mode: SIMPLE | CLUSTER | |
| cloudCacheInstanceNo | No | Filter by the Cache instance the group is applied to | |
| cloudCacheServiceName | No | Filter by Cache service name | |
| cloudCacheImageProductCode | No | Filter by Cache image product code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already declares the safety profile, and the description's "List" verb is consistent with it (no contradiction). The description adds minimal behavioral context: "all" states the unfiltered scope and "optionally filtered" implies filter params are optional. However, it discloses nothing about pagination, response size limits, or default behavior — notable gaps for a "list all" operation, though the annotation lowers the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste: "List all Cloud Cache config groups, optionally filtered". It is appropriately sized given that the schema fully documents parameters. It is slightly sparse — a sibling-routing hint could have been added without bloat — but as pure efficiency it excels.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low-complexity: all 8 parameters are optional with full schema documentation, and the annotation covers the read-only safety profile. However, there is no output schema, and the description says nothing about what the response contains or pagination behavior, which matters for a "list all" operation. Adequate for a simple read tool, but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — all 8 optional parameters are individually documented with descriptions, and the 2 enum parameters specify their allowed values (Redis|Valkey, SIMPLE|CLUSTER). The description's "optionally filtered" merely restates what the schema already implies, adding no meaning beyond it. Baseline 3 applies since the schema carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"List" is a specific verb and "Cloud Cache config groups" is a precise resource, so the core action is unambiguous. The "optionally filtered" clause signals the tool's filtering capability. It distinguishes itself from ncloud_create_cache_config_group and ncloud_delete_cache_config_group by verb and from ncloud_list_cache_instances by resource, though it never names these siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. Closely related siblings exist (ncloud_list_cache_config_group_versions, ncloud_list_cache_instances, ncloud_get_cache_instance_detail), but the description provides no selection context, exclusions, or conditions. An agent must infer usage entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_config_group_versionsARead-only
List available Cloud Cache config group versions. The suffix is the mode: '-simple' = Standalone, '-cluster' = Cluster — it must match the cloudCacheModeCode used at instance creation.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudCacheDbmsCode | No | Filter by DBMS type: Redis | Valkey |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds valuable behavioral context about the naming convention and its dependency on instance creation mode, which goes beyond annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action, every sentence earns its place. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with optional filters and readOnlyHint, the description explains the essential naming convention for interpreting results. The absence of an output schema is not a significant gap given the simplicity. Minor omission: no mention of pagination or return format, but not critical here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (both regionCode and cloudCacheDbmsCode have descriptions). The description does not add meaning beyond the schema for these parameters; it only explains the result naming convention, not the parameters themselves. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('List available Cloud Cache config group versions') and clearly distinguishes from sibling ncloud_list_cache_config_groups (which lists config groups themselves, not versions). The suffix explanation (simple=Standalone, cluster=Cluster) adds precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context (suffix must match cloudCacheModeCode used at instance creation) but does not explicitly state when to use this tool over alternatives like ncloud_list_cache_config_groups or ncloud_get_cache_instance_detail. Usage is implied from the name and context, not explicitly contrasted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_instancesARead-only
List all Cloud DB for Cache (Redis/Valkey) instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| pageNo | No | Page number (0-based). Requires pageSize | |
| pageSize | No | Page size (min 1). Required when pageNo is given | |
| subnetNo | No | Filter by subnet number | |
| zoneCode | No | Filter by zone code (e.g. KR-1, KR-2) | |
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| generationCode | No | Filter by server generation: G2 | G3 | |
| cloudCacheDbmsCode | No | Filter by DBMS type: Redis | Valkey | |
| cloudCacheServerName | No | Filter by Cache server name | |
| cloudCacheServiceName | No | Filter by Cache service name | |
| cloudCacheInstanceNoList | No | Filter by Cache instance numbers | |
| cloudCacheServerInstanceNoList | No | Filter by Cache server instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the scoping constraint 'current region', which is useful behavioral context beyond the readOnlyHint annotation. It does not disclose pagination behavior or return format, but given the read-only nature and simplicity, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It front-loads the action and resource, making it easy for an agent to quickly grasp the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list operation with full schema coverage and a readOnlyHint annotation, the description is sufficiently complete. It does not describe the return structure, but no output schema exists, and the operation's purpose is clear. Minor details like pagination dependencies are already in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are described in the schema. The description does not add any parameter-specific meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'Cloud DB for Cache (Redis/Valkey) instances', and the scope 'current region'. This distinguishes it from sibling tools like ncloud_list_cache_backups or ncloud_get_cache_instance_detail without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. The purpose is inferable from the name, but there is no direct statement about when not to use it or when to prefer a sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_manual_backup_detailsARead-only
List manual backup details (file names, sizes) for one Cloud DB for Cache instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) | |
| cloudCacheInstanceNo | Yes | Cloud Cache instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation. The description adds only the returned content hint ('file names, sizes') and instance scoping; it does not disclose pagination, limits, authentication, or other behavioral caveats.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence that front-loads the verb, resource, and distinguishing scope. No filler, no repetition of schema details, and every word contributes to understanding what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with two well-documented parameters and no output schema, the description is largely complete: it names the resource, scope, and expected output fields. Minor gaps remain around exact response structure and how this relates to ncloud_list_cache_manual_backups, but the risk is low.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters described and regionCode providing examples. The description adds no new parameter-level semantics beyond linking cloudCacheInstanceNo to 'one instance', so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List'), a clear resource ('manual backup details'), concrete output hints ('file names, sizes'), and scope ('for one Cloud DB for Cache instance'). The 'manual' qualifier distinguishes it from automatic backup-detail siblings like ncloud_list_cache_backup_details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the use case clear: when you need file names and sizes of manual backups for a specific Cloud DB for Cache instance. It does not explicitly name sibling alternatives or exclusion cases, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_cache_manual_backupsARead-only
List manual backups for Cloud DB for Cache in the region. This API takes no instance filter or pagination — use ncloud_list_cache_manual_backup_details for one instance's backups.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers safety, and the description adds behavioral context beyond it: the call is region-scoped, has no instance filter, and does not paginate. It does not describe return format, but for a straightforward list operation the disclosed constraints are the most important behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the first states the action and scope, the second states limitations and routes to the sibling tool. All information is front-loaded and useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple one-optional-parameter list with readOnlyHint set, so the description is largely complete: it names the resource, scope, constraints, and the relevant alternative. It could mention the sibling ncloud_list_cache_backups for automatic/overall backups or describe the response shape, but neither is essential for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with regionCode already explained as a region code with examples. The description's phrase 'in the region' merely echoes the parameter rather than adding new syntax, format, or default behavior, so the schema baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('List manual backups for Cloud DB for Cache in the region') and explicitly differentiates from ncloud_list_cache_manual_backup_details. It also conveys the aggregate scope ('no instance filter') so an agent can distinguish it from nearby cache tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the API's constraints ('takes no instance filter or pagination') and gives an explicit alternative with the condition for choosing it ('use ncloud_list_cache_manual_backup_details for one instance's backups'). This is clear when-to-use guidance, not merely an implied context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_certificatesARead-only
List all registered SSL/TLS certificates in Certificate Manager. Supports filtering by certificateName, certificateNo, or instanceNo.
| Name | Required | Description | Default |
|---|---|---|---|
| instanceNo | No | Filter by instance number (Load Balancer, CDN+, Global Edge) | |
| certificateNo | No | Filter by certificate number | |
| certificateName | No | Filter by certificate name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already conveys that this is a safe read operation. The description adds the domain ('registered SSL/TLS certificates') and filter capability, but does not disclose other behavioral aspects such as pagination, sorting, or response format. This is consistent with the annotation but does not go beyond it significantly, matching the '3' benchmark.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no fluff. The first sentence front-loads the core purpose, and the second succinctly lists the filter parameters. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with no required parameters and no output schema, the description covers the main action and filters adequately. It does not explain the return value structure, but the tool name and description make it obvious that a list of certificates is returned. Given its simplicity, it is near-complete, but could slightly benefit from mentioning that all parameters are optional for an unfiltered list, which the schema already implies.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (certificateName, certificateNo, instanceNo) already described as a filter. The description reiterates these filter fields but adds no new semantic meaning, such as how filters combine or whether they are mutually exclusive. Thus it provides no extra value over the schema, warranting the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all registered SSL/TLS certificates in Certificate Manager, using the specific verb 'List' and identifying the resource and scope. It distinguishes itself from sibling certificate tools like issue_private_certificate, register_external_certificate, and delete_certificate by its focus on listing registered certificates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: when listing registered SSL/TLS certificates in Certificate Manager. However, it does not explicitly mention alternatives or when not to use it (e.g., distinguishing from ncloud_pca_list_cas for private CA certificates), so it misses the explicit exclusion/alternative guidance for a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_custom_resourcesARead-only
Get the list of user-defined custom resources in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Filter keyword | |
| resourceTypeId | No | Resource type ID (default 'DEFAULT') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a safe read operation, so the description does not contradict annotations. It adds the 'user-defined' scoping but does not disclose other behavioral traits such as pagination, result format, or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant wording. It conveys the tool's purpose efficiently and contains zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with two optional parameters fully described in the schema and a read-only annotation, the description is nearly sufficient. However, it lacks a note about alternatives or return value scope, which keeps it slightly below complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the description adds no parameter-level detail beyond the schema. The query and resourceTypeId parameters are self-explanatory from the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get the list') and the resource ('user-defined custom resources in Cloud Insight'). This distinguishes it from sibling tools like get_custom_resource (which fetches a single resource) and create/update/delete custom resource variants.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_get_custom_resource or ncloud_resource_list_resources. There is no mention of exclusions, prerequisites, or preferred use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_dashboardsARead-only
Get the list of Cloud Insight monitoring dashboards.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description is consistent with that. However, the description adds no further behavioral context beyond the annotation, such as return format or any edge cases. With annotations covering the safety profile, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It conveys the tool's purpose efficiently and is appropriately concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool without an output schema, the description is sufficiently complete. It clearly indicates that the tool retrieves dashboards, and no additional context is needed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema fully covers the input surface. According to the scoring rule, 0 params yields a baseline of 4. The description does not need to explain any parameters, and it doesn't.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get the list') and the resource ('Cloud Insight monitoring dashboards'). It is specific and distinct from sibling tools like ncloud_get_dashboard_widgets or ncloud_query_widget_preview, which focus on widgets rather than the dashboards themselves.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention any exclusions, prerequisites, or relationships with other dashboard-related tools, leaving the agent to infer the usage context entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_ddos_eventsARead-only
List Anti-DDoS security events from Security Monitoring. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (>= 1, default 1) | |
| order | No | Sort order | |
| attackIp | No | Filter by attack source IP | |
| targetIp | No | Filter by target IP | |
| zoneName | No | Zone name | |
| regionCode | No | Region code | |
| endDateTime | Yes | Search end time in Unix epoch milliseconds | |
| countPerPage | No | Items per page (>= 1, default 50) | |
| startDateTime | Yes | Search start time in Unix epoch milliseconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a safe read operation. The description adds the subscription requirement, which is useful context. However, it does not disclose other behavioral traits such as pagination limits, time range constraints, or return format. With annotations covering the safety profile, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose and a key prerequisite. Every part is useful, with no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema is rich with parameter descriptions, and the annotation confirms read-only behavior. However, there is no output schema and the description does not mention the return structure or which parameters are most relevant for filtering. This is adequate but not complete for a tool with 9 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for 100% of parameters, including units (Unix epoch milliseconds) and defaults. The description adds no additional parameter semantics beyond what the schema already provides. Baseline of 3 is appropriate because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'List Anti-DDoS security events from Security Monitoring.' This clearly distinguishes it from other security event list tools like ncloud_list_av_events or ncloud_list_waf_events by explicitly naming the event type and source service.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite ('Only for users subscribed to the Security Monitoring service') but does not explicitly mention alternatives or when not to use this tool. The usage is implied through the tool name and event type rather than explicitly contrasting with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_deny_allow_groupsBRead-only
List Network ACL Deny-Allow Groups
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| networkAclDenyAllowGroupName | No | Filter by Deny-Allow Group name | |
| networkAclDenyAllowGroupNoList | No | Filter by Deny-Allow Group numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation, and the description does not contradict this. However, it adds no additional behavioral context such as pagination, result size limits, or whether the group numbers filter returns a list. The description carries minimal burden beyond the annotation, consistent with the midpoint on the scale.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no filler. It effectively conveys the tool's purpose in the fewest words possible, earning a perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no output schema, three optional filter parameters), the description is adequately complete. It names the resource and action, and the schema covers parameters. It lacks domain context about what a Deny-Allow Group is, but that is not strictly necessary for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (vpcNo, networkAclDenyAllowGroupName, networkAclDenyAllowGroupNoList) having its own description. The tool description adds no extra parameter semantics, but this is acceptable given the schema already provides full coverage. Baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List Network ACL Deny-Allow Groups' uses a specific verb ('List') and resource ('Network ACL Deny-Allow Groups'), clearly distinguishing it from related sibling tools like ncloud_get_deny_allow_group_detail and ncloud_create_deny_allow_group. However, it does not explicitly state the scope (e.g., all groups or filtered) beyond what the schema implies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_get_deny_allow_group_detail or ncloud_list_network_acls. The description simply states what it does, leaving the agent to infer usage context from the name and schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_export_bucketsARead-only
List Object Storage buckets available as log export targets in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds the meaningful context that results are limited to buckets eligible as export destinations, but says nothing about pagination, result size, or whether buckets must be in the active/preceding region.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the resource and its qualifying scope are stated immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter read-only list tool with no output schema and annotations carrying the safety profile, the definition is nearly sufficient. Only the pagination/result-scope behavior is unstated, which is a minor omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so regionCode and its accepted values and default are fully documented in the schema. The description adds no parameter-level meaning beyond that, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (Object Storage buckets) with a precise scope: buckets usable as log export targets in Cloud Log Analytics. This distinguishes it from the numerous generic bucket listers in the sibling set such as ncloud_list_buckets, ncloud_ncs_list_buckets, and ncloud_list_postgresql_buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The scoping to 'log export targets' implies the use case (feeds ncloud_export_logs), but the description never states when to use this versus alternatives or names any related tool. Usage is inferable rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_fabric_clustersARead-only
List all fabric clusters in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| fabricClusterName | No | Filter by fabric cluster name | |
| fabricClusterNoList | No | Filter by fabric cluster numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is safe read-only. The description adds the 'current region' scoping and 'all' behavior, but doesn't disclose filtering capabilities, pagination, or return format. It adds some value beyond annotations but not rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise, front-loaded sentence with zero wasted words. It states the operation, target, and scope efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple read-only list operation with no required parameters, no output schema, and strong annotation coverage. The description plus annotations adequately cover the tool's purpose and constraints for an agent to use it effectively. It could mention optional filters, but the schema fills that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both optional filter parameters (fabricClusterName, fabricClusterNoList) thoroughly described in the schema. The description adds no extra meaning beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with resource 'fabric clusters' and scope 'current region', clearly distinguishing it from sibling tools like get_fabric_cluster_detail or pool management tools. It is immediately obvious what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you need to list clusters in the current region) but provides no explicit when-to-use guidance, exclusions, or alternatives. Without mentioning when to prefer this over get_fabric_cluster_detail or other cluster tools, usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_file_pluginsARead-only
Get the full list of Cloud Insight file monitoring plugins.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already marks this as a safe read operation. The description adds behavioral context by specifying 'full list', implying no filtering and complete results. It also identifies the cloud service context ('Cloud Insight'), which is not present in the tool name. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 12-word sentence that directly states the purpose without superfluous information. It is front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool with a readOnlyHint annotation, the description is complete. It clearly identifies the resource and scope. Without an output schema, the description still conveys that a complete list is returned. No additional context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter semantics to explain. The schema coverage is 100% vacuously, and the description's 'full list' reinforces that no filters are needed. Baseline 4 is appropriate for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('full list of Cloud Insight file monitoring plugins'), and the scope ('full list'). It is specific enough to distinguish from sibling tools like ncloud_list_process_plugins and ncloud_list_port_plugins, which target different plugin categories.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: call this to retrieve all file monitoring plugins. However, it does not explicitly mention when to use this over alternatives (e.g., ncloud_get_file_plugin for a single plugin) or note any exclusions. For a simple list tool this is acceptable, but the guidance is not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_groupsBRead-only
List all IAM groups for managing sub account permissions
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default: 0) | |
| size | No | Page output count (default: 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds the context 'for managing sub account permissions' but does not disclose pagination behavior, result ordering, or the meaning of 'all' given the page/size parameters. It does not contradict the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It immediately communicates the tool's action and resource, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with two well-documented parameters and a readOnlyHint annotation, the description is sufficiently complete. It clearly states the tool's purpose, though it could mention what the return data would include or clarify that 'all' may require pagination.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for 'page' ('Page number (0-based, default: 0)') and 'size' ('Page output count (default: 10)'). The description adds no additional parameter semantics beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all IAM groups for managing sub account permissions' uses a specific verb ('List'), a clear resource ('IAM groups'), and adds context about sub account permissions. It clearly distinguishes from related tools like ncloud_create_group or ncloud_delete_group, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when to use ncloud_list_sub_accounts or ncloud_list_policies. There are no exclusions, prerequisites, or explicit use-case scenarios mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_ids_eventsARead-only
List IDS intrusion detection events from Security Monitoring. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (>= 1, default 1) | |
| order | No | Sort order | |
| attackIp | No | Filter by attack source IP | |
| targetIp | No | Filter by target IP | |
| zoneName | No | Zone name | |
| attackType | No | Filter by attack type | |
| regionCode | No | Region code | |
| endDateTime | Yes | Search end time in Unix epoch milliseconds | |
| countPerPage | No | Items per page (>= 1, default 50) | |
| startDateTime | Yes | Search start time in Unix epoch milliseconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description aligns with a read operation. It adds the subscription requirement, which is useful behavioral context beyond annotations, but does not disclose other behaviors like default pagination or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the primary action and scope, and contains no redundant or filler content. Every sentence adds information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description identifies the service scope and subscription prerequisite, while the schema documents parameters and defaults. However, there is no output schema and no mention of return format, pagination behavior, or how events are ordered, leaving some gaps for a listing tool with 10 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 10 parameters are already documented in the schema. The description adds no parameter-specific meaning beyond 'list events', but since schemas carry the full load, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists IDS intrusion detection events from Security Monitoring, using a specific verb and resource. It distinguishes from sibling event-list tools by specifying 'IDS' and 'Security Monitoring', though it does not explicitly name alternative tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage restriction ('Only for users subscribed to the Security Monitoring service'), indicating when not to use it. However, it does not mention alternatives or explicitly state when to use this tool over other event list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_init_scriptsARead-only
List all init scripts in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| initScriptNoList | No | Filter by init script numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, which matches the description. The description adds the region scoping constraint but does not disclose pagination behaviour or return format. Given the annotation already covers safety, this is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence ('List all init scripts in the current region') that immediately conveys the action, resource, and scope without any unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with full schema coverage and a readOnlyHint annotation, the description is adequate. However, since there is no output schema, a little more context about the return structure or pagination defaults would improve completeness, but it is not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions cover 100% of parameters, including pagination and filtering. The description's phrase 'all' could slightly conflict with the optional initScriptNoList filter, but the schema clarifies this. The description adds no new parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List', a clear resource 'init scripts', and scopes it to 'the current region'. This clearly distinguishes it from sibling tools like ncloud_get_init_script_detail, ncloud_create_init_script, and ncloud_delete_init_scripts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use it (to enumerate init scripts in the current region) without mentioning alternatives or exclusions. The context is clear, but it does not explicitly state when not to use it or point to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_integrationsARead-only
Get the list of Cloud Insight integrations (paged).
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Filter keyword (empty string = all) | |
| pageNum | No | Page number (>= 1) | |
| pageSize | No | Page size (>= 1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a safe read operation. The description adds the paging behavior (though that is also reflected in the pageNum/pageSize parameters) and clarifies it returns a list. It does not contradict annotations and provides minimal additional context beyond what annotations and schema already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that immediately states the action and resource. It avoids redundant phrasing and every word contributes meaning. It is optimally concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no required parameters and no output schema, the description adequately conveys what the tool returns (a list of integrations) and that it is paged. It does not explain the return structure in detail, but for this low-complexity tool, the description plus schema is sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents all three parameters (query, pageNum, pageSize) with descriptions and defaults, giving 100% coverage. The description adds no extra parameter semantics, so the baseline of 3 is appropriate since the schema carries the full burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get the list' and the specific resource 'Cloud Insight integrations', and notes it is paged. This distinguishes it from sibling tools like ncloud_get_integration (singular) and the create/update/delete operations. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the tool for listing integrations, but it does not explicitly state when to use it versus alternatives like ncloud_get_integration for a single integration. There is no explicit when-not-to-use or mention of alternative tools, so the guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_ips_eventsARead-only
List IPS intrusion prevention events from Security Monitoring. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (>= 1, default 1) | |
| order | No | Sort order | |
| eventNm | No | Filter by event name | |
| attackIp | No | Filter by attack source IP | |
| protocol | No | Filter by protocol (VPC only) | |
| targetIp | No | Filter by target IP | |
| zoneName | No | Zone name | |
| regionCode | No | Region code | |
| endDateTime | Yes | Search end time in Unix epoch milliseconds | |
| countPerPage | No | Items per page (>= 1, default 50) | |
| startDateTime | Yes | Search start time in Unix epoch milliseconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already conveys that the operation is read-only, and the description does not contradict this. The description adds the context that events are from Security Monitoring and that a subscription is required, but does not disclose other behavioral aspects such as pagination behavior or response structure. Given the existing annotation, the description adds some value but lacks richer behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise, consisting of two sentences that state the primary purpose and a key prerequisite. Every word is necessary and contributes to user understanding, with no redundancy or padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 11 parameters and no output schema, the description is adequate for a straightforward listing tool. The schema covers all parameter details, and the annotation clarifies the read-only safety profile. The main gap is the lack of response format information, but this is not critical for a list operation and the description sufficiently covers the tool's purpose and constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, so the schema already provides the parameter meanings. The description does not add any additional parameter semantics beyond what is already documented, so it meets the baseline of 3 but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('IPS intrusion prevention events'), clearly identifying the tool's function. It distinguishes it from sibling event-list tools by naming the event type (IPS) and the source service (Security Monitoring).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage context by stating the requirement of being subscribed to Security Monitoring, which helps the agent determine eligibility. However, it does not explicitly mention when to use this tool over alternatives like ncloud_list_av_events or ncloud_list_waf_events, though the tool name and description make the distinction obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_launch_configsARead-only
List all launch configurations for Auto Scaling in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| launchConfigurationNoList | No | Filter by launch configuration numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint already present, the description adds the current region scoping but does not disclose pagination behavior or return format. It does not contradict the annotation, but offers limited behavioral context beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action verb and resource. Every word carries meaning, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no required parameters, the description, schema, and readOnlyHint cover the essentials: what, where, and safety. Minor gaps remain around pagination defaults and the absence of an output schema, but the tool is straightforward enough that these are not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters (pageNo, pageSize, launchConfigurationNoList) are already explained. The description adds no additional parameter meaning, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and resource 'launch configurations for Auto Scaling' with a clear scope 'in the current region'. This clearly distinguishes it from sibling tools like get_launch_config_detail, create_launch_config, and delete_launch_config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (when you need to enumerate launch configurations in the region). However, it does not explicitly mention alternatives or exclusions, such as using get_launch_config_detail for individual configs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_lb_listener_certificatesARead-only
List TLS certificates associated with a load balancer listener
| Name | Required | Description | Default |
|---|---|---|---|
| loadBalancerListenerNo | Yes | Load balancer listener number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true. The description's 'List' is consistent but adds no extra behavioral detail (e.g., pagination, error handling, or what happens if listener is missing).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with 9 words, front-loaded with the verb, and zero wasted words. Extremely concise and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not outline return fields (e.g., certificate IDs, names, expiration). It covers the basic purpose but lacks details for an agent under complex domain with many siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description of 'loadBalancerListenerNo'. The description does not enhance this with context like how to obtain the listener number or format requirements, providing no added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a clear verb ('List') and resource ('TLS certificates associated with a load balancer listener'), distinguishing it from sibling tools like ncloud_get_load_balancer_detail or ncloud_list_certificates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this versus alternatives (e.g., ncloud_list_certificates). The description implies usage for listing certificates by listener, but does not state prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_lb_listenersARead-only
List all listeners for a specific load balancer
| Name | Required | Description | Default |
|---|---|---|---|
| loadBalancerInstanceNo | Yes | Load balancer instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description is consistent ('List'). However, it adds no additional behavioral context such as pagination, response format, or prerequisites beyond the required parameter. With annotations covering the read-only nature, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, front-loading the action ('List') and resource ('listeners'). Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only tool, the description, schema, and annotation together provide sufficient context for invocation. No output schema is present, but the return (list of listeners) is implied. Could mention more about returned fields, but not essential for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with a clear description for the single parameter 'loadBalancerInstanceNo' ('Load balancer instance number'). The description does not add further parameter semantics, but the schema already carries the meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses the specific verb 'List' and resource 'listeners', scoped to 'a specific load balancer', clearly distinguishing it from sibling tools like list_load_balancers or get_load_balancer_detail. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrasing 'for a specific load balancer' implies when to use the tool, but there is no explicit guidance on alternatives or exclusions. It lacks comparison to sibling tools, so usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_lb_rulesARead-only
List rules registered to a load balancer listener
| Name | Required | Description | Default |
|---|---|---|---|
| loadBalancerListenerNo | Yes | Load balancer listener number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation. The description adds the scope 'registered to a load balancer listener' but does not disclose additional behavioral details such as pagination, ordering, or return format. Given the annotation coverage, this is adequate but not enriched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short, front-loaded sentence with no filler. Every word earns its place, and it immediately communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a low-complexity list tool with one parameter and a read-only annotation. The description, combined with the schema and annotation, provides sufficient information for an agent to select and invoke the tool. The absence of an output schema or details about rule structure is acceptable given the simplicity, though a note about return content would push it to 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the only parameter, loadBalancerListenerNo, is described as 'Load balancer listener number' in the schema. The tool description adds no additional parameter meaning, such as format, validation, or source of the value. Since the schema fully documents the parameter, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('rules registered to a load balancer listener'), clearly distinguishing this from siblings like ncloud_list_lb_listeners and ncloud_list_load_balancers. It precisely states the tool's function without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies clear usage context: use this when you need to retrieve rules for a specific load balancer listener. It does not explicitly name alternatives or exclusions, but the resource scoping ('registered to a load balancer listener') makes it obvious when to select this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_load_balancersARead-only
List all load balancer instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| loadBalancerType | No | Filter by LB type (APPLICATION, NETWORK, NETWORK_PROXY) | |
| loadBalancerNetworkType | No | Filter by network type (PUBLIC, PRIVATE) | |
| loadBalancerInstanceNoList | No | Filter by load balancer instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide readOnlyHint: true, so the description correctly implies a safe read operation. It adds the useful scope 'current region' but fails to disclose that pagination parameters (pageNo, pageSize) exist, which means 'all' may require multiple calls. No contradiction with annotations, but limited behavioral depth beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear, front-loaded sentence with no filler or redundancy. Every word contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with a readOnly annotation, full schema coverage of all parameters, and clear naming, the description is mostly complete. However, it does not mention the potential need for pagination when saying 'all', nor does it describe the return format (though there is no output schema). This small gap prevents a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 6 parameters are described in the input schema with 100% coverage, so the schema carries the full parameter meaning. The description adds no extra information about filters or pagination, earning the baseline score of 3 for a description that does not actively help explain parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all load balancer instances in the current region' uses a specific verb ('List'), resource ('load balancer instances'), and scope ('current region'), clearly distinguishing it from siblings like get_load_balancer_detail, create_load_balancer, or delete_load_balancers. The word 'all' also signals this is a broad list operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention that for a single load balancer's details one should use ncloud_get_load_balancer_detail, or that ncloud_list_lb_listeners is for listeners. The usage context is only implied by the verb 'list' and the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_login_keysARead-only
List all login keys in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safe read-only nature. The description adds that it is region-scoped ('current region'), which is useful context. However, it does not disclose pagination behavior, response format, or any quota/limit considerations, so transparency is adequate but not enriched beyond the basics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero wasted words. It effectively communicates the core purpose and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with optional pagination and a readOnly hint, the description is reasonably complete. It specifies the resource, scope, and region. The absence of an output schema is acceptable for a standard list endpoint, though a note about default pagination or response structure could make it more thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both pageNo and pageSize having clear descriptions for pagination. The tool description adds no additional meaning beyond what the schema already provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and a clear resource 'login keys' with an explicit scope ('all' and 'current region'). This distinguishes it from sibling operations like create, import, delete login keys, and from service-specific list tools such as ncloud_hadoop_list_login_keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied (use when you need to list login keys), but there is no explicit guidance on when to prefer this over alternatives like ncloud_ses_get_login_keys or ncloud_hadoop_list_login_keys. The description does not provide exclusions or alternate tool mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_log_serversBRead-only
List servers eligible for log collection in Cloud Log Analytics (includes per-server collection status).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-100, default 1) | |
| pageSize | No | Page size (10-100, default 10) | |
| platform | No | Platform (default vpc) | |
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds a small behavioral detail (results include per-server collection status), but says nothing about pagination, default result size, or whether it is region/platform scoped.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the verb and scope, with the parenthetical adding useful output context. No waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only paginated list tool with a fully documented schema and readOnlyHint annotation, the description is almost sufficient. The main gap is the absence of any note about result volume or that paging defaults apply, which is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (pageNo, pageSize, platform, regionCode) are already documented with defaults and ranges in the schema. The description adds no syntax or format detail beyond that, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and a well-scoped resource (servers eligible for log collection in Cloud Log Analytics), plus a content hint that output includes per-server collection status. This scope qualifier distinguishes it from the generic ncloud_list_servers sibling, though it does not explicitly name that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, prerequisites, or alternatives are given. The description never routes the agent toward or away from related tools such as ncloud_set_server_log_collection or ncloud_search_logs, so the agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_maintenancesARead-only
Get the list of planned maintenance schedules in Cloud Insight (paged). The API requires a filter: either a time range (from/to/timeType, at most 31 days) OR a resource (resourceId+productKey). If none is given, a default 30-day window (now-15d..now+15d) by startTime is applied.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Filter end (epoch ms); at most 31 days after 'from' | |
| from | No | Filter start (epoch ms), used with 'to' and 'timeType'; the range to-from must not exceed 31 days | |
| pageNum | No | Page number (>= 1) | |
| pageSize | No | Page size (>= 1) | |
| timeType | No | Which time the from/to filter applies to (default startTime) | |
| productKey | No | Filter by product key (use together with resourceId) | |
| resourceId | No | Filter by resource ID (use together with productKey instead of a time range) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true, so the description carries the rest of the behavioral load. It discloses pagination, the mandatory filter semantics, the 31-day range limit, the allowed timeType values' role, and the automatic default window – all important operational traits not present in the annotations. It stops short of describing response shape or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the purpose, then the filter requirement, then the fallback default. No filler; every sentence conveys an actionable fact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, paged list tool with no output schema and full schema documentation, the description covers the critical invocation constraints and default behavior. It is nearly complete; only return-value characteristics remain unspecified, which is acceptable given the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the per-parameter baseline is 3. The description adds meaningful combinatorial semantics beyond the individual field docs: from/to/timeType must be used together, resourceId must be paired with productKey instead of a time range, and the default window is computed on startTime. This is genuine added value over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get the list of planned maintenance schedules in Cloud Insight'. This is clearly a list operation, distinguishing it from siblings like ncloud_get_maintenance_detail, ncloud_create_maintenance, ncloud_update_maintenance, and ncloud_delete_maintenance. The scoping note '(paged)' further narrows the intent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly explains the filtering contract: a time range (from/to/timeType, max 31 days) OR a resource (resourceId+productKey), with a documented default 30-day window by startTime when neither is supplied. That is strong when-to-use guidance for invocation, though it does not contrast this tool against get_maintenance_detail or other siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_metrics_groupsCRead-only
Get the list of Cloud Insight rule templates (monitoring item groups / metrics groups) for a product.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) to list metrics groups for (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read. The description adds nothing behavioral beyond that: no pagination, ordering, empty-result, or return-shape context. It covers only the safety profile already provided by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the verb and scope come first. Efficient, though minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with annotations covering safety and no output schema, the description is minimally adequate. It lacks pagination/return-shape notes and sibling differentiation, which would make it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with a single, well-documented prodKey parameter, so the schema carries the load. The description's 'for a product' aligns with the parameter but adds no format or syntax detail beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get the list') and resource ('Cloud Insight rule templates / metrics groups') scoped to a product. The parenthetical aliasing helps map terminology, but it does not distinguish this from the close sibling ncloud_list_monitor_groups or ncloud_get_metrics_group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives such as ncloud_list_monitor_groups or ncloud_get_metrics_group, and no stated conditions. Usage is only implied by the verb 'list'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mongodb_backup_detailsBRead-only
List detailed backup information for a Cloud DB for MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds little beyond the readOnlyHint annotation. It doesn't disclose response format, pagination, or any operation-specific behavior. The only extra context is 'detailed,' which is more about purpose than a behavioral trait.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no filler. It front-loads the verb and resource clearly, making every word earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with a single parameter and full schema coverage, the description is largely sufficient. However, it doesn't explain what 'detailed' includes or return conventions, and there's no output schema to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter is fully described in the schema (cloudMongoDbInstanceNo with description). The description adds no extra parameter-level meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists detailed backup information for a Cloud DB for MongoDB instance, with a specific verb and resource. The word 'detailed' hints at a distinction from the simpler backup listing sibling, but it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not indicate when to use this tool over ncloud_list_mongodb_backups or other MongoDB tools, nor any prerequisites or intended scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mongodb_backupsARead-only
List backups for a Cloud DB for MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates that this is a safe read operation. The description adds no further behavioral information, such as whether both manual and automatic backups are listed, pagination behavior, or the structure of the returned data. It essentially restates the tool's static purpose without enriching the agent's understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys the core purpose without filler. It is well-structured and immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only one parameter and no output schema, the description is minimally viable but lacks detail on what the returned backup list contains or whether there are filtering options. It does not explain the distinction from the backup details tool, leaving some ambiguity for an agent needing to choose the right operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single parameter (cloudMongoDbInstanceNo) with a clear description. The tool description adds no additional parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (backups), and the scope (Cloud DB for MongoDB instance). It distinguishes itself from sibling tools like ncloud_list_mongodb_backup_details by focusing on backups generally rather than details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by naming the resource, but does not explicitly state when to use this tool over related siblings such as list_mongodb_backup_details or export_mongodb_backup. There is no mention of alternatives or exclusions, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mongodb_bucketsARead-only
List Object Storage buckets available for Cloud DB for MongoDB backup export
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g., KR, JPN, SGN) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating safety. The description adds behavioral context by specifying the scope (only buckets available for MongoDB backup export), which goes beyond the annotation and clarifies the tool's purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, front-loaded with the key action and resource. Every word serves a purpose, making it highly efficient and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter, annotations, and no output schema, the description adequately explains its scope and purpose. No significant gaps are present, though explicit mention of return format or pagination (if any) could further enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the regionCode parameter described as 'Region code (e.g., KR, JPN, SGN)'. The description does not add further meaning to the parameter, warranting the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists Object Storage buckets available for Cloud DB for MongoDB backup export. The verb 'List' and specific resource 'buckets available for Cloud DB for MongoDB backup export' differentiate it from sibling tools like ncloud_list_mssql_buckets and general bucket listing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for MongoDB backup export buckets but lacks explicit guidance on when to use this tool versus alternatives like ncloud_list_buckets or other database-specific bucket listers. No when-not or alternative references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mongodb_instancesARead-only
List all Cloud DB for MongoDB instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| cloudMongoDbServiceName | No | Filter by MongoDB service name | |
| cloudMongoDbInstanceNoList | No | Filter by MongoDB instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The phrase 'all' and 'current region' disclose behavioral scope—returns all instances in the current region—beyond the readOnlyHint annotation. This adds useful context without contradicting the annotation, though pagination behavior is left to the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with a front-loaded action verb 'List' and a direct object. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with no output schema, the description adequately sets expectations for returning MongoDB instances in the current region. Pagination and filters are documented in the schema, so overall completeness is strong for a simple read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all four parameters with clear descriptions (pagination and filters). The description does not add meaning beyond the schema, so it meets the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the explicit verb 'List' with the resource 'Cloud DB for MongoDB instances' and scopes it to 'current region', clearly distinguishing it from sibling tools like ncloud_get_mongodb_instance_detail and ncloud_list_mongodb_users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for enumerating MongoDB instances in the current region but does not mention alternatives, when-not-to-use, or exclusion scenarios. No explicit guidance is given beyond the inherent list operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mongodb_logsARead-only
List server logs for a Cloud DB for MongoDB server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbServerInstanceNo | Yes | Cloud MongoDB server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds no behavioral context such as log types, filtering options, pagination, or response content. It merely restates the tool's action, so it provides minimal value beyond the structured annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately states the action and resource. No extraneous words, and appropriately sized for this simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one fully-specified parameter, the description is minimally adequate for tool selection. However, it does not disclose what log data is returned, whether pagination applies, or how it differs from the export_mongodb_log tool, leaving gaps for an agent expecting complete context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter cloudMongoDbServerInstanceNo is fully described in the schema ('Cloud MongoDB server instance number'), and the description adds no additional semantics or usage details, consistent with the 100% schema coverage baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('server logs for a Cloud DB for MongoDB server instance'), clearly distinguishing this from sibling tools like ncloud_list_mongodb_instances or ncloud_list_mongodb_backups. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided about when to use this tool versus alternatives, such as ncloud_export_mongodb_log for exporting logs or ncloud_list_mysql_logs for MySQL. The intended use case is implied by the verb and resource, but exclusions/alternatives are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mongodb_usersARead-only
List users in a Cloud DB for MongoDB instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbInstanceNo | Yes | Cloud MongoDB instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description's 'List users' aligns with this safety profile without contradicting it. However, the description adds no behavioral context beyond what the annotation already conveys, such as return format, pagination, or filtering capabilities. With the annotation covering the read-only nature, a score of 3 reflects the minimal added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of nine words: 'List users in a Cloud DB for MongoDB instance'. Every word contributes meaning, with no redundancy or filler. It is appropriately concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one well-documented parameter and no output schema, the description is minimally viable. It clearly states the action and resource. However, because no output schema exists, the description does not mention what fields the returned users contain (e.g., usernames, roles), which would enhance completeness. The readOnlyHint and schema cover safety and parameters, but the return payload remains unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage: the only parameter, cloudMongoDbInstanceNo, is described as 'Cloud MongoDB instance number'. The tool description itself adds no additional meaning to this parameter. Baseline of 3 is appropriate as the schema fully documents the parameter, leaving the description with nothing extra to contribute.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List users in a Cloud DB for MongoDB instance' uses a specific verb ('List') and clearly identifies the resource (users within a MongoDB instance). It distinguishes from sibling tools like ncloud_add_mongodb_users, ncloud_change_mongodb_users, and ncloud_delete_mongodb_users by indicating a read-only listing operation, and from ncloud_list_mongodb_instances by focusing on users rather than instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or contrast with other list operations (e.g., list_mysql_users). The usage context is only implied by the tool name and description, not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_monitor_groupsARead-only
Get the list of Cloud Insight monitoring target groups for a specific product.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) to get monitor groups for (required, use ncloud_get_schema_keys to find available keys) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description is consistent. It adds the product-scoping context but does not disclose response format or pagination, which could be relevant for a list tool. The safety profile is covered by the annotation, placing this at baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with action verb, no redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple list tool with one well-documented parameter and read-only annotation. The description adequately states the return type and scope. No output schema exists, but for a simple list, this is sufficient. Could be improved by mentioning response structure, but not necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the prodKey parameter is fully described with context (cw_key, required, use ncloud_get_schema_keys). The description's 'for a specific product' adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get the list') and resource ('Cloud Insight monitoring target groups') with a scope ('for a specific product'), clearly distinguishing it from tools like ncloud_get_monitor_group (singular) or ncloud_list_metrics_groups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a listing operation but does not explicitly state when to use this over alternatives like get_monitor_group or create_monitor_group. It does provide a prerequisite by referencing ncloud_get_schema_keys in the parameter description, but that is in the schema, not the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_backup_detailsARead-only
List detailed backup information for a Cloud DB for MSSQL instance including file paths
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number | |
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is known. The description adds that the list includes file paths, but no further behavioral context (e.g., pagination, response size, or error conditions) is disclosed. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence with no redundancy, front-loaded with the action 'List'. Every word contributes; it is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple read-only listing tool with full schema coverage and an output-free response. However, it omits the fact that both instance and server instance numbers are required, and does not specify the scope beyond instance level. Slight under-specification of required context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions ('Cloud MSSQL instance number' and 'Cloud MSSQL server instance number'). The description adds no additional parameter information beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and resource 'detailed backup information for a Cloud DB for MSSQL instance', clearly distinguishing it from broader listing tools like ncloud_list_mssql_backups. The phrase 'including file paths' adds concrete scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as ncloud_list_mssql_backups or similar backup detail tools for other databases. It does not state any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_backupsCRead-only
List backups for a Cloud DB for MSSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description simply restates the operation 'List backups' and adds no behavioral detail such as pagination, return format, or response structure. The readOnlyHint annotation already conveys the safety profile, but the description offers no additional context beyond what the annotation implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, front-loading the action and resource. Every word earns its place, making it appropriately concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description fails to describe what the returned backup list contains or how it is structured. The tool has a small parameter set and a readOnly annotation, but the description still leaves the agent without information about return values or potential limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single required parameter cloudMssqlInstanceNo is fully described in the schema as 'Cloud MSSQL instance number', achieving 100% schema description coverage. The description adds no further semantic information about the parameter, so the high schema coverage supports a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource 'backups' for a Cloud DB for MSSQL instance, clearly stating the core operation. However, it does not differentiate from the sibling tool ncloud_list_mssql_backup_details, which could create ambiguity about which backup-related listing tool to invoke.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of ncloud_list_mssql_backup_details or any exclusions, prerequisites, or scenarios that would help an agent select this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_bucketsARead-only
List Object Storage buckets available for Cloud DB for MSSQL backup export
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe read nature is clear. Description adds no extra behavioral details (e.g., pagination, auth needs). Does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Highly concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with good annotations and one optional parameter, the description is complete. No output schema needed given read-only nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with explicit description for regionCode. Description adds no parameter information beyond the schema, achieving baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists Object Storage buckets for MSSQL backup export. Verb 'List' and resource are specific, distinguishing it from similar sibling tools like ncloud_list_mongodb_buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs. alternatives like ncloud_list_buckets or other database-specific bucket listers. Context is implicit but no explicit when-not or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_character_setsARead-only
List available character sets for Cloud DB for MSSQL
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation. However, it adds no additional behavioral information beyond the annotation. For a read-only list operation, the minimal disclosure is acceptable, but there is no mention of response format, pagination, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states the tool's purpose without any extraneous information. It is concisely front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one optional parameter, no output schema, read-only), the description is largely complete. It conveys the core action and resource. However, a brief note about the return value (e.g., list of character set names) would improve completeness, but it is not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter (regionCode) is fully documented in the input schema (100% coverage). The description does not add further meaning beyond the schema. With high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'available character sets for Cloud DB for MSSQL'. It specifies the exact scope (MSSQL character sets) and distinguishes this tool from sibling list tools (e.g., ncloud_list_mssql_instances, ncloud_list_mssql_backups).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. The implied usage is to retrieve character sets for MSSQL, but no exclusions or alternative tools are mentioned. The simple nature of the tool partially mitigates this gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_config_groupsBRead-only
List available Config Groups for Cloud DB for MSSQL
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates this is a safe read operation. The description adds no further behavioral context, but does not contradict the annotation. It lacks details like pagination, return format, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the tool's function. It is concise and front-loaded with the key action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should provide some insight into the response structure or what a 'Config Group' is. It also does not clarify how the optional regionCode parameter might affect results (e.g., whether it returns groups for that region only). For a listing tool in a large sibling set, more context would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter regionCode, so the schema already clarifies its purpose. The description does not add any additional semantic meaning or usage hints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (List), the resource (Config Groups), and the context (Cloud DB for MSSQL), which distinguishes it from sibling tools like ncloud_list_cache_config_groups or ncloud_list_mssql_instances. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_list_mssql_instances or ncloud_list_cache_config_groups. There is no mention of prerequisites, selection criteria, or exclusion scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_foldersARead-only
List folders within an Object Storage bucket for Cloud DB for MSSQL
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, and the description does not contradict it. The description adds context about the bucket scope but does not disclose additional behavioral traits such as pagination, permission requirements, or whether folders are listed recursively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise, front-loaded, and free of unnecessary words. It directly communicates the action and target.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one parameter, the description is mostly complete. However, with no output schema, it does not mention the return format or clarify what 'folders' means in the object storage context, which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents bucketName with a clear description, giving 100% schema coverage. The tool description adds no further parameter semantics, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (list), a specific resource (folders within an Object Storage bucket), and a context (Cloud DB for MSSQL). This distinguishes it from sibling tools like ncloud_list_mssql_buckets, which list buckets rather than folders within a bucket.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: you use this tool when you need to see folders inside a specific MSSQL-related Object Storage bucket. However, it provides no explicit guidance about when not to use it or how it compares to alternatives like ncloud_list_objects or ncloud_list_mssql_buckets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_instancesARead-only
List all Cloud DB for MSSQL instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| cloudMssqlServiceName | No | Filter by MSSQL service name | |
| cloudMssqlInstanceNoList | No | Filter by MSSQL instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates the safe read-only nature of the operation. The description adds the region-scoping context but does not disclose further behavioral traits such as pagination behavior, response format, or filter semantics beyond what the schema already shows. With the annotation covering safety, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states exactly what the tool does with no filler. Every word contributes to the meaning, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with a readOnlyHint annotation, the description is sufficient: it identifies the resource type (MSSQL instances) and the scope (current region). However, there is no output schema, so the agent is not told what fields are returned, and pagination behavior is only implied by the schema parameters. The description could be more helpful but is not inadequate for this low-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions for pagination and filters, so the schema does the heavy lifting. The description itself adds no additional parameter semantics; the word 'all' could imply unfiltered listing, which is slightly at odds with the optional filters but not misleading. A baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all MSSQL instances in the current region, using a specific verb and resource. The 'all' scope and region qualifier distinguish it from detail-lookup tools like ncloud_get_mssql_instance_detail and other MSSQL-specific list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear context (listing all MSSQL instances in the current region) but does not explicitly mention when to use this tool over alternatives. It does not reference sibling tools like get_mssql_instance_detail for single-instance lookups or list_mssql_backups for backups, so usage guidance remains implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_log_backup_filesBRead-only
List log backup files for a Cloud DB for MSSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlInstanceNo | Yes | Cloud MSSQL instance number | |
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the readOnlyHint annotation. It does not mention pagination, response format, or any special restrictions. With the annotation already declaring the read-only safety profile, the description provides no additional value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that clearly names the action and resource. It is appropriately sized with no fluff or redundancy, earning a perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal but sufficient for a simple listing operation given the rich schema and readOnlyHint annotation. However, it does not explain how this tool differs from related sibling tools, and with no output schema, the agent has limited expectations about the returned data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description itself does not elaborate on parameter meaning, but the schema already documents both parameters clearly as instance numbers. No additional semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List) and the resource (log backup files for a Cloud DB for MSSQL instance). It is specific but does not explicitly differentiate from sibling tools like ncloud_list_mssql_log_files or ncloud_list_mssql_backups, which are similar in purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description simply states what it does without indicating context, prerequisites, or exclusions, leaving the agent to infer usage from the name and schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mssql_log_filesBRead-only
List log files for a Cloud DB for MSSQL server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. However, the description adds no behavioral details beyond the literal operation—no mention of return format, pagination, filtering, or any side effects. It essentially restates the tool's name, providing minimal additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that efficiently conveys the operation. It is front-loaded with the verb 'List' and contains no unnecessary words, making it appropriately concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and a read-only annotation, but the description does not describe the output format or any edge cases (e.g., whether all log files are returned, how results are sorted). Without an output schema, the agent must infer what a 'log file' listing entails. It is adequate for a basic list operation but leaves gaps in expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% parameter coverage with the description 'Cloud MSSQL server instance number'. The tool description does not add any additional semantic meaning (e.g., format, constraints, examples) beyond what the schema already offers, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List log files for a Cloud DB for MSSQL server instance' uses a specific verb ('List'), clearly identifies the resource ('log files'), and specifies the target ('Cloud DB for MSSQL server instance'). This distinguishes it from similar sibling tools like ncloud_list_mssql_log_backup_files, which is about log backup files rather than regular log files.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives such as ncloud_list_mssql_log_backup_files or ncloud_export_mssql_log. It simply states the action without any contextual usage notes or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_multipart_uploadsARead-only
List in-progress multipart uploads for a bucket
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | Limits results to uploads for keys beginning with this prefix | |
| delimiter | No | Delimiter for grouping keys (commonly '/') | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description aligns with that by using 'List'. It adds context about 'in-progress' uploads, which is useful behavioral information beyond the annotation, but does not disclose details like pagination, response format, or default limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the core action. Every word earns its place, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with full schema coverage and a read-only annotation, the description is mostly adequate. However, since there is no output schema, a brief note on the returned fields (e.g., upload ID, key, initiation time) would have made it more complete for an agent parsing results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter (prefix, delimiter, bucketName) having clear descriptions. The tool description does not add parameter-level semantics beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clear resource ('in-progress multipart uploads') and scope ('for a bucket'), making its purpose unambiguous. It distinguishes itself from sibling tools like ncloud_list_objects, ncloud_list_parts, and ncloud_initiate_multipart_upload by specifying 'in-progress multipart uploads'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: when you need to see ongoing multipart uploads for a bucket. It does not explicitly mention alternatives or exclusions, but the context is clear enough for a listing operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_backup_detailsARead-only
List detailed backup information (including file names) for a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds limited new behavioral context. It correctly implies a read operation but doesn't mention potential limitations, performance, or return format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 14 words, front-loaded with action and resource. Every part is informative with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with 2 parameters and no output schema, the description sufficiently states its purpose. It could optionally hint at the return structure but isn't necessary for agent selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the input schema (100% coverage). The description adds no additional semantic value beyond 'for a Cloud DB for MySQL instance', which matches a required parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), the resource ('Cloud DB for MySQL instance'), and the scope ('detailed backup information including file names'). It distinguishes from sibling tools like ncloud_list_mysql_backups by emphasizing 'detailed' and 'file names'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., ncloud_list_mysql_backups). The description doesn't specify when detailed info is needed or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_backupsARead-only
List backups for a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes the safe read-only nature, but the description adds no extra behavioral context such as pagination, response format, or scope limitations. It merely restates the action, contributing no insights beyond what annotations and the schema already provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no redundant words. It is perfectly front-loaded and every word contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter list tool with readOnlyHint annotation, the description is adequate: it clearly states the action and resource. However, it does not mention the lack of backup details or the output structure (no output schema exists), leaving minor gaps for an agent that might confuse this with the sibling 'list_mysql_backup_details' tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with one parameter ('cloudMysqlInstanceNo') described as 'Cloud MySQL instance number'. The description offers no additional parameter detail, but since the schema fully documents the parameter, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List backups for a Cloud DB for MySQL instance' uses a specific verb ('List') and resource ('backups for a Cloud DB for MySQL instance'). It clearly distinguishes from sibling tools like 'ncloud_list_mysql_backup_details' and 'ncloud_list_mysql_instances', making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: call this when you need to list backups for a specific MySQL instance. However, it provides no explicit guidance on when to use this vs. closely related siblings (e.g., 'ncloud_list_mysql_backup_details') or any prerequisites/exclusions, leaving the agent to infer context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_databasesARead-only
List databases in a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description adds no further behavioral details such as pagination behavior, response structure, or instance-existence requirements. It only restates the action without going beyond the structured information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of nine words, with no filler or redundancy. It is front-loaded and immediately communicates the tool's operation and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only list operation, the description sufficiently states what is listed and for which resource. The absence of an output schema is acceptable because 'List databases' clearly implies a list of database entries, and no additional complexity warrants further elaboration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the single parameter cloudMysqlInstanceNo as 'Cloud MySQL instance number', and the tool description does not add any additional semantic meaning. Since schema coverage is 100%, the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource as 'databases' scoped to 'a Cloud DB for MySQL instance', clearly distinguishing it from sibling tools like ncloud_list_mysql_users and ncloud_list_mysql_instances. This leaves no ambiguity about the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context that this tool enumerates the databases of a specific MySQL instance, but it does not explicitly state when to use it versus related list tools or mention any exclusions. Usage is implied rather than directly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_eventsBRead-only
List event history for a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, but the description adds no additional behavioral context such as permission requirements, pagination, or response format, relying solely on the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no unnecessary words, front-loading the key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, yet the description does not explain what fields the event history contains, making it incomplete for an agent to understand the return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters; the description adds no extra meaning beyond the schema, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List event history' and the resource 'Cloud DB for MySQL instance', distinguishing it from other sibling tools that list other MySQL resources like databases, users, or backups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., ncloud_search_events or ncloud_search_event_by_id), nor any prerequisites or context for its use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_instancesARead-only
List all Cloud DB for MySQL instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| cloudMysqlServiceName | No | Filter by MySQL service name | |
| cloudMysqlInstanceNoList | No | Filter by MySQL instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe, read-only operation. The description 'List' is consistent with this and adds context that it covers all MySQL instances in the current region. However, it does not disclose additional behavioral traits such as pagination behavior (despite pageNo/pageSize parameters), what the response contains, or whether filters are optional. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the action ('List all') and resource. Every word earns its place; there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with optional filters and no output schema, the description covers the core purpose. However, it lacks guidance on return value structure, pagination behavior, or related tools (e.g., for instance details or other database types). Given the large sibling set, a bit more context would make it complete, but complexity is low, so a score of 3 is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all four parameters, so the baseline is 3. The description adds no extra parameter-level meaning; it simply states 'List all,' which could imply no filtering, though the optional filter parameters are documented in the schema. This is not contradictory but also not additive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with a clear resource ('Cloud DB for MySQL instances') and scope ('in the current region'). This clearly distinguishes it from sibling tools like ncloud_get_mysql_instance_detail (which retrieves a single instance) and ncloud_list_mysql_databases (which lists databases, not instances).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (listing all MySQL instances in the current region) but does not explicitly mention alternatives or exclusion criteria. For instance, it does not say 'for a single instance, use get_mysql_instance_detail' or note that this is only for instances, not databases or users. Usage is implied rather than explicitly contrasted with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_logsBRead-only
List DB server log files for a Cloud DB for MySQL server instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudMysqlServerInstanceNo | Yes | Cloud MySQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint: true, indicating safe read behavior. The description does not add any additional behavioral context such as pagination, rate limits, or response format. With annotations covering the safety profile, a score of 3 is appropriate as the description adds minimal extra value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 9 words, front-loaded with the key action and resource. It is efficient and contains no unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with no output schema, the description adequately conveys the purpose. It could mention that it returns log file names or details, but it is sufficiently complete. Given the lack of output schema and sibling tools with similar patterns, a score of 4 is reasonable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, with descriptions for both regionCode and cloudMysqlServerInstanceNo. The description does not add any meaning beyond what the schema already provides. Baseline 3 is suitable since the schema carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List DB server log files for a Cloud DB for MySQL server instance', specifying the action (list) and resource (log files for a MySQL instance). It distinguishes from sibling tools like ncloud_export_mysql_log by using the verb 'list', but does not explicitly differentiate from other list tools such as ncloud_list_mysql_backups or ncloud_list_postgresql_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. For example, it does not indicate that this is a read-only operation (covered by annotations) or suggest using ncloud_export_mysql_log for downloading logs. The agent is left to infer usage from the tool name and context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_mysql_usersBRead-only
List users in a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, but the description adds no extra behavioral context such as pagination, response format, required permissions, or any side effects. It only repeats the basic listing function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant information. Every word contributes to defining the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one well-documented parameter and a readOnly annotation, this is minimally adequate. However, since there is no output schema, the description could have mentioned what data is returned (e.g., user IDs, names) to make it more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete coverage (100%) for the single parameter with a clear description ('Cloud MySQL instance number'). The tool description adds no further parameter guidance, so the schema carries the full burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the specific resource ('users in a Cloud DB for MySQL instance'), making the tool's purpose unambiguous. It naturally distinguishes from sibling user-management tools like add/change/delete MySQL users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_list_mysql_databases or ncloud_add_mysql_users. The description only states what it does, not when it's appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_nas_snapshotsARead-only
List snapshots for a NAS volume instance
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| nasVolumeInstanceNo | Yes | NAS volume instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates the safe read-only nature. The description adds a scoping context (NAS volume instance) but does not disclose other behavioral traits such as pagination behavior, sorting, or response structure. It is consistent with the annotation, with no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that contains no redundant information. Every word contributes to the stated purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool, the fully described parameters, and the readOnlyHint annotation, the description is sufficient for initial selection and invocation. However, it does not mention pagination behavior or return value structure, which would be helpful in the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter, including pageNo, pageSize, and nasVolumeInstanceNo, already has a descriptive schema entry. The description does not add additional parameter-level meaning beyond what is provided in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and clearly identifies the resource as 'snapshots for a NAS volume instance'. This distinguishes it from generic snapshot listers and NAS snapshot create/delete tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (to list snapshots of a NAS volume), but it does not explicitly mention alternatives, prerequisites, or when not to use it. No additional guidance beyond the basic purpose is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_nas_volumesARead-only
List all NAS volume instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| zoneCode | No | Zone code (e.g. KR-1, KR-2) | |
| regionCode | No | Region code (e.g. KR, SGN, JPN) | |
| nasVolumeInstanceNoList | No | Filter by NAS volume instance numbers | |
| volumeAllotmentProtocolTypeCode | No | Volume protocol type code (NFS or CIFS) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds minimal value. It does mention 'current region' as a behavioral context, but no additional details about auth needs, rate limits, or data scope beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with 8 words. There is no wasted text; it is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no output schema, the description does not hint at return values or pagination. However, the schema covers parameters well. The description is adequate for a simple list tool but lacks some completeness for the 6 optional parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (all 6 parameters have descriptions). The tool description does not add any extra meaning beyond what is already in the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('NAS volume instances'), and clarifies scope ('in the current region'). It is distinct from sibling tools like ncloud_get_nas_volume_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives such as ncloud_get_nas_volume_detail. The description only states what it does, not when it should be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_nat_gatewaysARead-only
List all NAT Gateway instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for paged results | |
| vpcName | No | Filter by VPC name | |
| pageSize | No | Page size for paged results (required when pageNo is specified) | |
| publicIp | No | Filter by public IP address assigned to the NAT Gateway | |
| subnetNo | No | Filter by subnet number | |
| zoneCode | No | Filter by zone code (e.g., KR-1, KR-2) | |
| privateIp | No | Filter by private IP address | |
| subnetName | No | Filter by subnet name | |
| natGatewayName | No | Filter by NAT Gateway name | |
| natGatewayTypeCode | No | Filter by NAT Gateway type (PRVT: Private, PBLIP: Public) | |
| publicIpInstanceNo | No | Filter by public IP instance number | |
| natGatewayInstanceNoList | No | Filter by NAT Gateway instance numbers | |
| natGatewayInstanceStatusCode | No | Filter by NAT Gateway instance status code |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description's 'List' is consistent with a safe read operation. The description adds useful context by specifying the scope as 'current region' and noting that it lists all instances. This goes beyond the annotation but does not describe pagination or return format, making it slightly above average.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clean sentence that conveys the essential purpose without any unnecessary words or repetition. It is front-loaded with the verb and resource, making it highly scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema documents all parameters, the description gives no information about pagination behavior, default result size, response structure (no output schema exists), or whether filters are optional. This is adequate for a simple list tool but leaves gaps for an agent unfamiliar with NAT Gateway APIs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each of the 13 parameters fully documented in the schema. The description itself adds no parameter-specific details beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (List) and clear resource (NAT Gateway instances) with a defined scope (current region). This clearly distinguishes it from sibling tools like ncloud_get_nat_gateway_detail, which fetches a single instance, and from create/delete/set tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for listing all NAT Gateways, but it does not explicitly state when to choose this over alternatives like ncloud_get_nat_gateway_detail or provide exclusion criteria. The intended use case is reasonably clear from the name and description, but no explicit guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_network_aclsARead-only
List all Network ACLs in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| networkAclName | No | Filter by Network ACL name | |
| networkAclNoList | No | Filter by Network ACL numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotated readOnlyHint=true already signals a safe read operation. The description adds the 'current region' scoping, which is useful context, but does not disclose other behavioral traits such as pagination, return format, or permission requirements. It does not contradict the annotations, and the additions are minimal beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys the core purpose without waste. It is front-loaded with the action and resource, and every word adds value. No redundant or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with 3 optional filters and no output schema, the description is mostly sufficient. It clearly specifies the default behavior (list all in current region), but does not mention that filters are available or describe the response structure. Given the low complexity and good schema coverage, this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (vpcNo, networkAclName, networkAclNoList) having clear descriptions. The tool description itself does not add semantic meaning beyond the schema; it merely says 'List all' without mentioning that filters are available. Since the schema fully documents the parameters, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all Network ACLs in the current region' clearly states the action (list), the resource (Network ACLs), and the scope (current region). It effectively distinguishes from sibling tools like ncloud_get_network_acl_detail (fetch a single ACL) and ncloud_get_network_acl_rules (list rules for an ACL).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (listing ACLs) but provides no explicit guidance on when to choose this tool over alternatives such as ncloud_get_network_acl_detail or ncloud_get_network_acl_rules. No when-to-use or when-not-to-use scenarios are given. The purpose is clear enough that a user could infer, but no explicit alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_network_interfacesARead-only
List all network interfaces in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| subnetNo | No | Filter by subnet number | |
| serverInstanceNo | No | Filter by attached server instance number | |
| networkInterfaceNoList | No | Filter by network interface numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the scope ('current region'), which is useful context beyond the readOnlyHint annotation. It does not disclose behaviors like pagination (though pageNo/pageSize params hint at it), response format, or any limits on returned data. With readOnlyHint=true already indicating a safe read operation, the description adds minimal but non-zero value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately states the action and scope. No wasted words. It is appropriately sized for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is a simple list operation with readOnlyHint and a fully described schema (5 params, all optional), the description is mostly adequate. However, it could benefit from noting that no required parameters means it lists all interfaces by default, and that filters are available to narrow results. The return format is not described, but no output schema exists, so a bit more detail there would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with descriptions, so the baseline is 3. The description does not add any parameter-level meaning beyond what the schema already provides. The schema itself explains filters (subnetNo, serverInstanceNo, networkInterfaceNoList) and pagination (pageNo, pageSize) sufficiently.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all network interfaces in the current region' uses a specific verb ('list') and resource ('network interfaces') with a scope qualifier ('current region'), making the purpose clear. It distinguishes from sibling tools like ncloud_get_network_interface_detail (which targets a single interface), though it doesn't explicitly mention that distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'in the current region' implies a regional scope, which provides some context for when to use this tool. However, there is no explicit guidance on when to use this vs alternative tools (e.g., get_network_interface_detail) or when not to use it. The presence of optional filters suggests use cases, but these are not spelled out in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_objectsBRead-only
List objects in an Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| marker | No | Marker for pagination (key to start after) | |
| prefix | No | Limits results to keys beginning with this prefix | |
| maxKeys | No | Maximum number of keys to return (default 1000) | |
| delimiter | No | Delimiter for grouping keys (commonly '/') | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates the safe, read-only nature. The description adds the bucket scope but does not disclose behavioral traits such as pagination (marker, maxKeys), potential truncation, or that it returns only current object versions (not versions). Since annotations cover the safety profile, a middle score is appropriate, but the description could add more context about the listing behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of seven words: 'List objects in an Object Storage bucket'. It is front-loaded, unambiguous, and contains no filler or redundant content. It is appropriately concise for a simple list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters and no output schema, the description is minimally adequate. It states the core purpose, and the schema covers parameter details. However, it lacks differentiating context (e.g., that this does not list versions) and gives no hint about the return shape or pagination behavior. Given the sibling `list_object_versions` tool, this is a notable gap in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — every parameter (bucketName, marker, prefix, maxKeys, delimiter) has a full description. The tool description itself adds no parameter-level detail beyond what the schema provides. With high schema coverage, the baseline is 3, and no additional semantic value is offered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'List objects in an Object Storage bucket'. It clearly states the action and target, but it does not explicitly distinguish from the sibling tool `ncloud_list_object_versions`, which lists object versions. The name `list_objects` vs `list_object_versions` provides implicit separation, but a 5 requires explicit differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as `ncloud_get_object` (retrieve a specific object), `ncloud_list_buckets` (list buckets), or `ncloud_list_object_versions` (list versions). The description provides no prerequisites, exclusions, or alternative tool references, leaving the agent to infer usage from the name and schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_object_versionsARead-only
List all versions of objects in a versioning-enabled Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | Limits results to keys beginning with this prefix | |
| maxKeys | No | Maximum number of keys to return (default 1000) | |
| delimiter | No | Delimiter for grouping keys (commonly '/') | |
| keyMarker | No | Key marker for pagination | |
| bucketName | Yes | Name of the bucket | |
| versionIdMarker | No | Version ID marker for pagination (used with keyMarker) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent with this. The description adds the useful context that this operation lists ALL versions and requires versioning-enabled, but it does not disclose pagination behavior, potential large result sets, or what happens when versioning is disabled. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately states the tool's purpose. It is front-loaded with the action and resource, and every word earns its place. There is no redundant or vague wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficiently complete for a simple listing operation. It includes the key condition (versioning-enabled), and the schema fully describes all parameters. Without an output schema, the return format is not explained, but for a list operation this is not a major gap. The annotation and schema cover the rest.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all 6 parameters, so the schema fully documents each parameter. The description does not add any additional meaning beyond what the schema provides, matching the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' with the resource 'all versions of objects in a versioning-enabled Object Storage bucket'. It clearly distinguishes this tool from sibling ncloud_list_objects by focusing on object versions rather than current objects, and it correctly identifies the required bucket configuration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the prerequisite that the bucket must be versioning-enabled, which gives clear context for when to use this tool. It does not mention alternatives or exclusions, but the purpose is unambiguous and the required condition is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_partsARead-only
List uploaded parts for a multipart upload in progress
| Name | Required | Description | Default |
|---|---|---|---|
| uploadId | Yes | Upload ID returned from initiate multipart upload | |
| bucketName | Yes | Name of the bucket | |
| objectName | Yes | Object key (path) for the multipart upload |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals this is a safe read operation. The description adds the 'in progress' constraint, which is useful context (the tool only works for active uploads). However, it does not mention potential errors, pagination, or response format, so it adds only marginal behavioral detail beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys all necessary information without any wasted words. It is front-loaded with the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with a 100% schema coverage and no output schema, the description is largely complete. It clearly states the purpose and the condition ('in progress'), though it could have explicitly mentioned that bucketName, objectName, and uploadId identify the specific upload, but this is already evident from the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete coverage (100%) with clear descriptions for all three required parameters: bucketName, objectName, and uploadId. The tool description does not add further parameter details, but given the high schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List uploaded parts') and the specific resource ('a multipart upload in progress'), which precisely identifies this tool and differentiates it from sibling tools like ncloud_list_multipart_uploads (which lists uploads, not parts). The verb and resource are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'in progress' implies this tool is used after initiating a multipart upload and after uploading parts, but before completing or aborting. It provides clear context for when to use it, though it does not explicitly name alternative tools or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_pipeline_historyBRead-only
Get execution history list for a SourcePipeline pipeline
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N) | |
| pageSize | No | Items per page (1~N) | |
| projectId | Yes | Pipeline ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent with that. However, the description adds no additional behavioral context such as pagination limits, default page size, or what constitutes an execution history entry. It essentially restates the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words. It efficiently communicates the core purpose without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with pagination parameters, the description is minimally adequate but lacks return value details (no output schema) and any nuances such as default page size or result ordering. It doesn't describe what the history list contains beyond the name.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for each parameter. The description adds no extra meaning beyond the schema, which already explains projectId as 'Pipeline ID' and the pagination fields. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (get execution history list) and the resource (SourcePipeline pipeline). It distinguishes itself from the sibling get_pipeline_history_detail by implying a list vs. a detail, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like get_pipeline_history_detail or list_pipelines. The description only states what the tool does, not the context in which it should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_pipelinesARead-only
List SourcePipeline pipelines with optional pagination and name search
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N, required if pageSize is set) | |
| pageSize | No | Items per page (1~N, required if pageNo is set) | |
| projectName | No | Filter by pipeline name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, so the description does not need to justify read-only behavior. It adds a little context by mentioning pagination and name search, but does not disclose default behavior (e.g., whether all pipelines are returned by default, max page size, or how pagination parameters interact). This is a simple list operation, so the gap is minor but present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the tool's purpose and key options. There is no redundancy or wasted words; every phrase adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with fully described optional parameters and a readOnlyHint annotation, the description is largely sufficient. It lacks details about default pagination behavior or the response structure, but these are not critical given the tool's simplicity and the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter (pageNo, pageSize, projectName) is already clearly described in the schema. The description's mention of 'optional pagination and name search' simply summarizes the existing schema information without adding new semantic detail, justifying the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), the resource ('SourcePipeline pipelines'), and key capabilities ('optional pagination and name search'). This distinguishes it from sibling tools like ncloud_get_pipeline (which retrieves a single pipeline) and ncloud_list_pipeline_history (which lists run history), so the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing SourcePipeline pipelines and mentions pagination and name search, which helps the agent choose when to call it. However, it does not explicitly name alternatives or state when not to use this tool, so it falls short of the best examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_placement_groupsARead-only
List all placement groups in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| placementGroupName | No | Filter by placement group name | |
| placementGroupNoList | No | Filter by placement group numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description adds the region-scoping behavior. It does not mention pagination, response contents, or filtering semantics beyond 'all,' but for a read-only listing this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that is easy to scan and free of fluff. It loses a point for not including any usage hints or caveats, but it remains appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only list tool with fully documented optional filters and a readOnlyHint annotation, the description covers the core behavior sufficiently. No output schema exists, but the tool is low-complexity and the description is adequate for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the schema with 100% coverage, so the description adds no extra semantic value beyond naming the filters. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a clear resource ('placement groups'), and scope ('current region'), making it easy to distinguish from sibling tools like get_placement_group_detail or create_placement_group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for retrieving placement groups but provides no explicit guidance on when to choose this over get_placement_group_detail or how the optional filters should be applied. It relies on the tool name and schema to convey the listing role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_policiesARead-only
List all available IAM policies
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default: 0) | |
| size | No | Page output count (default: 10) | |
| type | No | Filter by policy type | |
| searchWord | No | Search keyword | |
| searchColumn | No | Search column (policyName) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds the scope of 'all available' but does not disclose that results are paginated or that filters exist (both are visible in the schema). It provides modest additional context beyond the annotation but lacks details about response structure or pagination behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the verb and resource. Every word earns its place, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with all parameters self-documented in the schema and read-only annotations, the description is adequate. It names the exact resource ('IAM policies') and implies a list operation. However, the absence of an output schema and any mention of pagination or return format leaves some gaps, but these are minor for a straightforward listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all five parameters already have descriptive text. The description adds no extra meaning beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all available IAM policies' uses a specific verb ('List') and clearly identifies the resource ('IAM policies'), distinguishing it from sibling tools like ncloud_gtm_list_policies and ncloud_drm_list_policies. It precisely states what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly scopes usage to IAM policies, making it obvious this is for IAM rather than GTM or DRM policies. It does not explicitly mention alternatives or exclusions, but the context is clear enough for an agent to select this tool over similar policy-listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_port_pluginsARead-only
Get the full list of Cloud Insight port monitoring plugins.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already declares this as a safe read operation. The description adds the 'full list' scope (no filtering), which is useful context, but it doesn't disclose additional behavioral traits such as return format, pagination, or whether the list includes plugins from all servers. With annotations covering the safety profile, the description meets the bar but doesn't exceed it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, front-loaded with the verb 'Get.' Every word earns its place — it states the action, the resource, and the scope ('full list'). There is zero waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool with no output schema, the description is largely complete: it states what is retrieved and the annotation confirms it's a safe read. The only gap is that it doesn't relate itself to the companion tools (get/add/remove/set_port_plugin) or describe the return structure, but these are not critical for a simple enumeration operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema description coverage is 100% (empty schema). Per the rubric, 0 params earns a baseline of 4. The description reinforces that no parameters are needed by framing this as a 'full list' operation, which is sufficient since there is nothing to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Get the full list of Cloud Insight port monitoring plugins.' The word 'full' clarifies scope, and the phrase 'Cloud Insight port monitoring plugins' precisely identifies the resource. This distinguishes it from siblings like ncloud_get_port_plugin (single plugin) and ncloud_list_process_plugins (different plugin type).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context — this is the list-all operation for port plugins — but it does not explicitly name alternatives or state when not to use it. Sibling tools like ncloud_get_port_plugin and ncloud_add_port_plugin exist, and the description could have mentioned 'for a single plugin, use get_port_plugin' but does not. Usage is clear but only by implication from the name and 'full list' phrasing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_backup_detailsARead-only
List detailed backup information (including file names) for a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true. The description adds that the tool lists detailed info including file names, but does not elaborate on other behavioral traits like rate limits, authentication needs, or output size. It adds moderate value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant information. Every word is purposeful and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (2 simple params, no output schema, read-only annotation), the description sufficiently covers the purpose. However, it does not mention the output format or any additional context, which would be beneficial since there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters (regionCode and cloudPostgresqlInstanceNo). The tool description does not add any additional meaning to parameters, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (List), the resource (detailed backup information including file names), and the scope (Cloud DB for PostgreSQL instance). It distinguishes this tool from its sibling 'ncloud_list_postgresql_backups' by emphasizing 'detailed' and 'including file names'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for detailed backup info but does not explicitly guide when to prefer this over similar siblings like 'ncloud_list_postgresql_backups' or other database backup detail tools. No exclusions or alternative recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_backupsBRead-only
List backups for a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already declares the read-only nature. The description adds only 'List backups for a Cloud DB for PostgreSQL instance,' which restates the function without disclosing additional behavior such as pagination, default limits, or what backup information is returned. No behavioral context is added beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb and resource. It is concise, contains no unnecessary information, and is appropriately sized for a simple read operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description is minimal. It fails to specify what the returned backup list contains or how it differs from the sibling `ncloud_list_postgresql_backup_details`. The agent may not know whether this returns summaries or full details, but the parameter is self-explanatory and the operation is straightforward, making it minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one required parameter `cloudPostgresqlInstanceNo` with description 'Cloud PostgreSQL instance number,' giving 100% schema coverage. The tool description does not add any further meaning about the parameter, such as format or how to obtain the instance number. Since schema coverage is high, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource as 'backups for a Cloud DB for PostgreSQL instance.' It clearly states the tool's function. However, it does not distinguish this tool from the sibling `ncloud_list_postgresql_backup_details`, which also relates to backups, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, exclusions, or references to sibling tools like `ncloud_list_postgresql_backup_details`. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_bucketsARead-only
List Object Storage buckets available for Cloud DB for PostgreSQL (for backup export)
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral details beyond the readOnlyHint annotation. It does not mention authentication, rate limits, or what the operation affects. However, it does not contradict any annotations, so it is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 13 words. It is front-loaded with the verb and resource, and every word adds value. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one optional parameter and no output schema, the description is mostly complete. It specifies the context (PostgreSQL backup) and action. A minor improvement would be to mention the return type (list of bucket names), but it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (regionCode described in schema). The description does not add extra meaning beyond the schema; it does not elaborate on the parameter's usage or format further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'List Object Storage buckets available for Cloud DB for PostgreSQL (for backup export)'. It clearly distinguishes from sibling tools like generic bucket listing and other DB-specific bucket lists by including the database type and purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for PostgreSQL backup export but does not explicitly state when to use this tool versus alternatives like ncloud_list_buckets or ncloud_list_mssql_buckets. No when-not or exclusion guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_databasesARead-only
List databases in a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals a safe read operation, and the description's 'List databases' is consistent with that. No additional behavioral details like pagination, error conditions, or return format are provided, but given the annotation coverage the description meets the minimum viable standard.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the verb, and contains no unnecessary words or repetition. It is maximally concise while conveying the essential purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one required parameter and a clear annotation, the description adequately communicates the tool's purpose. It doesn't describe the response format, but that is not critical given the simplicity and the presence of the readOnlyHint annotation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the single parameter with a description ('Cloud PostgreSQL instance number'), and the tool description ties the parameter to the action ('in a Cloud DB for PostgreSQL instance') but does not add new semantic detail beyond what the schema already provides. Baseline applies due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and clearly specifies the resource: 'databases in a Cloud DB for PostgreSQL instance'. This clearly differentiates it from sibling tools like ncloud_list_postgresql_instances and ncloud_list_postgresql_users.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for listing databases within a specific PostgreSQL instance, but it does not explicitly state when to use this over alternative list tools or provide any exclusions. The usage context is inferred from the resource type rather than being explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_instancesARead-only
List all Cloud DB for PostgreSQL instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| cloudPostgresqlServiceName | No | Filter by PostgreSQL service name | |
| cloudPostgresqlInstanceNoList | No | Filter by PostgreSQL instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to restate that. It adds the 'current region' scoping, which is useful. However, it does not disclose behavior such as pagination limits, default page size, or what fields are returned in the response (no output schema is provided).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence (11 words) that is front-loaded with the verb and resource. Every word contributes, with no fluff or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 optional parameters and no output schema, but the description only covers purpose and region. It does not mention pagination parameters, filter options, or the shape of the returned list. For a list tool this is minimally adequate but leaves gaps for an agent to discover via schema and API knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema; it says 'all' which may imply no filtering, but the optional filter parameters are not mentioned. It neither contradicts nor enriches the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), resource ('Cloud DB for PostgreSQL instances'), and scope ('in the current region'). This distinguishes it from sibling tools like ncloud_get_postgresql_instance_detail (single instance detail) and ncloud_create_postgresql_instance (creation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you need all PostgreSQL instances in the current region, but provides no explicit guidance on when to choose this over alternatives, nor does it mention pagination or filtering capabilities. The availability of get_postgresql_instance_detail suggests a distinction, but it is not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_logsARead-only
List DB server log files for a Cloud DB for PostgreSQL server instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (e.g. KR, SGN, JPN). Defaults to current region. | |
| cloudPostgresqlServerInstanceNo | Yes | Cloud PostgreSQL server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation. It does not add behavioral details beyond stating the operation is listing log files. No contradictions, but also no extra context about what happens (e.g., returns metadata only).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately communicates the action and resource. Every word is necessary; no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation, the description is adequate but lacks details about what is returned (e.g., file names, paths). Without an output schema, more context would help an agent understand the tool's output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the input schema (100% coverage). The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'DB server log files for a Cloud DB for PostgreSQL server instance'. It is specific and unambiguous, effectively communicating the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ncloud_export_postgresql_log or ncloud_list_mysql_logs. No usage context, prerequisites, or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_postgresql_usersARead-only
List users in a Cloud DB for PostgreSQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlInstanceNo | Yes | Cloud PostgreSQL instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, and the description is consistent. No additional behavioral context is provided beyond listing users, such as pagination, filtering, or any side effects. The description does not contradict the annotation, but it also does not enrich the agent's understanding beyond what the annotation and basic verb convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, complete sentence that directly conveys the tool's purpose. There is no filler, repetition, or unnecessary detail. Every word contributes to clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one well-documented parameter and a readOnly annotation, the description is largely complete. The only gap is the absence of any detail about the output (though no output schema exists, a brief note about the return format could have been helpful). Overall, it provides enough for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the single parameter 'cloudPostgresqlInstanceNo' with a clear description 'Cloud PostgreSQL instance number'. The tool description adds no further explanation about the parameter format or constraints. Since schema coverage is 100%, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation: 'List users in a Cloud DB for PostgreSQL instance'. It specifies the resource (users), the database type (PostgreSQL), and the action (list). This distinguishes it from sibling tools like ncloud_list_postgresql_databases and ncloud_list_mysql_users, as it is unambiguous about what is being listed and for which service.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: whenever users of a specific PostgreSQL instance need to be listed. However, it provides no explicit guidance on when not to use it or alternative tools, such as ncloud_list_postgresql_databases for database listing. The usage context is clear but not formally differentiated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_process_pluginsARead-only
Get the full list of Cloud Insight process monitoring plugins.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with the readOnlyHint annotation and adds useful context by specifying the product domain 'Cloud Insight' and the scope 'full list.' It does not mention pagination or return format, but for such a simple no-parameter list operation, the description provides adequate transparency beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear, and information-dense sentence. It states exactly what the tool does without any fluff, making it optimally concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there are no parameters, no output schema, and a straightforward listing operation, the description fully covers what an agent needs to know: the resource type, scope, and result. Nothing is missing for correct tool selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters in the schema, so the baseline is 4. The description correctly indicates that the tool requires no inputs and directly returns the full list. No parameter explanations are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and identifies the exact resource: 'full list of Cloud Insight process monitoring plugins.' It clearly distinguishes from sibling tools like ncloud_get_process_plugin (singular) and ncloud_list_port_plugins (different plugin type).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'full list' implies this is the tool to use when you need a comprehensive enumeration of process monitoring plugins, as opposed to fetching a specific plugin. It doesn't explicitly name alternatives, but for a zero-parameter list tool the intended usage is clear and no exclusions are needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_public_ipsARead-only
List all public IP instances in the current region. Note: unlike servers and block storages, the Public IP API returns NO product code — to price one, call ncloud_get_product_price_list (billing group) with productName='Public IP'.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| isAssociated | No | Filter by association status | |
| publicIpInstanceNoList | No | Filter by public IP instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true already present, the description still adds value by disclosing a non-obvious behavior: the Public IP API returns no product code, which directly affects downstream pricing workflows. It also clarifies the current-region scope. It does not cover pagination behavior, but the schema already documents pagination parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The primary purpose is front-loaded, and the caveat plus pricing alternative are delivered in a single dependent clause. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only listing tool with no required parameters and fully documented optional parameters, the description covers purpose, region scope, a critical output caveat, and the appropriate follow-up tool. It could describe its return format more fully, given there is no output schema, but the essential operational context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters are already described in the input schema (100% coverage), so the description does not add parameter-level meaning. The note about product code is about output, not parameters, so it holds at the schema-coverage baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'List all public IP instances in the current region.' The scope ('current region') and the 'list all' phrasing distinguish it from detail, creation, and association siblings like ncloud_get_public_ip_detail and ncloud_create_public_ip, even without naming them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly routes the agent to ncloud_get_product_price_list for pricing with a precise argument (productName='Public IP'), which is a clear alternative. It does not mention when to choose detail/association tools instead, so guidance stops short of being fully exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_rolesARead-only
List all IAM roles
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default: 0) | |
| size | No | Page output count (default: 10) | |
| searchWord | No | Search keyword | |
| searchColumn | No | Search column |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already establishes that this is a safe read operation. The description adds the domain (IAM roles) but does not disclose behavioral details such as pagination behavior (i.e., page/size parameters) or that 'all' requires iterating over multiple pages. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence with no filler or redundancy. It front-loads the core purpose and is appropriately sized for a simple list tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward read-only list tool with full schema coverage and a read-only annotation, the description provides adequate context. However, it could benefit from noting that results are paginated via the page/size parameters, which would clarify the scope of 'all'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all four parameters (page, size, searchWord, searchColumn) with 100% coverage. The description adds no additional parameter semantics, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all IAM roles' uses a specific verb ('List') and a clear resource ('IAM roles'), distinguishing it from sibling tools like ncloud_list_policies and ncloud_list_groups. It fully conveys the tool's function in four words.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or contrasts with other list tools (e.g., list_policies, list_groups), leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_route_tablesBRead-only
List all route tables in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| routeTableName | No | Filter by route table name | |
| routeTableNoList | No | Filter by route table numbers | |
| supportedSubnetTypeCode | No | Filter by supported subnet type (PUBLIC, PRIVATE) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation covers the safety profile, and the description adds the 'current region' scoping detail. However, it does not disclose other behavioral traits such as response format, pagination, or that filtering parameters are available.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single succinct sentence that conveys the core purpose without unnecessary words. It is easily parsed and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with no output schema, the description is minimal. It does not mention that results can be filtered, what fields are returned, or any limitations. While the schema provides parameter details, the description alone leaves some gaps for an agent deciding on invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all four parameters. The description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (route tables), and the scope (current region). It is distinct from the related 'get_route_table_detail' and 'get_routes' tools, though it does not explicitly contrast with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternative route table tools (e.g., ncloud_get_route_table_detail, ncloud_get_routes). The description does not mention filter usage, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_rule_groupsBRead-only
Get the list of Cloud Insight event rule groups for monitoring alerts.
| Name | Required | Description | Default |
|---|---|---|---|
| search | No | Search keyword to filter rule groups | |
| pageNum | Yes | Page number (required, starts from 1) | |
| prodKey | Yes | Product key (cw_key) to filter rule groups (required) | |
| pageSize | Yes | Number of results per page (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with the readOnlyHint annotation (says 'Get'), but adds no behavioral details beyond that. It provides domain context by mentioning 'Cloud Insight' and 'monitoring alerts,' but does not disclose pagination behavior or filtering constraints already present in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler. It is front-loaded with the main verb and resource, making it easy to scan. While concise, it omits any supplementary usage or context details, but remains economical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with pagination parameters and a read-only annotation, the description is adequate but minimal. It doesn't explain what a 'rule group' is or that results are paginated, relying on the schema for parameter details. Given the lack of an output schema, the description could clarify return format, but the core purpose is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all four parameters, so the description does not need to repeat parameter semantics. The schema already describes prodKey as 'cw_key' filter, pageSize/Num, and search keyword. The description adds no additional meaning beyond the schema, so it meets the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('list of Cloud Insight event rule groups'), clearly indicating a listing operation. It distinguishes from sibling tools like get_rule_group (single) and create/delete/update variants by focusing on list retrieval. However, it could more explicitly mention that this returns all rule groups (with pagination) to fully disambiguate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as get_rule_group for a single rule group or list_metrics_groups for other monitoring resources. The description only states what the tool does, leaving the agent to infer usage from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_scaling_policiesARead-only
List all scaling policies for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this is a safe read operation, so the description does not need to repeat that. It adds the 'all' scope and ASG-specific targeting, but does not mention pagination behavior, return format, or potential empty results. This is adequate baseline transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. Every word is essential and the description earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal but adequate for a straightforward list operation. However, the claim of 'all' conflicts slightly with pagination parameters without explaining whether it auto-paginates, and the lack of an output schema means the return value is not described. It meets the minimum bar but does not exceed it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters (pageNo, pageSize, autoScalingGroupNo) are already documented. The description does not add any additional meaning beyond the schema, such as how pagination interacts with the claim of 'all'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List'), the resource ('scaling policies'), and the scope ('for an Auto Scaling Group'), distinguishing it from other policy-listing tools like ncloud_gtm_list_policies or ncloud_list_policies. The singular required parameter autoScalingGroupNo reinforces the intended target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is given about when to use this tool over alternatives, such as ncloud_put_scaling_policy or ncloud_delete_scaling_policy. The context is implied by the name and description but lacks any stated exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_scheduled_actionsBRead-only
List scheduled actions that have not yet been executed for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description aligns with that. The description does add the useful scoping detail that only 'not yet been executed' actions are included, but it does not disclose pagination behavior, response format, or behavior when no matching actions exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence of 13 words, front-loaded with the verb 'List' and containing no filler or redundant phrases. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one well-documented parameter, the description is mostly adequate. However, since there is no output schema, the return shape, pagination, and ordering of results are not disclosed, leaving a notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter autoScalingGroupNo is fully described in the schema ('Auto Scaling Group number') with 100% schema coverage. The description adds no extra meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clearly identified resource ('scheduled actions') and scope ('that have not yet been executed for an Auto Scaling Group'). This is clear and distinct from sibling tools like ncloud_put_scheduled_action or ncloud_delete_scheduled_action, though it does not explicitly reference those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool vs alternatives, when not to use it, or prerequisites such as how to obtain the required Auto Scaling Group number (e.g., via ncloud_list_asgs). The description only states the basic operation without any contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_serversARead-only
List all server instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| serverInstanceNoList | No | Filter by server instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to establish safety. It does add context by specifying 'current region,' which is useful scoping information. However, it does not disclose details about pagination behavior or return format, which would add value beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly packed sentence that states exactly what the tool does. There is no redundancy or unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with all optional parameters documented in the schema, the description is sufficient. It could mention pagination or that it returns a list of server instances, but these are implied by the tool name and the parameter schema. The lack of an output schema increases the need for some return guidance, but the overall context is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (vpcNo, pageNo, pageSize, serverInstanceNoList) having a clear description. The tool description adds no additional parameter meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), identifies the resource ('server instances'), and scopes the operation ('in the current region'). This clearly distinguishes it from single-server actions like ncloud_get_server_detail or creation/management tools such as ncloud_create_server or ncloud_terminate_server.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention that for a single server one should use ncloud_get_server_detail, nor does it explain pagination or filtering options. The scope is limited to a single indicative sentence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_snapshotsBRead-only
List all block storage snapshot instances
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| blockStorageSnapshotInstanceNoList | No | Filter by snapshot instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already declares the operation is read-only. The description adds no extra behavioral context such as pagination behavior, default page size, ordering, or whether all snapshots are returned. It simply restates the listing function without expanding on observable behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler. It is front-loaded and easy to parse, making every word earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema covers parameters and annotations cover safety, the description lacks any context about when to use this tool versus similar snapshot listing tools. It also omits mention of pagination or filtering capabilities, which are part of the tool's expected behavior. For a simple list tool this is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters (pageNo, pageSize, blockStorageSnapshotInstanceNoList) have descriptions in the schema, achieving 100% coverage. The description itself does not elaborate on parameter meaning or usage, so it adds no extra semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('block storage snapshot instances'), making the tool's purpose immediately obvious. It also distinguishes itself from related tools like ncloud_list_nas_snapshots and ncloud_delete_snapshots by specifying the resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_list_nas_snapshots or ncloud_get_snapshot_detail. There is no mention of pagination or filtering use cases, leaving the agent without context for selecting this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_sub_account_access_keysARead-only
List the API access keys of a sub account, with each key's active state and creation time. Secret keys are never returned here — a secret key is only shown once, in the ncloud_create_sub_account_access_key response.
| Name | Required | Description | Default |
|---|---|---|---|
| subAccountId | Yes | Sub account ID (see ncloud_list_sub_accounts) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the read-only safety is established. The description adds valuable behavioral context beyond that: it reveals the exact output fields (active state and creation time) and the non-obvious fact that secret keys are never exposed in the list response, which is critical for an agent deciding whether this tool can satisfy a 'get secret key' request.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the core purpose and return fields in the first sentence and the critical secrecy caveat in the second. Every clause adds value; there is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, read-only list tool with no output schema, the description supplies the essential usage context: the resource, the returned fields, and the secret-key exclusion. It could be slightly improved by explicitly stating the response shape (e.g., an array of key objects) or any pagination behavior, but these are minor given the low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% because the only parameter, subAccountId, has a descriptive schema entry referencing ncloud_list_sub_accounts. The description itself does not add additional parameter-level details, but the schema already provides adequate meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('API access keys of a sub account'), and specifies the returned attributes ('active state and creation time'). It also distinguishes itself from the closely related ncloud_create_sub_account_access_key by explicitly stating that secret keys are never returned here.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states what the tool does and provides an explicit when-not: if a secret key is needed, this tool will not return it, and points to the ncloud_create_sub_account_access_key response as the only place a secret key appears. This gives an agent enough context to choose between listing keys and creating or fetching a secret key.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_sub_accountsARead-only
List all sub accounts (IAM users) in the organization
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (0-based, default: 0) | |
| size | No | Page output count (default: 10) | |
| searchWord | No | Search keyword | |
| searchColumn | No | Search column |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already declares this as a safe read operation. The description adds the organizational scope and clarifies that 'sub accounts' are IAM users, which is useful context. However, it does not disclose pagination behavior, return format, or other behavioral traits beyond what the annotation provides. No contradiction exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. Every part contributes meaning: the verb, the resource, and the scope. It is appropriately sized for the simplicity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only listing tool with comprehensive schema descriptions and a read-only annotation, the description is adequate. It does not mention pagination or search capabilities, but these are already documented in the schema. The lack of an output schema is not an issue for a list operation returning a list of sub accounts.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for all four parameters (page, size, searchWord, searchColumn) with 100% coverage. The tool description itself adds no parameter-specific details, but the schema already documents them clearly, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all sub accounts (IAM users) in the organization' uses a specific verb ('List'), a clear resource ('sub accounts' / 'IAM users'), and a scope ('in the organization'). It clearly distinguishes from sibling tools like ncloud_get_sub_account_detail (specific account), ncloud_create_sub_account, and ncloud_delete_sub_account by its listing intent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this tool is for listing all sub accounts, but it does not explicitly state when to use it over alternatives such as ncloud_get_sub_account_detail for retrieving a specific account, nor does it mention any exclusions. The context is clear for a straightforward listing operation, but explicit guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_subnetsARead-only
List all subnets in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| subnetName | No | Filter by subnet name | |
| subnetNoList | No | Filter by subnet numbers | |
| usageTypeCode | No | Filter by usage type (GEN, LOADB, BM, NATGW) | |
| subnetTypeCode | No | Filter by subnet type (PUBLIC, PRIVATE) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation, lowering the burden on the description. The description adds 'all' and 'current region' as scope context, but there is no mention of pagination, response format, or default filter behavior, which would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no unnecessary words. It efficiently states the action, resource, and scope in a compact form.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with readOnly annotation and fully described parameters, the description is adequate. However, the absence of an output schema and lack of details about pagination or response contents leave some gaps, and it doesn't point to related tools like ncloud_get_subnet_detail for detailed lookups.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage across all five optional parameters, so the description doesn't need to elaborate. It adds no parameter-specific meaning beyond what the schema already provides, matching the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and resource 'subnets' with a clear scope ('current region'). It distinguishes itself from singular ncloud_get_subnet_detail and service-specific subnet listers by being the general list tool, though it doesn't explicitly state it covers VPC subnets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'current region' provides clear context for when to use the tool, but there is no explicit guidance on alternatives or exclusions. It doesn't mention ncloud_get_subnet_detail for single-subnet lookups or service-specific subnet listers, leaving the choice somewhat implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_target_groupsARead-only
List all target groups in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | No | Filter by VPC number | |
| pageNo | No | Page number for pagination | |
| pageSize | No | Page size for pagination | |
| targetGroupNoList | No | Filter by target group numbers | |
| loadBalancerInstanceNo | No | Filter by load balancer instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description's 'List' aligns. It adds the 'current region' scope, which is a behavioral constraint not in annotations. However, it does not mention pagination behavior, default page size, or result ordering. Minimal added value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 8-word sentence, front-loaded with the verb and resource. There is zero filler or redundancy, earning a top score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with readOnly annotation and all parameters documented in the schema, the description adequately covers the operation. The absence of an output schema is offset by the implied return of a list. Missing an explicit note about pagination controls but not critical given schema visibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all five parameters with descriptions (100% coverage), so the description bears no burden for parameter semantics. It does not duplicate or add new parameter details, meeting the baseline expectation for a schema-complete tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with a clear resource 'target groups' and a scope constraint ('in the current region'), which precisely identifies the operation. It distinguishes from siblings like ncloud_get_target_group_detail (single target group) and ncloud_list_targets (targets within groups).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use vs alternatives. The implied usage is clear from the name, but there is no mention of exclusions or better-suited tools (e.g., ncloud_get_target_group_detail for a specific group). The description could note that all groups are returned unless filters are applied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_targetsARead-only
List all targets in a specific target group
| Name | Required | Description | Default |
|---|---|---|---|
| targetGroupNo | Yes | Target group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is already clear. The description adds the scoping phrase 'in a specific target group' but does not disclose additional behavioral details like return format, pagination, or whether the results include health status. It provides only minimal context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence: 'List all targets in a specific target group'. It contains no filler, redundancy, or unnecessary detail, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with one parameter and a read-only annotation, the description is adequate but incomplete. It does not describe what the returned targets will contain (e.g., IDs, IPs, health status) or any pagination/limits. Since there is no output schema, the description should provide more detail about the return values, but it leaves this unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already documents targetGroupNo as 'Target group number'. The description does not add extra semantic details beyond referencing 'a specific target group', so it matches the schema without adding new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all targets in a specific target group' clearly states the verb (list), resource (targets), and scope (specific target group). This distinguishes it from sibling tools like ncloud_list_target_groups (which lists the groups themselves) and ncloud_get_target_group_detail (which retrieves details of a single group).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when one needs to enumerate targets within a known target group, but it provides no explicit guidance on when to use this tool versus alternatives such as ncloud_list_target_groups or ncloud_get_target_group_detail. There are no exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_vpc_peeringsARead-only
List all VPC Peering instances in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| sourceVpcNo | No | Filter by source VPC number | |
| targetVpcNo | No | Filter by target VPC number | |
| vpcPeeringName | No | Filter by VPC Peering name | |
| vpcPeeringInstanceNoList | No | Filter by VPC Peering instance numbers | |
| vpcPeeringInstanceStatusCode | No | Filter by status code (RUN, INIT, TERMTING) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds the 'current region' scope, which is useful context, but does not disclose other behavioral details such as pagination, ordering, or whether all peerings are returned by default. With the annotation covering the safety profile, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the verb and resource. Every word earns its place, and there is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with good schema coverage and a readOnly annotation, this description is mostly complete. It clearly states the resource and scope. It does not explicitly mention that filters are optional or describe the return format, but for a list operation without an output schema, this is an acceptable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all five filter parameters described individually. The description adds no additional meaning beyond saying 'List all', implying the filters are optional. Since the schema already provides semantics for each parameter, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (VPC Peering instances), and the scope (current region). This distinguishes it from sibling tools like ncloud_get_vpc_peering_detail (which retrieves a single peering) and ncloud_create_vpc_peering (which creates one).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for listing VPC Peerings in the current region, which is clear enough for a straightforward list operation. However, it does not explicitly state when to use this versus alternatives like ncloud_get_vpc_peering_detail for a specific peering, nor does it mention that filters are optional for narrowing results.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_vpcsARead-only
List all VPCs in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| vpcName | No | Filter by VPC name | |
| vpcNoList | No | Filter by VPC numbers | |
| vpcStatusCode | No | Filter by VPC status code (INIT, CREATING, RUN, TERMTING) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already indicates this is a safe read operation. The description adds the constraint 'in the current region', which is a useful scoping detail. No contradictions. It does not go into pagination or return format, but for a simple list operation with an annotation, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence: 'List all VPCs in the current region'. It is front-loaded with the action and resource, contains no fluff, and every word earns its place. Perfectly sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with three optional self-documenting filters and no output schema, the description is nearly complete. It states the core behavior and scope. It could optionally mention that filters are supported, but the schema covers that. The presence of readOnlyHint and full schema coverage reduce the need for more detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters (vpcName, vpcNoList, vpcStatusCode) having clear descriptions. The tool description adds no additional parameter detail, but the schema already provides sufficient information. Baseline 3 is appropriate when the schema handles the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with a clear resource 'VPCs' and a scope qualifier 'in the current region'. This clearly distinguishes it from sibling tools like get_vpc_detail which fetches a single VPC, and create_vpc/delete_vpc which are mutations. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool's use case: when you need to list all VPCs in the current region. It does not explicitly mention alternatives or exclusions, such as using get_vpc_detail for a specific VPC. However, the verb 'list' and the resource name provide reasonable contextual guidance, so it's not completely absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_list_waf_eventsARead-only
List WAF (Web Application Firewall) security events from Security Monitoring. Only for users subscribed to the Security Monitoring service.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (>= 1, default 1) | |
| order | No | Sort order | |
| eventNm | No | Filter by event name | |
| attackIp | No | Filter by attack source IP | |
| targetIp | No | Filter by target IP | |
| zoneName | No | Zone name | |
| attackType | No | Filter by attack type | |
| regionCode | No | Region code | |
| endDateTime | Yes | Search end time in Unix epoch milliseconds | |
| countPerPage | No | Items per page (>= 1, default 50) | |
| startDateTime | Yes | Search start time in Unix epoch milliseconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds the subscription requirement, which is useful contextual information, but does not disclose other behavioral details such as pagination defaults or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the core purpose and a key restriction with no filler. Information is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given strong schema coverage and read-only annotation, the description sufficiently orients the agent for a list operation. It does not need to explain return values or filters because the schema covers those; the subscription caveat is a welcome addition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 11 parameters are described in the schema (100% coverage), so the description need not repeat them. The description does not add any parameter-specific semantics beyond the schema, but none are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly identifies a specific operation: listing WAF security events from Security Monitoring. Expands WAF acronym and distinguishes from sibling event-list tools (AV, IDS, IPS, DDoS) through the WAF scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a clear prerequisite (Security Monitoring subscription) and context that this is a read-only listing operation. Does not explicitly mention alternative tools for other event types, but the name and description imply the niche.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_create_channelA
Create a new Live Station channel for live streaming. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating the channel | |
| useDvr | Yes | Time machine (DVR) setting: true to enable rewind | |
| envType | No | Channel environment type | REAL |
| cdnDomain | No | Existing Global Edge domain (required when createCdn=false) | |
| createCdn | Yes | Whether to create a new CDN (true) or use existing (false) | |
| recordType | No | Recording storage type | NO_RECORD |
| channelName | Yes | Channel name (3-20 chars, Korean/English/numbers/_) | |
| cdnProfileId | Yes | Global Edge profile ID | |
| drmEnabledYn | No | Whether to enable Multi DRM | |
| qualitySetId | Yes | Image quality setting ID (from quality settings list) | |
| recordFormat | No | Recording file format (required if recordType=AUTO_UPLOAD) | |
| cdnInstanceNo | No | Existing Global Edge instance ID (required when createCdn=false) | |
| cdnRegionType | No | CDN service region (required when createCdn=true) | |
| immediateOnAir | No | Auto-recording on stream start | |
| outputProtocol | No | Output protocol: HLS, LL_HLS (low-latency), or HLS,DASH (both) | HLS |
| recordFilePath | No | Recording storage path (required if recordType=AUTO_UPLOAD) | |
| timemachineMin | No | Time machine allowance in minutes (360, required if useDvr=true) | |
| isStreamFailOver | No | Whether to enable streaming redundancy | |
| recordBucketName | No | Recording storage bucket (required if recordType=AUTO_UPLOAD) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not contradict the annotations (destructiveHint=false). It adds the dryRun preview behavior but does not disclose other behavioral traits such as cost implications, irreversibility, or authentication needs. For a creation tool, more transparency would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no fluff. The main action is front-loaded, and the dryRun tip is directly useful. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 19 parameters, no output schema, and minimal annotations, the description is too brief. It fails to explain parameter relationships (e.g., conditional requirements for CDN and DRM settings) or provide guidance on common usage patterns. The agent would lack critical context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds no additional parameter meaning beyond what's in the schema, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'Create' and resource 'Live Station channel' with context 'for live streaming'. It also mentions dryRun for preview, making the tool's purpose unambiguous and distinct from siblings like list, get, update, and delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a helpful tip about using dryRun for preview, but lacks explicit guidance on when to use this tool versus alternatives (e.g., update_channel) or when not to use it. No comparative or contextual usage instructions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_create_vod_channelA
Create a Live Station VOD-to-Live channel (vodchannelcreate). CDN is Global Edge — give profileId, and either createCdn=true with regionType or createCdn=false with cdnDomain + cdnInstanceNo. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without creating | |
| cdnType | No | CDN type (Public zone: GLOBAL_EDGE) | GLOBAL_EDGE |
| envType | No | Channel environment type (default REAL) | |
| cdnDomain | No | Existing CDN domain (required when createCdn=false in the Public zone; see ncloud_edge_list_edges) | |
| createCdn | Yes | true to create a new CDN, false to use an existing one | |
| drmSiteId | No | Multi DRM site ID (required when drmEnabledYn=true; see ncloud_drm_list_sites) | |
| profileId | No | Global Edge profile ID (required; see ncloud_edge_list_profiles) | |
| regionType | No | Global Edge service region (required when createCdn=true in the Public zone) | |
| channelName | Yes | Channel name (3-20 chars: Korean, letters, digits, '_') | |
| drmContentId | No | Multi DRM content ID (3-100 chars: letters, digits, '-', '_'; required when drmEnabledYn=true) | |
| drmEnabledYn | No | Enable Multi DRM (Public zone; required there — defaults to false) | |
| qualitySetId | Yes | Quality set ID (see ncloud_livestation_list_quality_settings; pick a Low Latency set for LL_HLS) | |
| cdnInstanceNo | No | Existing CDN instance number (required when createCdn=false) | |
| outputProtocol | No | Output protocol (default HLS) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description must carry most behavioral load. It usefully discloses the dryRun preview and the mutually exclusive CDN configuration branches, but says nothing about permissions, side effects on related resources, or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences, front-loaded with the action and followed immediately by the CDN configuration rule and the preview option. No filler, though the parenthetical API name is slightly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 14-parameter mutation with no output schema, the description captures the critical decision branches (CDN creation mode, dryRun). It omits return values and permission requirements, but the rich 100%-covered schema fills most gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds genuine cross-parameter semantics not expressible in the flat schema: the createCdn branch determines whether regionType or cdnDomain+cdnInstanceNo are needed, and profileId is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create a Live Station VOD-to-Live channel') and even includes the API operation name (vodchannelcreate). It is clearly distinguishable from sibling ncloud_livestation_create_channel (live channel) and ncloud_vodstation_create_channel.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete conditional guidance: when createCdn=true supply regionType, when false supply cdnDomain + cdnInstanceNo, and dryRun=true to preview. It does not explicitly name sibling alternatives (e.g. create_channel vs create_vod_channel), but the context is clear enough to route correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_delete_channelADestructiveIdempotent
⚠️ Destructive: Permanently terminate a Live Station channel. End broadcast streaming before terminating. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| channelId | Yes | Channel ID to terminate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true and idempotentHint=true. Description adds context about the confirm safety gate and the need to end streaming, which goes beyond annotations. No contradiction found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences that immediately convey destructive nature, precondition, and required parameter. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation, the description covers purpose, prerequisite, and key parameter. Lacks details about post-deletion state or error handling, but these are common knowledge for destructive operations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. The description adds value by explicitly linking confirm to execution ('Set confirm=true to execute'), clarifying a critical behavioral nuance not fully captured in the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (terminate) and resource (Live Station channel), and emphasizes permanence ('Permanently terminate'), distinguishing it from sibling tools like stop or resume.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a clear prerequisite ('End broadcast streaming before terminating') and specifies the required parameter confirm=true to execute. However, it does not explicitly contrast with alternative tools (e.g., stop for temporary halt).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_delete_vod_channelADestructiveIdempotent
⚠️ Destructive: Permanently delete a Live Station VOD-to-Live channel (vodchanneldelete). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| channelId | Yes | VOD-to-Live channel ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is partly covered. The description adds meaningful context beyond that: it emphasizes permanence ('Permanently delete') and discloses the two-step guard requiring confirm=true, which is genuine gate behavior the annotations don't express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the destructive warning, then the operation, then the confirm instruction. Every clause earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive two-parameter tool with full schema coverage and annotations, the description is close to complete: it conveys the deletion, its permanence, and the confirm gate. Minor gaps remain (no stated preconditions like whether the channel must be stopped), but nothing essential for calling it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented by the schema. The description reinforces the confirm=true requirement but adds no syntax or format detail beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Permanently delete a Live Station VOD-to-Live channel') and even includes the underlying API operation name (vodchanneldelete). This clearly distinguishes it from sibling tools like ncloud_livestation_create_vod_channel, update, get, and list, which an agent can tell apart without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage ('Set confirm=true to execute') and the deletion intent is obvious, but it never states when to prefer this over alternatives or any preconditions (e.g., channel must be stopped first). Usage is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_get_channelARead-only
Get detailed information about a specific Live Station channel including streaming URLs and CDN settings
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID (e.g., ls-20250820xxxxxx) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds value by specifying what information is returned (streaming URLs and CDN settings), exceeding the annotation's safety signal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, front-loaded sentence that efficiently conveys the tool's functionality without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with a single parameter and no output schema, the description is fairly complete. It could be slightly improved by explicitly stating that the channelId is the unique identifier, but the schema already covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter with description). The tool description does not add extra meaning beyond the schema for the parameter; thus baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves detailed information about a specific Live Station channel, including streaming URLs and CDN settings. It distinguishes from siblings like ncloud_livestation_list_channels (listing all channels) and mutation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (when details are needed for a specific channel) but provides no explicit guidance on alternatives or when not to use. It does not mention that ncloud_livestation_list_channels can be used to find channel IDs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_get_service_urlARead-only
Get the streaming service URLs (publish/play) for a Live Station channel
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID to get service URLs for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds context about the specific URLs returned (publish/play), but does not disclose other behavioral traits like error handling, rate limits, or authentication requirements. The description adds some value but not substantially beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 12 words with no unnecessary information. It is front-loaded with the action and clearly states the output. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read operation with one parameter and good annotations, the description provides sufficient context about what is returned (publish/play URLs). However, the lack of an output schema means the exact structure is not documented, and the description could hint at the response format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already describes the channelId parameter. The description does not add new meaning beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('streaming service URLs'), clearly stating it retrieves both publish and play URLs for a Live Station channel. It distinguishes from siblings like 'ncloud_livestation_list_channels' (which lists channels) and 'ncloud_livestation_get_channel' (which gets channel details).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. It lacks when-not-to-use instructions and does not reference sibling tools. The usage context is implied but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_get_vod_channelCRead-only
Get details of a Live Station VOD-to-Live channel (vodchannelinfo).
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | VOD-to-Live channel ID (see ncloud_livestation_list_vod_channels) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered by structured data. The description adds nothing beyond that: no indication of what the returned details include, no error/auth notes for a nonexistent channel. It neither contradicts nor enriches the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words. It is efficient, though the parenthetical adds confusion rather than value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-param read tool with annotations covering safety, the description is barely sufficient. With no output schema, it could hint at what the channel details contain, but the core invocation facts are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so channelId and its source tool are already fully documented in the schema. Baseline 3 applies since the description carries no additional parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get details') and resource ('Live Station VOD-to-Live channel'), which distinguishes it from the list/create/update/delete VOD-channel siblings. The parenthetical '(vodchannelinfo)' is opaque API jargon rather than a clarifying detail, keeping it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no mention of prerequisites, and no routing to alternatives. The only orientation for usage (channelId from list_vod_channels) lives in the schema, not the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_get_vod_service_urlARead-only
Get the playback (GENERAL: HLS / MPEG-DASH) or thumbnail (THUMBNAIL) service URLs of a Live Station VOD-to-Live channel (vodserviceurl).
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | VOD-to-Live channel ID | |
| serviceUrlType | Yes | GENERAL for playback URLs, THUMBNAIL for thumbnail image URLs (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read, and the description confirms it returns URLs. It adds no further behavioral context such as whether URLs expire, are signed, or require the channel to be running. Adequate but thin given the low annotation bar.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no waste; the parenthetical mode breakdown is dense but earns its place by disambiguating the enum.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with full schema coverage and no output schema, the description supplies the essentials: what channel type, what modes, and what is returned. Only the URL lifecycle/expiry details are absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and already documents both parameters, but the description goes slightly beyond the schema by specifying playback formats (HLS/MPEG-DASH) that the schema's 'playback URLs' does not name. It also confirms the returned artifact name (vodserviceurl).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (service URLs of a Live Station VOD-to-Live channel), and separates the two modes (playback vs thumbnail). It does not explicitly contrast with the near-named sibling ncloud_livestation_get_service_url, but the 'VOD-to-Live channel' scope is specific enough to identify the target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the enum glosses (GENERAL for playback, THUMBNAIL for images), which tells an agent how to pick a mode. There is no explicit when-to-use statement, no prerequisites, and no routing to sibling tools such as get_service_url.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_list_channelsARead-only
List all Live Station streaming channels with pagination
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSizeNo | No | Number of items per page (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations show readOnlyHint: true, which the description supports. The description adds pagination context but does not disclose other behavioral traits (e.g., rate limits, default order, result format). Given the annotation covers safety, the description adds minimal extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly conveys the core action and pagination feature. No redundant or extraneous information. It is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 optional parameters and no output schema, the description is minimally adequate. It covers the basic functionality but lacks details about the response structure or any limitations (e.g., maximum page size). For a simple list operation, it is sufficient but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter described (pageNo and pageSizeNo with defaults). The description's mention of 'pagination' aligns with these parameters but adds no new semantic information beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all Live Station streaming channels with pagination' clearly states the verb, resource, and scope. It distinguishes this tool from siblings like 'ncloud_livestation_get_channel' (single channel retrieval) and 'ncloud_vodstation_list_channels' (different service).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions pagination but does not explicitly state when to use this tool versus alternatives (e.g., get_channel for a specific channel). Usage context is implied but not clearly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_list_quality_settingsBRead-only
List available image quality settings for Live Station channels
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSizeNo | No | Number of items per page (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description correctly implies a safe read operation. However, it adds no further behavioral traits (e.g., pagination behavior, result format). With annotations covering safety, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no extraneous words. It is efficient but could benefit from slightly more structure or context. Still, it earns a high score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and only two optional parameters, the description is minimally adequate. However, it lacks information about the return format or what the quality settings represent, which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters having descriptions in the schema. The tool description does not add any additional meaning or context to the parameters beyond what the schema already provides. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verb 'List' and clearly identifies the resource 'available image quality settings for Live Station channels'. It distinguishes itself from sibling tools like ncloud_livestation_list_channels and ncloud_livestation_get_channel, as no other tool mentions quality settings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when or why to use this tool versus alternatives. It lacks context such as prerequisites (e.g., need a channel) or suggestions for workflow integration (e.g., use before creating/updating a channel).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_list_vod_channelsARead-only
List Live Station VOD-to-Live channels (vodchannellist) with pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-N) | |
| pageSizeNo | No | Number of items per page (1-100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so safety is covered. The description adds one useful behavioral note — results are paginated — which is genuinely beyond the annotations. It does not disclose ordering, default page size, or total-count behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. It is efficient, though the parenthetical API id is arguably redundant with the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool whose parameters are fully described in the schema and whose annotations declare it non-destructive, this is nearly complete. The only gap is the absence of output-shape hints, though without an output schema that is a minor shortfall.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both pageNo ('Page number (1-N)') and pageSizeNo ('Number of items per page (1-100)') are fully documented in the schema. The description adds nothing beyond restating that pagination exists, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('Live Station VOD-to-Live channels'), with the API operation id '(vodchannellist)' disambiguating the exact endpoint. It does not explicitly distinguish itself from sibling VOD-channel tools (get/create/update/delete/start/stop), though the name pattern makes it largely inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the 'List' verb — an agent can infer it enumerates VOD channels. There is no explicit statement of when to prefer this over ncloud_livestation_get_vod_channel for a single channel, nor any preconditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_resume_channelAIdempotent
Resume a stopped Live Station channel to make it active again for streaming
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID to resume |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false. The description adds that the channel transitions from stopped to active, but does not disclose additional behavioral traits beyond what the annotations cover. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the action. No extraneous information. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description is complete enough. It explains the purpose and context without missing critical information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (channelId) with schema description 'Channel ID to resume'. Schema coverage is 100%, so description adds no extra semantics beyond the schema. Baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action: 'Resume a stopped Live Station channel to make it active again for streaming'. Verb 'Resume', resource 'Live Station channel', and outcome are specific. Distinguishes from sibling tools like stop_channel and list_channels.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage when channel is stopped and needs to be reactivated. Does not explicitly exclude cases (e.g., channel already active) but provides clear context for when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_start_recordAIdempotent
Start manual recording for a Live Station channel that is currently streaming
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID to start recording |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotent and non-destructive. The description adds 'manual recording' and 'currently streaming', disclosing behavioral constraints beyond annotations. It does not mention error handling or what happens if channel is not streaming, but overall provides good context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words. Front-loads the action and resource, then adds the precondition. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, no output schema, and clean annotations, the description covers purpose and precondition. It could mention how to stop recording or what the response is, but is sufficiently complete for this tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter fully described. The description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action: 'Start manual recording' for a 'Live Station channel that is currently streaming'. Verb and resource are specific, and it distinguishes from siblings like stop_record and list_channels.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the precondition 'that is currently streaming', providing clear context for when to use. However, it does not explicitly exclude usage when the channel is not streaming or mention alternatives like how to stop recording.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_start_vod_channelCIdempotent
Turn a Live Station VOD-to-Live channel on (vodchannelon).
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | VOD-to-Live channel ID to turn on |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so safety is covered by structured data. The description adds nothing beyond a restatement of the operation—no auth requirements, no effect on the channel's current state, no note on what happens if already on (even though idempotency implies it).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. The parenthetical codename is slightly redundant but harmless.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with annotations and no output schema, the definition is minimally viable. The main gap is lack of routing against the closely related stop/delete VOD channel siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single channelId parameter is documented in the schema. The description adds no syntax, format, or sourcing detail for channelId, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Turn ... on') and resource ('Live Station VOD-to-Live channel'), so the agent can distinguish it from siblings like stop_vod_channel and delete_vod_channel. However it does not explicitly name those siblings, and the trailing codename '(vodchannelon)' is redundant with the name rather than clarifying.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance. Given the presence of ncloud_livestation_stop_vod_channel and ncloud_livestation_delete_vod_channel, the description could have specified preconditions (e.g., channel must be off) but offers nothing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_stop_channelADestructiveIdempotent
⚠️ Destructive: Stop a Live Station channel. The channel will be suspended and streaming will be interrupted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| channelId | Yes | Channel ID to stop |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds the warning 'Destructive', explains suspension and interruption, and clarifies the confirm parameter as a safety mechanism, all beyond the annotations (destructiveHint, idempotentHint). Could mention idempotency but not required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very concise: two sentences, front-loaded with warning, no fluff. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Sufficient for a destructive action given annotations and schema. No output schema, but return values are standard. Could mention no undo option, but 'Destructive' implies it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions. Description adds value by explaining confirm=true as a required execution gate, which is not obvious from schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (stop), resource (Live Station channel), and effect (suspension, interruption), distinguishing it from sibling tools like resume or record.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides basic guidance (set confirm=true) but does not explicitly state when to use this tool vs alternatives like resume or start_record. No exclusions or context for optimal use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_stop_recordAIdempotent
Stop manual recording for a Live Station channel
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID to stop recording |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description adds no extra behavioral context beyond stating 'Stop manual recording'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded, no wasted words. Efficiently communicates the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple one-parameter tool, but could mention that the channel must have an active manual recording. Lacks state requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description 'Channel ID to stop recording'. The tool description adds no additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Stop') and resource ('manual recording for a Live Station channel'), clearly distinguishing it from sibling tools like start_record, list_channels, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool (e.g., recording must be active) or alternatives. Does not mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_stop_vod_channelADestructiveIdempotent
⚠️ Destructive: Turn a Live Station VOD-to-Live channel off (vodchanneloff); playback is interrupted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| channelId | Yes | VOD-to-Live channel ID to turn off |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the destructive nature is covered. The description adds genuinely new context beyond that: the concrete consequence ('playback is interrupted') and the confirm=true guard requirement, which is exactly the kind of behavioral detail annotations cannot express. It omits reversibility and auth requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the destructive warning and the concrete effect, followed by the execution guard. Every clause earns its place with zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter mutation tool with full annotation and schema coverage and no output schema, the description supplies the essential facts: what changes, the user-visible impact, and the safety gate. Only the reversibility/auth story is left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented, and the description's mention of confirm=true merely echoes the schema. Baseline 3 is appropriate since the schema does the heavy lifting with no added syntax or format detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (turn off), resource (Live Station VOD-to-Live channel), and even the underlying API operation (vodchanneloff). This distinguishes it from the non-VOD ncloud_livestation_stop_channel sibling, though the description stops short of naming that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the word 'off' and the destructive warning, letting an agent infer this is a reversible stop rather than a delete. However, it never states when to prefer this over ncloud_livestation_delete_vod_channel or the plain stop_channel variant, leaving the choice to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_switch_streamC
Switch the active input stream of a Live Station channel to its standby stream (channel-stream-switch).
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID whose stream to switch |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden, and it delivers little beyond the base action. It does not say whether the switch is reversible, whether it interrupts the live broadcast, what happens to the previously active stream, or what permissions or preconditions are required for this mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the action and resource first and the target state immediately after; nothing is redundant. The trailing parenthetical '(channel-stream-switch)' restates the operation name rather than adding information, a minor blemish.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a state-changing operation with no annotations and no output schema, the description is too thin: it omits preconditions, side effects on the currently active stream, reversibility, and what (if anything) is returned. An agent can identify the tool but not safely predict the consequences of invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter exists and the schema documents it at 100% coverage ('Channel ID whose stream to switch'), so the baseline is 3. The description adds no syntax, format, or lookup guidance for channelId beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Switch) and resource (active input stream of a Live Station channel) and clarifies the target state (to its standby stream), so an agent understands this is a failover-style switch. It does not name or differentiate itself from nearby siblings such as ncloud_livestation_start_channel, _stop_channel or _resume_channel, so it lands just below the top band.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no mention of prerequisites (e.g. a standby stream must already be configured) or of alternatives to start/stop the channel. The failover intent can be inferred from 'standby stream', but nothing routes the agent among sibling channel operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_update_channelAIdempotent
Update configuration of a Live Station channel (CDN, quality, recording, DVR settings)
| Name | Required | Description | Default |
|---|---|---|---|
| useDvr | No | Time machine (DVR) setting | |
| channelId | Yes | Channel ID to update | |
| recordType | No | Recording storage type | |
| channelName | No | New channel name (3-20 chars) | |
| drmEnabledYn | No | Whether to enable Multi DRM | |
| qualitySetId | No | New image quality setting ID | |
| recordFormat | No | Recording file format | |
| immediateOnAir | No | Auto-recording on stream start | |
| recordFilePath | No | Recording storage path | |
| timemachineMin | No | Time machine allowance in minutes (360) | |
| isStreamFailOver | No | Whether to enable streaming redundancy | |
| recordBucketName | No | Recording storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true (safe to retry) and destructiveHint=false (not destructive). Description adds that it updates settings but does not disclose behavioral traits like whether updates take effect immediately, if channel must be offline, or the response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with parenthetical list, immediately stating the verb and resource. No redundant words; efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 12 parameters and no output schema, the description is minimal but sufficient for a high-level update tool. It lacks details on partial update behavior, return value, or state requirements, but annotations and schema fill many gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter described. The description only lists high-level categories (CDN, quality, recording, DVR) and does not add meaning beyond the schema descriptions. No elaboration on constraints or relationships between parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates configuration of a Live Station channel, listing specific areas (CDN, quality, recording, DVR settings). This distinguishes it from create, delete, get, and other sibling tools like stop/resume channel.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this vs alternatives (e.g., create_channel, start/stop_record). The description implies it's for modifying existing channel config but lacks context like prerequisite channel state or that channelId must be valid.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_livestation_update_vod_channelBIdempotent
Update a Live Station VOD-to-Live channel's name, environment type or output protocol (vodchannelupdate).
| Name | Required | Description | Default |
|---|---|---|---|
| envType | No | Channel environment type | |
| channelId | Yes | VOD-to-Live channel ID | |
| channelName | Yes | Channel name (3-20 chars: Korean, letters, digits, '_') — required by the API even when unchanged | |
| outputProtocol | No | Output protocol |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so safety profile is covered. The description adds which fields are mutable but omits partial-update semantics (are unspecified fields left unchanged?) and the fact that channelName must be resupplied even when unchanged — a behavior that matters for a live channel update. Modest value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence with no filler; the mutable-field list is compact. The trailing '(vodchannelupdate)' is low-value to an agent but harmless.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation on a live streaming channel, the definition covers what changes but not the operational consequences, required permissions, or what happens to the running stream. Annotations and the complete schema carry part of the load, leaving this adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema documents each parameter, including the required-by-API note for channelName and enums for envType/outputProtocol. The description merely restates the field list, adding no format or constraint detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Update) and resource (Live Station VOD-to-Live channel), and enumerates the mutable fields (name, environment type, output protocol). It is distinguishable from the sibling ncloud_livestation_update_channel only by the 'VOD-to-Live' qualifier, which is present but not explicitly contrasted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of the related siblings (update_channel, create_vod_channel, start/stop_vod_channel) that an agent would need to choose between. The description only says what can be changed, not when this tool is the right call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_create_address_bookA
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Add recipient groups and/or addresses to the address book (POST /address-book). An existing groupName appends to that group. Processing is asynchronous — the response reflects the state before this request; re-read with ncloud_mailer_get_address_book.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without writing | |
| groups | Yes | Groups to create or append to | |
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotation (destructiveHint: false), the description discloses critical behavioral traits: asynchronous processing (response reflects pre-request state), append behavior for existing groups, and the suggestion to re-read. It also flags the legacy/limited availability. No contradiction with annotations; adds significant transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: it leads with legacy context in brackets, then the core action, then append and async notes. It is information-dense but not bloated; each sentence earns its place. Could be slightly tighter, but it is appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description covers purpose, append behavior, async nature, and re-reading. It does not explain error cases or permissions, but for a create/add tool these are not essential. The schema already documents dryRun and region. It is sufficiently complete for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are documented. The description adds value by explaining that an existing groupName appends to that group (not in schema) and that processing is asynchronous. It does not redundantly repeat schema descriptions but adds behavioral nuance relevant to parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation: 'Add recipient groups and/or addresses to the address book (POST /address-book)'. It also distinguishes itself from siblings by noting it is the legacy Cloud Outbound Mailer API and names the new alternatives for mail sending/lookup. The verb 'add' and resource 'address book' are specific, and the append behavior is highlighted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context: it is legacy, available only to migrated projects, and points to ncloud_sens_send_mail / ncloud_sens_list_mail_requests for new mail sending/lookup. It implicitly says not to use this for new projects. It also advises re-reading with ncloud_mailer_get_address_book due to async processing, but does not explicitly compare with other address-book tools like delete. Overall, clear usage context with an exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_create_categoryB
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Create a template category (POST /category).
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| parentSid | No | Parent category SID (default -1 = root) | |
| categoryName | Yes | Category name (1-100 chars of Korean, letters, digits, '.', '_' or '-') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide minimal information (destructiveHint: false) and the description adds no meaningful behavioral disclosure beyond that. It does not describe permission requirements, failure scenarios, side effects, or what happens if a category already has been created. The answer is a mutation, but that is implied rather than the purpose, and deliberate. The tool description focuses on what the API does, not how the agent should expect to handle it could be made.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description includes both a meaningful inlined deprecation and the short phrase 'Create a template category.' The most valuable part of the sentence is the legacy announcement; it carries the creator in a short forms a specific. However, the path is as long as the required. It includes some fragments in square brackets and it could be passed down, though the structure is not present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity—3 parameters, no complex output—plus the accurate annotations, it, the description selected as a good enough for a basic create category. What is missing is a brick. The result: the agent doesn't know what type of response it could be created, but that is not included in the given result as it does not have output schema. The target is somewhat limited and durable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already explains all parameters. The tool description adds nothing about the semantics of the parameters, or the interaction between category, though it candidate the category briefly in the grid-noun form. Baseline 3 is appropriate because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: 'Create a template category (POST /category).' The preceding legacy note helps identify this tool for use in the Cloud Outbound Mailer context, so a distinguishing marker is present. It does not explicitly compare with sibling tools like ncloud_mailer_create_template, but the core purpose is unmistakeable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states that the tool is available only to projects migrated from Cloud Outbound Mailer and only for about 12 months (via SENS overview). It also points out the new mail reachingattribution tools 'ncloud_sens_send_mail / ncloud_sens_list_mail_requests', providing clear directional context for which tool family to consider. It does not fully explicit 'when-not-to-use' but the legacy scope is very effective.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_create_templateA
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Create a mail template (POST /template). The created sid can be used as templateNo in ncloud_sens_send_mail (migrated projects) or templateSid in v1.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Mail body (HTML allowed) | |
| isUse | No | Whether the template is active | |
| title | Yes | Mail subject (1-500 bytes) | |
| dryRun | No | If true, returns a preview without creating | |
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| senderName | No | Sender name (0-69 bytes) | |
| categorySid | No | Parent category SID (default -1 = root) | |
| description | No | Description (0-300 bytes) | |
| templateName | Yes | Template name (1-100 chars of Korean, letters, digits, '.', '_' or '-') | |
| senderAddress | Yes | Sender address (naver.com / navercorp.com / ncloud.com domains are not allowed) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint: false, which doesn't indicate read/write nature. The description clearly states it creates a template (a write operation) and explains that the returned sid can be reused in other tools, giving useful behavioral context. However, it does not disclose potential side effects like idempotency or errors, but the core creation behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the critical legacy warning and alternative pointers, followed by a clear statement of purpose and output usage. It is concise but dense, with no redundant sentences. Could be slightly shorter, but every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with 10 parameters and no output schema, the description covers the key aspects: what it creates, how to use the result, and the migration context. It doesn't describe the full response format or error behavior, but it adequately informs the agent for correct invocation, especially with the dryRun parameter available in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all 10 parameters are already documented in the schema. The description adds no extra parameter-specific guidance, only mentions the output sid's usage in other tools. Since the schema covers everything, the baseline of 3 is appropriate; the description adds minimal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Create') and resource ('mail template') with the API endpoint (POST /template). Clearly distinguishes from sibling tools like ncloud_mailer_update_template, ncloud_mailer_delete_template, and ncloud_mailer_get_template by focusing on creation, and also differentiates from the newer SENS alternatives by explicitly labeling itself as legacy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: the tool is only for projects migrated from Cloud Outbound Mailer and only for a limited time, with a clear pointer to the replacement tools ncloud_sens_send_mail / ncloud_sens_list_mail_requests for new mail sending/lookup. This tells the agent exactly when to use this tool versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_delete_address_bookADestructiveIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] ⚠️ Destructive: Delete the ENTIRE address book — every recipient group and every address — and reset it (DELETE /address-book). This cannot be undone. To remove only some addresses or one group use ncloud_mailer_delete_addresses / ncloud_mailer_delete_recipient_group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include destructiveHint=true, but the description goes beyond that by disclosing that the operation deletes the entire book, resets it, and cannot be undone. It also warns with a ⚠️ symbol and specifies that confirm=true is required to execute. This adds meaningful behavioral context without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and efficiently organized: legacy context first, then destructive warning, then alternative tools, then the execution requirement. Every segment earns its place and provides information an agent needs before invoking a destructive operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive two-parameter tool with no required params and full schema coverage, the description is complete. It explains the legacy status, the destructive scope, irreversibility, alternatives, and the confirmation parameter. No critical calling information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already clearly documents both parameters: region (enum with path segment explanation) and confirm (must be true to execute). The description reinforces 'Set confirm=true to execute' but adds no substantive parameter meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Delete the ENTIRE address book' and explicitly defines the scope as 'every recipient group and every address.' It also distinguishes itself from the sibling tools ncloud_mailer_delete_addresses and ncloud_mailer_delete_recipient_group by stating what it does NOT do.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: legacy Cloud Outbound Mailer only, migrated projects only, and a ~12-month window. It names the newer replacement tools (ncloud_sens_send_mail / ncloud_sens_list_mail_requests) and the partial-deletion alternatives (ncloud_mailer_delete_addresses / ncloud_mailer_delete_recipient_group). It also states the required confirm=true execution step.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_delete_addressesADestructiveIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] ⚠️ Destructive: Remove specific email addresses from every recipient group (DELETE /address-book/address with a JSON body). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| confirm | No | Must be true to actually execute the destructive operation | |
| emailAddresses | Yes | Addresses to remove from all groups |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the annotations by explicitly warning '⚠️ Destructive' and detailing the confirm=true requirement to execute. It also discloses the legacy status, merge date, and deprecation timeline, providing context that the annotations (destructiveHint, idempotentHint) do not fully capture. This is strong behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact given the amount of context it conveys: legacy status, replacement pointers, destructive warning, and the core action. It front-loads the legacy warning before the actual purpose, which is logical, and avoids unnecessary filler. While dense, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive legacy tool with a confirm flag, the description covers the essential operational details: what it does, when to use it, the destructive nature, and the confirmation requirement. It does not describe return values, but there is no output schema, and for a delete operation the agent mainly needs to know the target and the confirm step. The absence of a response description is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all parameters (100% coverage), but the description adds meaningful guidance for the confirm parameter ('Set confirm=true to execute') and reinforces the scope of emailAddresses ('from every recipient group'). This goes beyond simply restating schema descriptions, though the region parameter is left to the schema. The added value for confirm makes it a step above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action: 'Remove specific email addresses from every recipient group' with the HTTP method and resource path. It also distinguishes itself as a legacy tool that is being replaced by SENS APIs, naming the specific alternatives (ncloud_sens_send_mail / ncloud_sens_list_mail_requests), so an agent can tell when this tool is appropriate versus its modern counterparts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use it: 'available only to projects migrated from Cloud Outbound Mailer and only for ~12 months' and points to the replacement tools for new mail sending. It also warns about the destructive nature and the need to set confirm=true, giving clear operational guidance on prerequisites and execution.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_delete_categoryADestructiveIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] ⚠️ Destructive: Delete a template category (DELETE /category/{categorySid}). Only an empty category (no templates, no sub-categories) can be deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| confirm | No | Must be true to actually execute the destructive operation | |
| categorySid | Yes | Category SID to delete (from ncloud_mailer_get_template_structure) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true and idempotentHint=true. The description adds the important behavioral constraints: only empty categories can be deleted, and confirm=true is required to execute. It also repeats the destructive warning. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but each part earns its place: legacy context, destructive warning, the operation, and the confirm flag. It is front-loaded with the migration note, which is important for routing, and remains readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It covers the endpoint, the precondition (empty category), the confirm flag, the legacy status, and the new API alternatives. For a delete operation without an output schema, nothing critical is missing for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters have descriptions. The description adds the empty-category constraint on categorySid and reinforces the confirm=true requirement, which is not fully captured in the schema. This enriches parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Delete a template category (DELETE /category/{categorySid})'. It also adds critical context—legacy API, migration status, and the requirement that the category must be empty—making the purpose unmistakable and distinct from sibling delete operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly states when this tool applies: only to projects migrated from Cloud Outbound Mailer, and for a limited time. It also references the newer SENS alternatives for sending/lookup. However, it does not explicitly name an alternative for category deletion specifically, leaving some inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_delete_recipient_groupADestructiveIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] ⚠️ Destructive: Delete one recipient group (DELETE /address-book/recipient-groups?groupName=…). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| confirm | No | Must be true to actually execute the destructive operation | |
| groupName | Yes | Group name to delete (exact; Korean names are URL-encoded automatically) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true and idempotentHint=true, but the description adds crucial context: the tool is destructive, requires confirm=true to execute, and has a deprecation timeline. It also clarifies availability restrictions (migrated projects only) and points to replacement APIs, providing transparency beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph with legacy context in brackets, followed by the destructive warning and operation. It is front-loaded with the most critical info (legacy status, destructive nature, confirm requirement), though the legacy note is slightly verbose. Overall efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential operational context: the HTTP method and path, the requirement for confirm=true, the legacy status and deprecation window, and alternative newer APIs. With the schema fully documenting parameters and annotations covering safety, nothing critical is missing for an agent to invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (region, confirm, groupName). The description reiterates the confirm requirement but adds no new information beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete one recipient group) and the exact HTTP endpoint, making the resource and operation unambiguous. It distinguishes from sibling delete tools (address book, addresses) by naming the specific resource type, so an agent can select it correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context on when to use this tool: it's legacy, available only to migrated projects, and suggests newer SENS alternatives for mail sending/lookup (ncloud_sens_send_mail / ncloud_sens_list_mail_requests). However, it does not explicitly contrast with other deletion tools within the mailer family, though the resource name alone differentiates it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_delete_templateADestructiveIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] ⚠️ Destructive: Delete a mail template (DELETE /template/{templateSid}). This is a soft delete (isUse=false) that ncloud_mailer_restore_template can undo. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| confirm | No | Must be true to actually execute the destructive operation | |
| templateSid | Yes | Template SID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, and the description adds genuinely new context: it is a soft delete (isUse=false), reversible via ncloud_mailer_restore_template, and requires confirm=true to execute. This reveals behavior an agent could not infer from annotations or schema alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the most decision-relevant information (legacy status and alternatives), then the action, then the destructive caveat. Each clause earns its place—deprecation, availability window, soft-delete semantics, reversibility, and confirmation guard—with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a destructive legacy delete tool: covers what it does, deprecation date, migration constraints, modern alternatives, reversibility, and the confirmation gate. Nothing needed for correct invocation is missing, and no output schema is necessary for a delete operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear per-parameter descriptions, so the baseline 3 applies. The description reinforces 'Set confirm=true to execute', but this adds no substantive meaning beyond the confirm parameter's existing schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb and resource: 'Delete a mail template (DELETE /template/{templateSid})'. It clearly differentiates from sibling tools like ncloud_mailer_restore_template, ncloud_mailer_create_template, and other delete operations (category, address book) by naming the target resource precisely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly marks the tool as legacy, states availability restrictions (migrated projects only, ~12 months until Dec 2027), and redirects new work to ncloud_sens_send_mail / ncloud_sens_list_mail_requests. Also names the undo path via ncloud_mailer_restore_template, giving an agent full decision context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_delete_unsubscribersADestructiveIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] ⚠️ Destructive: Remove addresses from the unsubscribe list so they can receive advertising mail again (DELETE /unsubscribers with a JSON body). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| confirm | No | Must be true to actually execute the destructive operation | |
| blockedReceivers | Yes | Addresses to remove from the unsubscribe list |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint and idempotentHint, but the description adds meaningful behavior beyond that: the operation re-enables advertising mail, maps to DELETE /unsubscribers with a JSON body, and requires confirm=true before execution. This strongly signals the destructive effect and the safety guard.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but not bloated: migration context, deadline, alternative tools, and the safety caveat all earn their place. The action is not front-loaded, but the warning is prominent and the length is justified by the legacy/transition context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a simple 3-parameter schema, no output schema, and annotations covering safety, the description supplies the remaining needed context: availability window, exact effect, HTTP route, and the confirm guard. It could mention sibling unsubscribe-management operations, but it is otherwise complete for selecting and invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters. The description only restates the confirm=true requirement, which adds no meaning beyond the parameter schema; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Remove addresses from the unsubscribe list' via 'DELETE /unsubscribers', and explains the consequence (addresses can receive advertising mail again). This clearly distinguishes it from the inverse sibling ncloud_mailer_register_unsubscribers even though that sibling is not named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear eligibility and timing context: available only to projects migrated from Cloud Outbound Mailer and only for about 12 months. It also points to SENS mail send/lookup alternatives, but it does not explicitly state when not to use this tool or name direct alternatives for unsubscribe management.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_get_address_bookARead-only
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Get the address book summary (GET /address-book): totalAddressCount and per-group sid/groupName/addressCount. There is no API to list the individual addresses of a group.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses deprecation status, migration deadline, the endpoint, and a key limitation ('There is no API to list the individual addresses of a group'). This gives the agent essential behavioral expectations and prevents false assumptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Compact and front-loaded with the most critical legacy constraint before the action. Every clause earns its place, with no filler or redundancies.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with one optional parameter and no output schema, the description supplies the endpoint, return structure, and a significant missing capability. Nothing an agent needs to correctly decide or invoke this tool is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the region parameter already documents its enum values, path-segment semantics, and defaulting behavior. The description adds no further parameter detail beyond referencing the endpoint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource, 'Get the address book summary (GET /address-book),' and names the concrete return fields (totalAddressCount and per-group sid/groupName/addressCount. The legacy/SENS framing distinguishes it from mail-sending siblings, and the limitation about no individual-address listing further sharpens the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly scopes availability: only for projects migrated from Cloud Outbound Mailer and only until ~Dec 2027, naming ncloud_sens_send_mail and ncloud_sens_list_mail_requests as successors. It does not explicitly contrast with sibling address-book create/delete tools, but those operations are clearly distinct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_get_send_block_listARead-only
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Get the send-block history and current block status of one address (GET /send-block?targetAddress=…): registerStatus, expectedDeleteDate, content[] with actionType C(blocked)/D(released), sendResultCode.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page index (0-based) | |
| size | No | Page size (default 10) | |
| sort | No | Sort 'property(,asc|desc)' (default createUtc) | |
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| targetAddress | Yes | Email address to look up |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds the HTTP GET method, the response shape (registerStatus, expectedDeleteDate, content[] with actionType C/D, sendResultCode), and the deprecation/sunset context. Since there is no output schema, this disclosure is especially valuable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and information-rich, with the legacy/alternative context and response details all earning their place. It loses a point because the main action verb is delayed by the long bracketed deprecation note, slightly reducing front-loading.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description supplies the key return fields and action semantics, while the schema handles pagination, sorting, and region parameters. The legacy constraints and replacement tools are also covered, so an agent has what it needs to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters are already documented. The description reinforces targetAddress through the endpoint example but does not add meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific operation: retrieving send-block history and current block status for a single address, with the endpoint and expected response fields. This clearly distinguishes it from the surrounding mailer and SENS tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly marks the tool as legacy, restricts it to migrated projects and a ~12-month availability window, and names ncloud_sens_send_mail / ncloud_sens_list_mail_requests as the new alternatives. This gives an agent clear when-to-use and when-to-avoid guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_get_templateARead-only
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Get one mail template (GET /template/{templateSid}).
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| templateSid | Yes | Template SID (from ncloud_mailer_get_template_structure) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so the description does not need to restate safety. It adds the legacy status, time limit, and the API endpoint. It does not describe response format, errors, or pagination, but for a simple read operation with a schema and annotation, the added context is modest. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence but includes a long legacy note that appears before the core action. The action is not front-loaded; the reader must wade through the legacy context first. It is still concise (~30 words) but could be structured better by stating the action first, then the limitations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple GET tool with 2 parameters (one required), a full schema, and readOnlyHint annotation, the description is largely complete. It provides legacy availability, a deprecation timeline, and points to modern alternatives. It does not describe the return format, but since there is no output schema and the operation is straightforward, the missing detail is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the input schema already documents both parameters (region and templateSid) with descriptions. The description does not add any parameter-specific guidance beyond what the schema provides. Therefore, the baseline of 3 applies; no extra value is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Get one mail template (GET /template/{templateSid})'. The verb and resource are specific, and the HTTP endpoint is provided. It also differentiates from new SENS APIs by noting legacy status and alternatives for sending/lookup. It is unambiguous and distinct from sibling tools like ncloud_mailer_get_template_structure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage constraints: 'available only to projects migrated from Cloud Outbound Mailer and only for ~12 months' and points to new alternatives (ncloud_sens_send_mail / ncloud_sens_list_mail_requests). However, it does not explicitly mention when to use this vs. other template-related siblings (e.g., ncloud_mailer_get_template_structure), but the legacy context and purpose make the usage clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_get_template_structureARead-only
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Get the category/template tree (GET /template). Template nodes have isCategory=false; use their sid as templateSid.
| Name | Required | Description | Default |
|---|---|---|---|
| isUse | No | true = only templates/categories in use | |
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation (which is consistent with GET), the description adds meaningful behavioral details: the response is a tree, template nodes have isCategory=false, and how to use the sid. This goes beyond the annotation and helps the agent interpret the returned data correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured: it front-loads the critical legacy/deprecation warning, then gives the operation. It's informative without excessive fluff, though the legacy note is lengthy. The key operational detail (isCategory=false) is included. Overall it's concise and effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Since there is no output schema, the description should explain the return structure more fully. It mentions the tree and the isCategory flag, but does not describe category nodes, pagination, sorting, or other fields. For a tree-returning GET, an agent needs more to fully understand the response. The description provides essential but incomplete context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both isUse and region are fully described in the input schema. The description does not add any parameter-specific meaning beyond what's already in the schema. Baseline of 3 is appropriate when schema carries the load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Get the category/template tree (GET /template)' with a specific verb and resource, and clarifies that template nodes have isCategory=false and to use sid as templateSid. This is a clear, unambiguous purpose that differentiates the tool from mail sending/lookup operations and other siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides strong usage context: it's a legacy API only for migrated projects, with a ~12-month availability window. It also points to new tools (ncloud_sens_send_mail / ncloud_sens_list_mail_requests) for mail sending/lookup. However, it doesn't explicitly state when to use this tool over an alternative for the same template-structure purpose, though that may not exist. The context is clear enough to guide usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_register_unsubscribersA
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Register addresses as unsubscribed so they are excluded from advertising mail (POST /unsubscribers). Returns count / requestCount / ignoreCount. There is no list API for unsubscribers in v1.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| blockedReceivers | Yes | Addresses to register as unsubscribed |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint:false. The description adds meaningful context beyond this: it notes the legacy status, the effect of registering addresses, and the returned fields (count / requestCount / ignoreCount). It also mentions the HTTP method (POST) and endpoint. This is useful behavioral disclosure that goes beyond the sparse annotations, though it doesn't cover auth or rate limiting, which are not expected here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but efficient. It leads with the legacy caveat, then the purpose, return fields, and a note on missing list API. Each sentence provides necessary information for correct tool selection and invocation. While it is longer than minimal, there is no redundancy, and the structure front-loads critical context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only two parameters (both fully documented in the schema), no output schema, and minimal annotations, the description provides adequate context: it explains the legacy status, the modern alternatives, the operation's effect, and the absence of a list endpoint. The returned fields are mentioned, giving the agent a clear expectation of the response. No critical information appears missing for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters (region enum, blockedReceivers with format email and minItems). The description does not add extra explanation about these parameters beyond the schema definitions. Since the schema fully documents them, a baseline of 3 is appropriate—the description adds no additional value for parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Register addresses as unsubscribed so they are excluded from advertising mail.' It also distinguishes this from sibling tools by noting it's a legacy API and pointing to alternatives (ncloud_sens_send_mail / ncloud_sens_list_mail_requests). The verb-resource pairing is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states this is a legacy API only for migrated projects and provides the modern replacements for new mail operations. It also clarifies that there is no list API for unsubscribers in v1, preventing the agent from searching for a non-existent operation. This gives clear when-to-use and when-not-to-use guidance with named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_restore_templateAIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Restore a soft-deleted mail template (PUT /template/{templateSid}/restoration).
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| templateSid | Yes | Template SID to restore |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, which align with the restore operation, so there is no contradiction. The description adds genuine behavioral context beyond annotations: the API's legacy status, the migration-only restriction, and the hard availability window through Dec 2027, which an agent needs to know before relying on this tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence delivers the deprecation context, the SENS alternatives, and the exact operation with its HTTP endpoint, with no filler. The long bracketed preamble does push the core verb ('Restore') to the end, a minor structural cost, but every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, idempotent, non-destructive restore call, the description covers the essential invocation context: endpoint, legacy scope, availability window, and parameter mapping via the fully documented schema. The only real gap is the absence of any hint about the response/return value, which no output schema exists to provide either.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are already fully documented — templateSid's purpose and region's enum values plus its defaulting behavior. The tool description adds nothing about parameters beyond what the schema states, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the specific operation, 'Restore a soft-deleted mail template', and pins it to the exact endpoint PUT /template/{templateSid}/restoration. The verb+resource combination clearly differentiates it from sibling mailer operations like ncloud_mailer_delete_template, ncloud_mailer_get_template, and ncloud_mailer_create_template.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Annotations declare idempotentHint=true and destructiveHint=false, which a restore operation honors, so there is no contradiction. The description adds real context beyond annotations: the API's legacy status, the merge date, the migration-only restriction, and the hard availability window — all useful for an agent deciding whether invocation will even succeed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_mailer_update_templateAIdempotent
[Legacy Cloud Outbound Mailer API — merged into SENS on 2026-09-17; available only to projects migrated from Cloud Outbound Mailer and only for ~12 months (SENS overview: until Dec 2027). New mail sending/lookup: ncloud_sens_send_mail / ncloud_sens_list_mail_requests.] Replace a mail template (PUT /template/{templateSid}). This is a full replacement — templateName, title, body and senderAddress must all be sent again; the category cannot be changed here.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Mail body (HTML allowed) | |
| isUse | No | Whether the template is active | |
| title | Yes | Mail subject (1-500 bytes) | |
| region | No | Region path segment (KR=/api/v1, SGN=/api/v1-sgn, JPN=/api/v1-jpn). Defaults to the server region (NCLOUD_REGION) when it is one of these, otherwise KR | |
| senderName | No | Sender name (0-69 bytes) | |
| description | No | Description (0-300 bytes) | |
| templateSid | Yes | Template SID | |
| templateName | Yes | Template name (1-100 chars of Korean, letters, digits, '.', '_' or '-') | |
| senderAddress | Yes | Sender address (naver.com / navercorp.com / ncloud.com domains are not allowed) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, but the description adds meaningful behavioral context beyond the structured metadata: it is a full replacement, meaning all key fields (templateName, title, body, senderAddress) must be sent again. It warns against the category being unchanged, which is a key limitation an agent must know before calling. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly informative but arguably a bit of the legacy context is front-loaded; the essential operation ('Replace a mail template') appears only in the second sentence. Still, the wording is packed with essential legacy context, and there is no filler. It could be slightly reordered to front-load the action, but overall it earns a solid 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (9 parameters, no nested objects, no output schema), the description covers all key aspects: idea, the legacy caveat, the full replacement semantics, and a schema that is fully self-described. It makes the agent aware of the main call identity and constraints, which is adequate for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every parameter. The description adds value by flagging that all the listed parameters must be resent in the value, and notes that 'category' cannot be changed, which is a form of semantic constraint not obvious from the schema. This exceeds the baseline of 3 by conveying usage prerequisites.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Replace a mail template (PUT /template/{templateSid})' and clarifies it is a full replacement rather than a partial update. It clearly identifies what the tool does and distinguishes from siblings like 'update_mailer_template' or similar, and its legacy status is explicitly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool: only for projects migrated from Cloud Outbound Mailer, and only for a limited time. It also points to the new SENS alternatives (ncloud_sens_send_mail and ncloud_sens_list_mail_requests) for mail sending/lookup. However, it doesn't explicitly mention any alternative for template replacement that might pull in that area usage, but it gives a clear eligibility and deprecation context which is sufficiently useful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_create_registryA
Create a new container registry. 'storageType' selects the storage backend: 'objectStorage' (default) reuses an existing Object Storage bucket (then 'bucket' is required); 'ncloudStorage' auto-provisions dedicated NCR storage (then 'bucket' is ignored). Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | No | Object Storage bucket name. Required when storageType='objectStorage' (the default); ignored when storageType='ncloudStorage'. Cannot be reused across registries. | |
| dryRun | No | If true, returns a preview without actually creating the registry | |
| storageType | No | Storage backend. 'objectStorage' (default) reuses an existing Object Storage bucket — 'bucket' is then required. 'ncloudStorage' auto-provisions dedicated NCR storage (bucket 'registry-{privateId}') — 'bucket' is ignored. | |
| registryName | Yes | Name for the new registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only indicate destructiveHint=false. The description adds the dryRun preview capability and storage backend behavior, but does not cover permissions, idempotency, or error scenarios. It provides moderate additional context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each serving a distinct purpose: declarative purpose, storageType explanation, and dryRun usage. No wasted words, front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description does not mention return values or error conditions. Given no output schema, indicating what the response contains would be helpful. However, key usage details are covered, so it is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description summarizes storageType and bucket interplay (e.g., 'auto-provisions dedicated NCR storage' and 'bucket is ignored'), adding value beyond the schema's explanations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Create a new container registry', clearly stating the verb and resource. It also details the storageType options and dryRun feature, which helps differentiate from sibling NCR tools like ncloud_ncr_list_registries or ncloud_ncr_delete_registry.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use dryRun=true for preview and how storageType affects the 'bucket' parameter. However, it does not explicitly state when not to use this tool or list alternatives for other actions (e.g., listing registries).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_delete_imageADestructiveIdempotent
⚠️ Destructive: Permanently delete a container image from a registry (DELETE /repositories/{registry}/{imageName}). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| imageName | Yes | Name of the image to delete (URI-encoded automatically) | |
| registryName | Yes | Name of the registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered. The description adds useful context beyond the annotations: the deletion is permanent, the resource is a container image in a registry, and confirm=true is required to execute. It does not mention auth or rate-limit behavior, but it adds meaningful destructive-operation context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The warning is front-loaded, the action is stated immediately, and the endpoint plus confirm requirement are included without wasted words. It is appropriately sized for a destructive single-resource delete tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does not need to explain return values, and the input schema plus annotations cover parameters and safety. The description supplies the destructive warning, permanence, endpoint, and confirm gate, though it could include alternative-tool guidance for a fully complete selection context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so registryName, imageName, and confirm are already documented in the schema. The description adds the DELETE path template showing registryName and imageName placement, but otherwise mainly repeats the confirm=true requirement, matching the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: deleting a container image from a registry, with the exact HTTP endpoint shape. It distinguishes the tool from sibling operations such as delete_registry and delete_tag by naming the image as the deleted resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the destructive delete action and gives the confirm=true execution prerequisite. However, it does not explicitly say when to choose this over ncloud_ncr_delete_tag, ncloud_ncr_delete_registry, or list/get tools, nor does it state exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_delete_registryADestructiveIdempotent
⚠️ Destructive: Permanently delete a container registry (DELETE /repositories/{registry}, 204 on success). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| registryName | Yes | Name of the registry to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, and the description adds permanence, a required confirm gate, and the 204 success code. It stops short of describing permissions or downstream effects on contained images, but adds meaningful context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste. The warning, action, endpoint, success code, and required parameter are all stated efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter destructive tool with no output schema and annotations covering safety traits, the description supplies enough to invoke correctly: destructive warning, endpoint, success behavior, and the confirm requirement. Missing alternative guidance is minor and captured under usage guidelines.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters fully. The description repeats the confirm=true requirement but adds no syntax, format, or other meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (delete), resource (container registry), endpoint, and success code. Distinguishes from sibling delete_image/delete_tag tools by naming the registry as the object being deleted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an execution prerequisite (confirm=true) and a destructive warning, but does not compare against alternatives such as deleting images/tags or using other registry-management tools. Usage is implied by the destructive delete nature, but explicit when-to-use guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_delete_tagADestructiveIdempotent
⚠️ Destructive: Permanently delete a tag from a container image (DELETE .../tags/{reference}). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | Tag name to delete | |
| confirm | No | Must be true to actually execute the destructive operation | |
| imageName | Yes | Name of the image (URI-encoded automatically) | |
| registryName | Yes | Name of the registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, but the description adds real context beyond them: deletion is permanent (irreversible), tags are scoped to a specific image, and execution is gated behind confirm=true. That confirm gate is a genuine behavioral fact not carried by the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, warning emoji front-loaded, endpoint in parentheses, and the confirmation gate last. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive one-shot mutation with no output schema and annotations already covering the safety profile, the description supplies the missing pieces: permanence, target scoping, and the confirm gate. Only minor gaps remain (no mention of what identity/permissions are needed).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are documented in the schema, including confirm's 'must be true to actually execute'. The description repeats the confirm requirement but adds no syntax or format detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (delete) and resource (tag on a container image) and even notes the underlying route (DELETE .../tags/{reference}). An agent can tell it apart from ncloud_ncr_delete_image and ncloud_ncr_delete_registry without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage through 'Permanently delete a tag', but names no when-to-use condition or alternative (e.g. delete_image vs delete_tag) and gives no prerequisites such as required permissions. Guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_get_imageBRead-only
Get detailed information about a specific container image (GET /repositories/{registry}/{imageName})
| Name | Required | Description | Default |
|---|---|---|---|
| imageName | Yes | Name of the image to query (e.g. 'hello/world' — URI-encoded automatically) | |
| registryName | Yes | Name of the registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered, and the description confirms the read nature by embedding 'GET /repositories/{registry}/{imageName}'. However, it adds nothing about authentication, scoping, or error behavior beyond the endpoint path, so the added value is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core purpose first and the REST endpoint as supporting detail. No filler, though the parenthetical path is slightly redundant given the parameter names.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with full schema coverage and annotations, the description is minimally sufficient. It leaves the return payload undocumented and provides no guidance on when this detail view is preferable to the sibling list/tag tools, so gaps remain but are not severe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (registryName, imageName) are documented in the schema, including the URI-encoding note for imageName. The description contributes no additional parameter meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get detailed information') and resource ('a specific container image'), so the operation is unambiguous. It does not distinguish itself from close siblings like ncloud_ncr_get_tag_detail or ncloud_ncr_list_images, which a single clause could have done.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of prerequisites (e.g. needing an existing registry/image), and no routing to alternatives such as list_images for enumeration or get_tag_detail for tag-level data. Usage is only implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_get_registryARead-only
Get detailed information about a specific container registry (GET /{registry}/info — not listed in the official guide; kept pending live verification)
| Name | Required | Description | Default |
|---|---|---|---|
| registryName | Yes | Name of the registry to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds genuine behavioral context the structured fields cannot: the underlying endpoint is absent from the official guide and the tool is 'kept pending live verification', warning the agent that results may be unreliable. It does not mention auth or rate limits, but the verification caveat is a meaningful, non-redundant disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with a front-loaded purpose and a compact parenthetical caveat; nothing is wasted. The parenthetical is slightly awkward but carries real information rather than filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only single-parameter getter with no output schema, the description is nearly sufficient: it covers purpose plus the important reliability caveat. It would be stronger with a note on what 'detailed information' contains or how it differs from list_registries, but nothing critical is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter (registryName) is fully documented in the schema, so the baseline is 3. The description adds no format, naming, or validation hints beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get detailed information) and resource (a specific container registry), making it clearly distinct from the list/create/delete siblings. Lacks any explicit contrast with ncloud_ncr_list_registries, but the singular-vs-plural and 'detailed' wording makes the intent inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use statement and no named alternative. The agent must infer that this is the detail view for a single registry versus ncloud_ncr_list_registries, and nothing tells it about prerequisites or likely failure modes beyond the parenthetical caveat.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_get_tag_detailBRead-only
Get detailed information about a specific tag of a container image (GET .../tags/{reference})
| Name | Required | Description | Default |
|---|---|---|---|
| tagName | Yes | Tag name to query | |
| imageName | Yes | Name of the image (URI-encoded automatically) | |
| registryName | Yes | Name of the registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, and the description is consistent with that. It adds the endpoint shape but does not describe what detail is returned, pagination, or auth requirements; with annotations covering safety, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence that front-loads the action and resource, with the endpoint as a parenthetical. No filler, though it is quite terse for the amount left unsaid about usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with no output schema and full parameter documentation, the description is minimally sufficient. It omits usage guidance and any hint of the returned detail, which leaves the agent slightly under-informed but able to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters (registryName, imageName, tagName) are documented at 100% schema coverage, so the schema carries the semantics. The description adds no extra format or constraint detail beyond what is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and a precise resource (detailed information about a specific tag of a container image), and even includes the underlying endpoint. It is clearly distinguishable from ncloud_ncr_list_tags and ncloud_ncr_get_image, though it doesn't explicitly call out those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus list_tags or get_image, nor any stated prerequisite such as needing the registry/image/tag to already exist. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_list_imagesBRead-only
List all container images in a specified registry (GET /repositories/{registry})
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (sent as 'page', > 0) | |
| pageSize | No | Page size (sent as 'pagesize', > 0) | |
| registryName | Yes | Name of the registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds only the raw endpoint (GET /repositories/{registry}); it says nothing about pagination behavior despite pageNo/pageSize params, nor any rate limits or return shape. Value added beyond annotations is minimal, so a baseline 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. It is well-sized, though including an endpoint in parentheses is borderline redundant rather than earning clear value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with full schema coverage and a readOnly annotation, the essentials are present, but the absence of any pagination or return-format note (no output schema exists) leaves a small gap for an agent aggregating results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents registryName, pageNo, and pageSize. The description adds no extra parameter meaning (e.g., default page size or ordering), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('container images') scoped to 'a specified registry', which cleanly separates it from singular siblings like ncloud_ncr_get_image and from ncloud_ncr_list_registries. It does not explicitly name an alternative, so it falls just short of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no alternatives named. An agent must infer from the name alone whether to reach for this versus list_tags, get_image, or get_registry; nothing in the text routes it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_list_registriesARead-only
List all container registries in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (sent as 'page', > 0) | |
| pageSize | No | Page size (sent as 'pagesize', > 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already establishes this is a safe read operation, so the description doesn't need to restate safety. It adds the useful scope detail that results are limited to the current region, but discloses nothing about pagination or result shape, so it's adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single clear sentence with the resource and scope front-loaded and zero filler. Nothing extraneous to trim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with annotations covering the safety profile, fully documented params, and no output schema to explain, the description is nearly complete. The only minor gap is any note on pagination behavior implied by the pageNo/pageSize params.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so pageNo and pageSize are already documented in the schema (including the 'page'/'pagesize' send names and >0 constraints). The description adds no parameter detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (list) and resource (container registries) with an explicit scope (current region), which distinguishes it from ncloud_ncr_get_registry and the create/delete siblings. The distinction is clear from the standard list-vs-get verb pattern rather than an explicit callout, so it falls just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the verb 'list' and the phrase 'in the current region', which tells the agent the results are region-scoped. However, there is no explicit when-to-use guidance, no mention of the get/delete/create alternatives, and no note on whether the current region is set elsewhere (e.g., ncloud_set_region).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_list_tagsARead-only
List all tags for a specific container image in a registry (GET /repositories/{registry}/{imageName}/tags)
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (sent as 'page', > 0) | |
| pageSize | No | Page size (sent as 'pagesize', > 0) | |
| imageName | Yes | Name of the image (URI-encoded automatically) | |
| registryName | Yes | Name of the registry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this is a safe non-mutating read, so the description does not need to re-declare safety. It adds the underlying GET endpoint, which lightly reinforces read-only behavior, but says nothing about pagination behavior or result shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence that front-loads the action and resource and appends the endpoint parenthetically. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple paginated list tool with full schema coverage and readOnly annotations, the definition covers what an agent needs. Return format and pagination semantics are unstated, but with no output schema this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents registryName, imageName, pageNo, and pageSize. The description references 'specific container image' but adds no syntax or format detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (tags) scoped to a specific container image in a registry, which is precise. It does not explicitly distinguish itself from the sibling ncloud_ncr_get_tag_detail, so an agent must infer the difference from names alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The scoping phrase 'for a specific container image' implies when the tool applies, but there is no explicit when-to-use guidance or mention of alternatives like ncloud_ncr_get_tag_detail or ncloud_ncr_delete_tag. Usage is only loosely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncr_update_imageAIdempotent
Update the description of a container image in a registry (PATCH /repositories/{registry}/{imageName}). Provide description (short, ≤100 chars) and/or full_description (Markdown).
| Name | Required | Description | Default |
|---|---|---|---|
| imageName | Yes | Name of the image to update (URI-encoded automatically) | |
| description | No | Short description (max 100 characters) | |
| registryName | Yes | Name of the registry | |
| full_description | No | Detailed description (Markdown supported) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered structurally. The description adds the endpoint shape (PATCH) and the fact that only description fields are touched, plus Markdown support for full_description. It does not clarify overwrite semantics (e.g. whether omitting a field clears it) or return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences with the core action front-loaded and the parameter hint second. No filler, though the parenthetical endpoint notation is redundant for an agent that already sees the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a small 4-parameter mutation tool with no output schema and full schema coverage, the description gives enough to invoke it correctly: what it changes, which fields, and their constraints. Only edge-case semantics (clearing fields, response shape) are missing, which is acceptable here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented in the schema. The description restates the ≤100-character limit that the schema already encodes (maxLength 100) and mentions Markdown, which adds essentially no meaning beyond the structured data. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Update the description of a container image in a registry') and even names the HTTP endpoint, so it is unambiguous what the tool does. It does not explicitly contrast with the nearby siblings (get_image, delete_image, list_images), so it stops just short of the top mark.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'Provide description ... and/or full_description' implies that at least one of the two optional fields should be supplied, which is useful usage guidance. However, there is no statement of when to prefer this tool over siblings or any preconditions (e.g. permissions, registry must exist).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_abort_multipart_uploadADestructive
[Ncloud Storage] ⚠️ Destructive: Abort a multipart upload (DELETE /{key}?uploadId) and discard every uploaded part. The uploadId cannot be reused afterwards. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) of the multipart upload target | |
| confirm | No | Must be true to actually execute the destructive operation | |
| uploadId | Yes | Upload ID returned by ncloud_ncs_create_multipart_upload | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly warns '⚠️ Destructive' and states that all uploaded parts are discarded and the uploadId cannot be reused. It also explains the confirm=true requirement, which is critical behavioral context. The annotation destructiveHint=true is consistent with the description, and the description adds meaningful detail about the irreversibility and the confirmation mechanism.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the destructive warning and the core action. Every sentence adds value: the HTTP endpoint, the consequence, the non-reusability, and the confirmation requirement. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with no output schema, the description covers the essential context: what it does, what is lost, and how to execute it safely. It could mention prerequisites like needing an in-progress multipart upload, but the uploadId parameter and the reference to ncloud_ncs_create_multipart_upload imply that. The destructive annotation and confirm flag together make the safety profile clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters. The description adds context for the confirm parameter ('Must be true to actually execute the destructive operation') and clarifies that uploadId comes from ncloud_ncs_create_multipart_upload, which adds value beyond the schema. However, most parameter meaning is already in the schema, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Abort'), a specific resource ('multipart upload'), and the exact effect ('discard every uploaded part'). It also includes the HTTP DELETE endpoint, which disambiguates it from sibling tools like ncloud_ncs_complete_multipart_upload or ncloud_ncs_list_multipart_uploads.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is for aborting a multipart upload and that the uploadId cannot be reused afterwards, which implies it should be used when the upload should be discarded rather than completed. It does not explicitly name alternatives like ncloud_ncs_complete_multipart_upload, but the context is clear enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_complete_multipart_uploadA
[Ncloud Storage] Assemble uploaded parts into the final object (POST /{key}?uploadId). Pass every part's partNumber and the ETag returned when it was uploaded; parts are sent in ascending part-number order as the API requires.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) of the multipart upload target | |
| parts | Yes | Parts to assemble | |
| uploadId | Yes | Upload ID returned by ncloud_ncs_create_multipart_upload | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the behavioral burden. It discloses that parts are assembled into a final object and that the API requires ascending part-number order, which is useful. It does not explicitly state that this is irreversible or finalizes the object, but the term 'final object' implies completion. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the purpose, then a concise instruction on the critical ordering requirement. Every word earns its place; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is part of a multipart upload flow and has no output schema, the description covers the essential information: what it does, what parameters are needed, and the ordering constraint. It could mention prerequisites (like having an active uploadId) but these are implicit in the schema and sibling tools. Adequate for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all four parameters. The description adds value beyond the schema by clarifying that ETags come from upload_part/upload_part_copy and that parts must be ordered ascending by partNumber. This is meaningful context not present in the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Assemble uploaded parts into the final object') with a specific resource (multipart upload) and even cites the HTTP endpoint. It is distinct from sibling multipart operations like upload_part or abort_multipart_upload, so an agent can immediately understand this is the completion step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete invocation guidance: pass every part's partNumber and ETag, and notes the ascending order requirement. It implies this is used after parts are uploaded, but does not explicitly contrast with alternatives like abort_multipart_upload or list_parts. Clear instructions but no explicit when-not conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_copy_objectA
[Ncloud Storage] Copy an object within Ncloud Storage (PUT /{key} with x-amz-copy-source). Optionally change the storage class (STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class) — copying an object onto itself with a new class is how an existing object's class is changed. Source objects up to 5 GB; larger ones need ncloud_ncs_upload_part_copy. A DEEP_ARCHIVE source must be restored first.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Destination object key (path) | |
| bucketName | Yes | Destination bucket name | |
| copySource | Yes | Source object as {sourceBucket}/{sourceKey} (a leading slash is tolerated) | |
| contentType | No | Content-Type for the copy (applied with metadataDirective=REPLACE) | |
| storageClass | No | x-amz-storage-class for the copy — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Omit to use STANDARD | |
| objectLockMode | No | x-amz-object-lock-mode for the copy | |
| metadataDirective | No | COPY (default) keeps the source metadata; REPLACE uses the headers given in this request (contentType) | |
| copySourceVersionId | No | Version ID of the source object to copy (versioning-enabled buckets) | |
| objectLockLegalHold | No | x-amz-object-lock-legal-hold for the copy — ON | OFF | |
| serverSideEncryption | No | x-amz-server-side-encryption for the copy — AES256 | aws:kms | |
| objectLockRetainUntilDate | No | x-amz-object-lock-retain-until-date for the copy, ISO 8601 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full behavioral burden. It discloses the 5 GB limit, the self-copy technique for class changes, and the DEEP_ARCHIVE restore requirement. It does not mention error cases or the synchronous nature, but covers the most critical behavioral constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured paragraph of about 4 sentences. It front-loads the main purpose, then covers optional behavior, constraints, and alternatives without redundancy. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter tool with no output schema, the description covers the essential operational context: size limits, class change, restoration, and the alternative for large objects. It does not describe return values or error handling, but given the schema's thorough parameter documentation, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining storageClass enum values, the meaning of metadataDirective (COPY vs REPLACE), and the copySource format. It also clarifies that contentType applies with metadataDirective=REPLACE, going beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Copy an object' and the resource 'within Ncloud Storage', and specifies the underlying HTTP method (PUT /{key} with x-amz-copy-source). It distinguishes this tool from siblings like ncloud_copy_object by naming the Ncloud Storage scope and the specific operation details, making it unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides usage context: explains the storage class change via self-copy, sets a 5 GB size limit and routes larger objects to ncloud_ncs_upload_part_copy, and notes the DEEP_ARCHIVE restore prerequisite. This tells an agent when to use this tool versus the alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_create_bucketB
[Ncloud Storage] Create a Ncloud Storage bucket (PUT / on {bucket}.kr.ncloudstorage.com). Bucket names: 3–63 chars, lowercase letters/digits/hyphens, start and end alphanumeric, no dots. Optionally enable Object Lock at creation (this also turns on versioning). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true (default), returns a preview without actually creating the bucket | |
| bucketName | Yes | Name of the bucket to create | |
| objectLockEnabled | No | Send x-amz-bucket-object-lock-enabled: true — enables Object Lock (WORM) and versioning on the new bucket. Cannot be enabled later on an existing bucket through this header |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations carry only destructiveHint=false, so the description carries most of the behavioral burden. It does add genuine value by disclosing a non-obvious side effect — enabling Object Lock 'also turns on versioning' — and by pointing to the dry-run preview path. It does not disclose failure behavior (e.g., bucket name already taken), permission/authentication requirements, or what a successful call returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with the core purpose front-loaded; each sentence has a job: purpose/endpoint, naming constraints, the Object Lock side effect, and the preview suggestion. Minor redundancy — the '[Ncloud Storage]' prefix plus 'Ncloud Storage bucket' is slightly repetitive, and the naming sentence partly duplicates schema/pattern info — but overall it is tight and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple 3-param tool with full schema coverage and no nested objects: the description covers purpose, naming rules, the Object Lock/versioning side effect, and the preview safety valve. It is incomplete on outcome shape (there is no output schema, and the description says nothing about the response) and on failure semantics (existing bucket, invalid name) — both relevant for a creating tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds readable naming rules (3–63 chars, no dots) that translate the regex pattern into prose, which has marginal value, but it largely re-expresses what the schema already encodes (pattern, dryRun default/behavior, objectLockEnabled header). It adds no meaning beyond the schema for any parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: 'Create a Ncloud Storage bucket' and pins it to an exact endpoint, 'PUT / on {bucket}.kr.ncloudstorage.com' — clearly identifying the S3-compatible NCS API. This distinguishes it from list/head/delete siblings such as ncloud_ncs_list_buckets and ncloud_ncs_delete_bucket, and the NCS framing signals it apart from the classic ncloud_create_bucket sibling. However, it never explicitly names or contrasts that sibling, so differentiation is implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage guidance is implied rather than explicit: 'Use dryRun=true to preview' hints that the agent should preview before committing a real creation. But there is no when-to-use vs alternatives — notably, when to choose this over the sibling ncloud_create_bucket — and no exclusions, prerequisites, or permission context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_create_multipart_uploadA
[Ncloud Storage] Start a multipart upload (POST /{key}?uploads) and get the uploadId used by ncloud_ncs_upload_part / upload_part_copy / complete_multipart_upload / abort_multipart_upload. Optional storage class, SSE and Object Lock headers apply to the final object.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) the assembled object will have | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| contentType | No | Content-Type of the final object | |
| storageClass | No | x-amz-storage-class — STANDARD (default) | ONEZONE_IA | DEEP_ARCHIVE | |
| objectLockMode | No | x-amz-object-lock-mode (bucket must have Object Lock enabled) | |
| objectLockLegalHold | No | x-amz-object-lock-legal-hold — ON | OFF | |
| serverSideEncryption | No | x-amz-server-side-encryption — AES256 (SSE-S3) | aws:kms (Ncloud-managed KMS key) | |
| objectLockRetainUntilDate | No | x-amz-object-lock-retain-until-date, ISO 8601 (e.g. 2027-01-01T00:00:00Z) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry destructiveHint=false, so the description must disclose side effects; it does state that optional storage class/SSE/Object Lock headers 'apply to the final object' and that the operation yields an uploadId. However, it omits that an initiated upload remains as an in-progress entry that must be completed or aborted, which is relevant cleanup behavior for an agent managing uploads.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly packed sentences; the first front-loads the action, endpoint, and output, and the second covers optional header behavior. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a multipart initiation with no output schema, the description covers the workflow position, the key returned value, and the optional header semantics. It falls slightly short of full completeness by not addressing abandoned-upload cleanup or when multipart is appropriate vs a single put_object.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline 3 applies. The description adds a small clarification that the optional storage class/SSE/Object Lock headers affect the final object, but it does not go beyond the schema's existing per-parameter documentation for the required parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Begins with a specific verb-resource pair ('Start a multipart upload'), names the exact REST endpoint (POST /{key}?uploads), and states the key output (uploadId). It also names the sibling tools that consume this uploadId, clearly differentiating it from ncloud_ncs_complete_multipart_upload and ncloud_ncs_upload_part.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description positions this as the entry point of the multipart workflow by saying the returned uploadId is 'used by' the upload/copy/complete/abort siblings. This gives clear context for when to call it, although it does not explicitly state when to prefer it over ncloud_ncs_put_object or mention size thresholds.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_delete_bucketADestructiveIdempotent
[Ncloud Storage] ⚠️ Destructive: Permanently delete a Ncloud Storage bucket (DELETE /). The bucket must be empty (all object versions and delete markers removed, no in-progress multipart uploads). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true and idempotentHint=true, and the description adds important context on top: the operation is permanent, execution is gated behind confirm=true, and the bucket must be empty or the delete will not succeed. This goes beyond what annotations alone convey, though it does not cover failure responses or auth requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, leading with the destructive warning, then the operation, precondition, and safety gate. Every clause earns its place, with only a minor redundancy in that 'Ncloud Storage' appears twice.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter delete operation with annotations, the description covers the operation, the emptiness precondition, and the confirm safety mechanism. There is no output schema, so return values are unmentioned, which is a minor gap for a straightforward delete call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents bucketName and confirm. The description's 'Set confirm=true to execute' largely restates the schema's confirm field description, adding no new parameter-level semantics. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Permanently delete a Ncloud Storage bucket (DELETE /)'. The operation is unambiguous and clearly distinguishable from sibling object-level tools like ncloud_ncs_delete_object and ncloud_ncs_delete_objects. The destructive warning and HTTP method reinforce what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives the key precondition: the bucket must be empty of all object versions, delete markers, and in-progress multipart uploads, and that confirm=true is required to execute. However, it does not name alternatives or exclusions, such as when to prefer this over the generic ncloud_delete_bucket sibling or how to verify emptiness with ncloud_ncs_list_buckets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_delete_bucket_corsADestructiveIdempotent
[Ncloud Storage] ⚠️ Destructive: Delete the CORS configuration of a Ncloud Storage bucket (DELETE /?cors), removing all cross-origin access rules. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket to delete CORS configuration from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true, but the description adds meaningful behavior: it warns 'Destructive', states that all cross-origin access rules will be removed, and explicitly requires confirm=true to execute. This gives an agent the context needed to avoid accidental destructive actions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with the service tag, destructive warning, exact resource and HTTP operation, effect, and confirmation requirement. There is no filler or redundant exposition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter destructive tool with full schema coverage and destructive/idempotent annotations, the description provides adequate information: target, effect, and confirm gate. A minor gap is not stating what happens when no CORS configuration exists, though idempotentHint mitigates that concern.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both bucketName and confirm. The description reinforces 'Set confirm=true to execute', but this largely repeats the confirm parameter's schema description and adds no new parameter-specific semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a precise verb and resource: 'Delete the CORS configuration of a Ncloud Storage bucket', and further clarifies the effect by saying it removes all cross-origin access rules. This clearly distinguishes it from sibling tools like ncloud_ncs_get_bucket_cors, ncloud_ncs_put_bucket_cors, and delete lifecycle/encryption tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: an agent needing to remove CORS configuration would select this tool. However, the description never names alternatives such as ncloud_ncs_get_bucket_cors or ncloud_ncs_put_bucket_cors, nor does it state when not to use it. 'Set confirm=true to execute' is an operational instruction rather than selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_delete_bucket_encryptionADestructiveIdempotent
[Ncloud Storage] ⚠️ Destructive: Delete the default server-side encryption configuration of a Ncloud Storage bucket (DELETE /?encryption). New objects will no longer be encrypted by default; existing objects are unchanged. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket to delete encryption configuration from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds genuinely useful context beyond those: the confirm=true execution gate, the scope distinction between new and existing objects, and the REST call being made. There is no contradiction with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that leads with the destructive warning, then covers action, resource, endpoint, effect on new objects, effect on existing objects, and the confirmation requirement. Every clause earns its place; there is zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter destructive config-delete, the description plus annotations and full schema coverage leave nothing material uncovered: safety profile, effect scope, and confirmation mechanism are all disclosed. No output schema exists, and DELETE operations have minimal response semantics, so omitting return-value details is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema fully documents both parameters, including the confirm flag's purpose ('Must be true to actually execute the destructive operation'). The description's 'Set confirm=true to execute' reinforces but does not add new meaning beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Delete) with a precise resource (default server-side encryption configuration of a Ncloud Storage bucket) and even the underlying REST endpoint (DELETE /?encryption). It is unambiguously distinguishable from its closest siblings ncloud_ncs_get_bucket_encryption and ncloud_ncs_put_bucket_encryption on the verb alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The effect clause ('New objects will no longer be encrypted by default; existing objects are unchanged') implies the use case of disabling default encryption, but it does not explicitly name the alternative get/put_bucket_encryption tools or state when not to use this one. Usage context is implied rather than explicitly routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_delete_bucket_lifecycleADestructiveIdempotent
[Ncloud Storage] ⚠️ Destructive: Delete ALL lifecycle rules from a Ncloud Storage bucket (DELETE /?lifecycle). Deletions or transitions already queued by the rules are not cancelled. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| bucketName | Yes | Name of the bucket to delete lifecycle configuration from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry destructiveHint=true and idempotentHint=true, but the description adds genuinely new behavior: queued deletions/transitions are not cancelled, plus the confirm=true safety gate. This materially changes how an agent should plan the call and what risks to communicate to the user.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core action is front-loaded in the first sentence, with the destructive warning and confirm gate following. Each of the three sentences carries distinct value, though '[Ncloud Storage]' plus 'from a Ncloud Storage bucket' is mildly redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter destructive operation, the description covers the action, safety gate, and an important side-effect warning. It does not state the return value or behavior when no lifecycle rules exist, but with no output schema and idempotentHint present, these are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already fully documented. The description's only parameter-related note is 'Set confirm=true to execute,' which duplicates the schema's own confirm description and adds no new semantic meaning beyond what the agent already has.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Delete), a specific resource (ALL lifecycle rules), and the API endpoint (DELETE /?lifecycle), which cleanly separates it from sibling tools like ncloud_ncs_get_bucket_lifecycle and ncloud_ncs_put_bucket_lifecycle. The 'ALL' qualifier is crucial – it signals the scope is the entire configuration, not a single rule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool – when all lifecycle rules must be removed – but it never references the sibling tools or states when NOT to use it. An agent must infer that inspecting rules goes through ncloud_ncs_get_bucket_lifecycle and that selective edits go through ncloud_ncs_put_bucket_lifecycle.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_delete_objectADestructiveIdempotent
[Ncloud Storage] ⚠️ Destructive: Delete an object from a Ncloud Storage bucket (DELETE /{key}). In a versioning-enabled bucket, omitting versionId only adds a delete marker (the versions stay and keep billing); pass versionId to permanently remove one version. bypassGovernanceRetention=true is needed for objects under GOVERNANCE retention. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to delete | |
| confirm | No | Must be true to actually execute the destructive operation | |
| versionId | No | Version ID to delete permanently. Omit to delete the current version (adds a delete marker on versioned buckets) | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| bypassGovernanceRetention | No | Send x-amz-bypass-governance-retention: true to delete an object locked in GOVERNANCE mode (requires the bypass permission) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint=true, but the description adds critical behavioral details: the delete-marker behavior in versioned buckets, billing implications, the requirement for bypassGovernanceRetention under GOVERNANCE, and the confirm=true gate. This goes well beyond the annotation and fully discloses consequences of invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the destructive warning, then explains versioning, governance, and confirmation in sequence. Each sentence contributes meaningful information without redundancy, though it is slightly dense with technical details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete operation, the description covers the essential execution requirements (confirm), versioning nuances, and retention bypass. It does not mention error cases or output format, but since there is no output schema and the tool is a straightforward delete, this is adequate. It lacks explicit guidance on prerequisites like bucket existence or permissions, but those are implicit in the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description adds contextual meaning for versionId and bypassGovernanceRetention, explaining the versioning and retention scenarios that the schema descriptions only hint at. This extra explanation is useful for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool deletes a single object from a Ncloud Storage bucket, including the HTTP method. It distinguishes from the plural sibling ncloud_ncs_delete_objects by the singular 'an object' and by explaining the versioning implications, making the tool's specific purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use versionId (to permanently remove a version vs. adding a delete marker) and when bypassGovernanceRetention is needed for GOVERNANCE-locked objects. However, it does not explicitly contrast with alternative delete tools (e.g., ncloud_ncs_delete_objects) beyond the singular/plural distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_delete_objectsADestructiveIdempotent
[Ncloud Storage] ⚠️ Destructive: Delete multiple objects (optionally specific versions) from a Ncloud Storage bucket in one call (POST /?delete). Give plain keys or objects with versionId. Returns per-key results (deleted / errors) — the call is HTTP 200 even when some keys fail. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| keys | No | Object keys to delete (current versions). Use `objects` instead to target versions | |
| quiet | No | Quiet mode — the response lists only failures | |
| confirm | No | Must be true to actually execute the destructive operation | |
| objects | No | Objects to delete, each optionally with a versionId | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| bypassGovernanceRetention | No | Send x-amz-bypass-governance-retention: true for objects under GOVERNANCE retention |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (destructiveHint, idempotentHint) already declare the safety profile, and the description adds genuinely useful context: the call returns HTTP 200 even when some keys fail, returns per-key results, and requires confirm=true to execute. This is consistent with the annotations and adds value beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense paragraph with the destructive warning front-loaded. Each sentence earns its place: purpose, version targeting, return semantics (200-even-on-failure), and the confirm gate. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description's disclosure of return values (per-key deleted/errors) and the 200-even-on-failure caveat is important and present. It also covers the confirm gate and version targeting. The only minor gap is not pointing to the singular delete alternative, but the description is otherwise complete for a destructive batch operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 6 parameters at 100% with individual descriptions. The description's 'give plain keys or objects with versionId' largely mirrors what the schema already states for keys/objects, so it adds minimal value beyond the structured fields. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Delete), resource (multiple objects from a Ncloud Storage bucket), and scope (batch via POST /?delete, optionally versioned). The 'multiple... in one call' phrasing implicitly distinguishes it from the singular sibling ncloud_ncs_delete_object, though it does not name the alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The batch intent ('delete multiple objects... in one call') implies using this when deleting several objects at once, but there is no explicit when-to-use vs. the singular ncloud_ncs_delete_object or the closely related ncloud_delete_multiple_objects, and no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_bucket_corsARead-only
[Ncloud Storage] Get the CORS configuration of a Ncloud Storage bucket (GET /?cors).
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to retrieve CORS configuration for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals this is a safe read operation, so the description does not need to cover safety. It adds the REST endpoint as a minor behavioral detail, but does not disclose what happens when CORS is not configured or the bucket is missing. With annotations covering the most important behavioral trait, this is a middle score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that conveys the action, resource, and API endpoint without any redundant wording. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only GET operation with a readOnlyHint annotation, the description is largely complete. The only gaps are minor: it does not indicate error behavior for missing CORS configurations or describe the response shape, but the purpose statement already implies the returned CORS configuration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the bucketName parameter is described as 'Name of the bucket to retrieve CORS configuration for'. The tool description adds no extra meaning about the parameter format or constraints, so this sits at the baseline for fully-covered schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Get'), a specific resource ('CORS configuration of a Ncloud Storage bucket'), and even the underlying REST call (GET /?cors). It is immediately clear what the tool retrieves and is easily distinguishable from sibling tools like ncloud_ncs_put_bucket_cors and ncloud_ncs_delete_bucket_cors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool versus alternatives. It does not mention that modifying CORS would require put_bucket_cors, nor what to do if the bucket has no CORS configured. The intended usage is only implied by the tool name and verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_bucket_encryptionARead-only
[Ncloud Storage] Get the default server-side encryption configuration of a Ncloud Storage bucket (GET /?encryption).
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to retrieve encryption configuration for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already provide readOnlyHint: true, indicating this is a safe read operation. The description adds the specific resource (encryption configuration) but does not disclose any additional behavioral aspects, such as what happens if the bucket has no encryption configured (e.g., returns empty vs. error) or any permission requirements. Since the annotation covers the read-only nature, the description does not contradict it but also does not enrich the agent's understanding beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately states the tool's purpose. It is front-loaded with the action and resource, includes the API path for reference, and contains no filler. Every word earns its place, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with one parameter and a read-only annotation, the description is largely complete. It does not mention what the response will contain (e.g., the structure of the encryption configuration or what happens when no configuration exists), but given the lack of an output schema, this is a minor gap. The agent can infer the likely response from the tool's name and the GET operation, so the description is sufficient for straightforward use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage: the only parameter, bucketName, is described as 'Name of the bucket to retrieve encryption configuration for'. The description does not add any extra meaning about the parameter, such as format, constraints, or examples. Given the high schema coverage, the baseline of 3 is appropriate; the description does not need to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the specific resource ('default server-side encryption configuration of a Ncloud Storage bucket'), and it includes the underlying API endpoint (GET /?encryption). It is unambiguous and distinct from sibling tools that retrieve other bucket configurations (versioning, lifecycle, CORS) or modify encryption.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly mention when to use this tool versus alternatives. However, the purpose is self-evident: if you need to retrieve a bucket's encryption configuration, this is the tool. There is no guidance on exclusions, prerequisites, or when a different tool (e.g., put_bucket_encryption) would be more appropriate. The usage context is implied by the name and purpose rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_bucket_lifecycleARead-only
[Ncloud Storage] Get the lifecycle configuration of a Ncloud Storage bucket (GET /?lifecycle): transitions to ONEZONE_IA / DEEP_ARCHIVE, expiration, and noncurrent-version rules. Returns configured=false with an empty rule list when no configuration exists (instead of a NoSuchLifecycleConfiguration error).
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to retrieve lifecycle configuration for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, and the description is consistent. It adds valuable behavioral detail beyond annotations by specifying the response when no configuration exists (returns configured=false with empty rule list instead of an error) and listing the rule categories included.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first sentence states the purpose and rule types, the second clarifies a key edge-case behavior. Information is front-loaded and every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter getter with readOnly annotation and no output schema, the description covers the main content (rule types) and a critical edge case. It does not detail the exact response structure, but the description's summary of rule types gives sufficient context for an agent to interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the bucketName parameter described as 'Name of the bucket to retrieve lifecycle configuration for'. The description adds no additional parameter semantics beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('lifecycle configuration of a Ncloud Storage bucket'), and enumerates the specific rule types (transitions, expiration, noncurrent-version). This distinguishes it from sibling tools like ncloud_ncs_put_bucket_lifecycle or get_bucket_location.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a read operation but does not explicitly state when to use this tool versus alternatives (e.g., ncloud_ncs_put_bucket_lifecycle for setting, or ncloud_ncs_delete_bucket_lifecycle for removal). There is no exclusion or alternative guidance, so it relies on inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_bucket_locationBRead-only
[Ncloud Storage] Get the region of a Ncloud Storage bucket (GET /?location). Returns the LocationConstraint (e.g. 'kr').
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals this is a safe read operation, and the description adds useful behavioral details: the underlying endpoint (GET /?location) and the exact return value (LocationConstraint). This is consistent with the annotation and provides concrete expectations beyond what annotations alone convey, but it doesn't discuss potential errors or edge cases, which is acceptable for such a simple read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that includes the service prefix, the action, the endpoint, and an example return value. Every element adds value and there is no fluff. It could be slightly improved by mentioning the sibling for clarity, but it is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, single-parameter tool with no output schema, the description is sufficient. It states what it returns and includes an example, and the annotations cover safety. Nothing critical is missing for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes bucketName as 'Name of the Ncloud Storage bucket' with 100% coverage, so the description adds no new parameter meaning. The baseline of 3 applies because the schema fully documents the parameter; the description does not need to repeat it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the region of a Ncloud Storage bucket and returns the LocationConstraint (e.g., 'kr'). It names the specific verb and resource, making the purpose unambiguous. However, it does not differentiate itself from the generic sibling ncloud_get_bucket_location, which is a similar operation on a different storage API, so it misses an opportunity to clarify scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as ncloud_get_bucket_location (generic S3-compatible) or other NCS bucket operations. The description only explains what it does, not the context in which it should be selected. For a tool with many sibling tools, explicit when-to-use guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_bucket_versioningARead-only
[Ncloud Storage] Get the versioning state of a Ncloud Storage bucket (GET /?versioning). status is Enabled | Suspended | NotConfigured (the API returns an empty body when versioning was never enabled).
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is known. The description adds valuable behavioral context: the status values (Enabled | Suspended | NotConfigured) and the fact that the API returns an empty body when versioning was never enabled. This helps the agent interpret the response.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action, includes the API endpoint, enumerates possible statuses, and notes the empty-body edge case. No superfluous information, every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with one required parameter and no output schema, the description provides the essential return values and the empty-body behavior. It doesn't mention error conditions or permissions, but for this low-complexity tool the core information an agent needs is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the only parameter, bucketName, is described as 'Name of the Ncloud Storage bucket'. The description does not add further parameter details (e.g., format, constraints), but since the schema already covers it, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the versioning state of a Ncloud Storage bucket, with the specific verb 'Get' and resource 'versioning state'. It distinguishes from siblings like ncloud_ncs_put_bucket_versioning by being the read counterpartainer. The API endpoint (GET /?versioning) further anchors what it does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (read-only query of bucket versioning) but does not explicitly mention when to use this tool versus alternatives (e.g., ncloud_ncs_put_bucket_versioning). No explicit when/when-not guidance, but the purpose is clear enough that an agent could infer the appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_objectARead-only
[Ncloud Storage] Download an object from a Ncloud Storage bucket as text (GET /{key}). Supports a specific versionId and a byte Range. A DEEP_ARCHIVE object must be restored first (ncloud_ncs_restore_object) or the call fails with InvalidObjectState.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to retrieve | |
| range | No | Byte range to fetch, e.g. 'bytes=0-1023' | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the read-only nature is known. The description adds valuable behavioral context: returns content as text, and fails with InvalidObjectState if a DEEP_ARCHIVE object hasn't been restored. This goes beyond the annotation and helps the agent anticipate failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. The primary action is front-loaded, followed by key optional capabilities and the critical failure condition. Every clause earns its place; the archive-restore note is essential and compact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward read operation, the description covers the essential behavioral aspects: what it returns (text), what parameters it supports, and the one significant failure mode. The lack of an output schema is mitigated by the 'as text' note. It doesn't mention pagination or size limits, but those are unlikely for a single object download.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptive text for all four parameters (bucketName, key, range, versionId) with 100% coverage. The description reinforces that versionId and Range are supported but adds no new semantic details beyond what the schema offers. Per the baseline rule, 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool downloads an object from a bucket as text, with the specific HTTP verb and resource path (GET /{key}). It distinguishes from siblings like head_object (metadata only) and get_object_attributes by focusing on content retrieval. The mention of versionId and Range support further clarifies scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context: supports versionId and byte Range, and explicitly notes the prerequisite for DEEP_ARCHIVE objects (must restore first) with a specific alternative tool name. It doesn't explicitly contrast with head_object, but the verb 'download' and 'as text' make the purpose unambiguous among ncs_* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_object_attributesARead-only
[Ncloud Storage] Get selected attributes of an object in one call (GET /{key}?attributes with x-amz-object-attributes): ETag, ObjectSize, StorageClass, Checksum, ObjectParts (multipart part sizes).
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) | |
| maxParts | No | x-amz-max-parts — parts per page when ObjectParts is requested (default 1,000) | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| attributes | No | Attributes to return (x-amz-object-attributes). Default: ETag, ObjectSize, StorageClass, Checksum | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| partNumberMarker | No | x-amz-part-number-marker — start after this part number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds context about the single-call efficiency and enumerates the attributes returned, which goes beyond the annotation. It does not contradict annotations, and the extra detail about attribute selection is useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence. It is front-loaded with the purpose and includes the HTTP endpoint and header name without extraneous words. Every part contributes to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with a simple parameter set (2 required, 6 total) and high schema coverage, the description is sufficiently complete. It covers what the tool does and the attributes it can return. Pagination details are not mentioned, but they are fully documented in the schema (maxParts, partNumberMarker), so nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all six parameters have descriptions. The tool description adds minimal new meaning beyond the schema—it lists the attribute enum and mentions the default set, which is already in the schema. Since the schema carries the burden, a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: getting selected attributes of an object. It names specific attributes (ETag, ObjectSize, StorageClass, Checksum, ObjectParts) and mentions the HTTP endpoint, distinguishing it from tools that fetch object content (ncloud_ncs_get_object) or headers (ncloud_ncs_head_object). The verb and resource are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly mention when to use this tool versus alternatives. It implies efficiency ('in one call') and the attribute list differentiates it, but there is no explicit guidance like 'use this instead of head_object for specific attributes.' An agent would infer usage from the name and description, but it is not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_object_legal_holdARead-only
[Ncloud Storage] Get the Object Lock legal hold status of an object (GET /{key}?legal-hold): ON | OFF. Returns configured=false when the object has no legal hold setting.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds meaningful behavioral context beyond that: it discloses the response format (ON | OFF) and the important edge case that configured=false is returned when no legal hold setting exists. This helps an agent interpret results correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the product area is front-loaded, followed by the operation, endpoint, and return behavior. Every sentence contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with fully documented required parameters and no output schema, the description adequately covers what is returned, including the unset case. An agent has enough information to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage for bucketName, key, and versionId, so the schema already documents parameter semantics. The description does not add parameter-level detail, but none is needed because the schema descriptions are complete. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Get the Object Lock legal hold status of an object.' It also includes the exact HTTP endpoint (GET /{key}?legal-hold) and return values (ON | OFF), making the operation unambiguous and distinct from related object-lock tools like get_object_retention or put_object_legal_hold.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the tool's domain and purpose clear, but it does not explicitly say when to use this tool over related object-lock operations or name alternatives. Usage context is implied rather than stated, and there is no misleading guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_object_lock_configurationARead-only
[Ncloud Storage] Get the Object Lock (WORM) configuration of a Ncloud Storage bucket (GET /?object-lock): whether Object Lock is enabled and the default retention (mode + days/years) applied to new objects. Returns configured=false when the bucket has no Object Lock (the API answers 404 ObjectLockConfigurationNotFoundError).
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this is a safe read, and the description adds genuine behavioral context beyond it: the response semantics (configured=false for unlocked buckets) and the underlying 404 ObjectLockConfigurationNotFoundError, which tells the agent not to treat a missing configuration as an error.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence, front-loaded with scope and the endpoint, then the return shape. Every clause earns its place and nothing is redundant with the name or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing returns and does so fully: enabled/disabled status, default retention mode and duration, plus the configured=false fallback. Nothing an agent needs to call and interpret this read correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single bucketName parameter, so the schema already carries the parameter's meaning. The description adds no format or naming detail beyond what the schema provides, which is the expected baseline when structured fields do the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (the Object Lock/WORM configuration of a bucket), and disambiguates scope by naming the exact API endpoint (GET /?object-lock) and the bucket-level nature. It also previews what is returned (enabled flag plus default retention mode + days/years), so an agent can distinguish it from the object-level retention siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: the description covers the 'bucket has no Object Lock' case and explains the 404 behavior, but never says when to reach for this tool versus the put/set counterpart or the per-object retention tools. No explicit when/when-not guidance is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_get_object_retentionARead-only
[Ncloud Storage] Get the Object Lock retention of an object (GET /{key}?retention): mode (GOVERNANCE | COMPLIANCE) and retainUntilDate. Returns configured=false when the object has no retention (NoSuchObjectLockConfiguration).
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so no contradiction. The description adds genuine value beyond the annotation by disclosing that the tool returns configured=false when no retention is set and noting the NoSuchObjectLockConfiguration case, which helps an agent interpret 'empty' results correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with zero filler: the purpose is front-loaded, the API reference is compact, and the meaningful edge case (configured=false) is included. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with 3 well-documented params and no output schema, the description covers the essential return semantics (mode, retainUntilDate, and the no-retention case). It could mention behavior for a nonexistent object key, but this is a minor gap given the tool's simplicity and the annotations covering its read-only nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so key, bucketName, and versionId are already fully documented in the schema. The description adds nothing about parameter formats or defaults, which is acceptable given the schema carries the load; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Get the Object Lock retention of an object'), names the exact return fields (mode, retainUntilDate), and references the underlying API call (GET /{key}?retention). This clearly distinguishes it from sibling tools like ncloud_ncs_put_object_retention and ncloud_ncs_get_object_lock_configuration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (whenever an object's retention settings are needed) but provides no explicit guidance about alternatives. In particular, it does not distinguish itself from ncloud_ncs_get_object_lock_configuration (bucket-level vs object-level) or the related retention/legal-hold getters, so an agent must infer the right choice from naming alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_head_bucketARead-only
[Ncloud Storage] Check whether a Ncloud Storage bucket exists and is accessible (HEAD /). exists=false on 404. A NoSuchBucket here may mean the bucket lives in the legacy Object Storage instead — try ncloud_head_bucket.
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While readOnlyHint=true already indicates a safe read operation, the description adds specific behavioral detail: it returns exists=false on 404 and notes the potential fallback scenario. This goes beyond the annotation without contradicting it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary action, and every clause adds value: the HEAD method, the 404 handling, and the alternative tool. No waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only existence check, the description covers the operation, the error semantics, and the alternative path. Nothing essential is missing for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, bucketName, is fully described in the schema with 'Name of the bucket to check'. The description adds no extra semantic nuance, so it meets the baseline for high schema coverage without adding further value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it checks whether a Ncloud Storage bucket exists and is accessible, with a specific verb (check) and resource (bucket). It also distinguishes itself from the legacy Object Storage tool by referencing ncloud_head_bucket, making it easy to differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly provides a condition for when to use this tool vs the alternative: if a NoSuchBucket error occurs here, it may indicate the bucket is in legacy Object Storage, and the agent should try ncloud_head_bucket. This gives clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_head_objectARead-only
[Ncloud Storage] Get an object's metadata without downloading it (HEAD /{key}): size, type, ETag, storage class, version ID, restore status and Object Lock retention / legal hold. Returns exists=false on 404 (object missing, or its current version is a delete marker on a versioned bucket) instead of an error.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to check | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses the most surprising behavioral trait: 'Returns exists=false on 404... instead of an error', including the subtle delete-marker-on-versioned-bucket case. It also clarifies the exact HTTP semantics (HEAD /{key}, no body download) and enumerates the metadata fields an agent can expect. These are genuinely non-obvious behaviors that materially change how an agent should interpret results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core purpose is front-loaded in the first clause, and the trailing sentence covers the 404 edge case without waste. The field enumeration list makes the sentence dense, but every element earns its place since the metadata inventory serves as a return-value contract in the absence of an output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates well: it enumerates the metadata fields returned and specifies the not-found contract (exists=false, including the delete-marker nuance). For a simple 3-parameter tool with 100% schema coverage and a readOnly annotation, this covers what an agent needs to call it and interpret its result. The only gap is the exact response shape, which is minor given the field list.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: key, versionId, and bucketName each have meaningful descriptions in the schema itself. The tool description adds no parameter-level detail beyond the schema; it mentions 'version ID' as a returned field, which loosely relates to the versionId parameter, but that is incidental rather than explanatory. Baseline 3 applies since the schema carries the full burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Get an object's metadata without downloading it (HEAD /{key})'. The HTTP method and the listed return fields (size, ETag, storage class, version ID, restore status, Object Lock) make the tool's exact function unambiguous. It also distinguishes itself from siblings: unlike ncloud_ncs_get_object (which fetches content) and ncloud_ncs_get_object_attributes (a different API variant), this is the lightweight metadata HEAD operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied rather than explicit: 'without downloading it' signals an agent to reach for this tool when metadata alone suffices, and the cheap HEAD semantics suggest a pre-check idiom. However, the description never names alternatives or states when not to use it, leaving the agent to infer the decision rule from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_list_bucketsARead-only
[Ncloud Storage] List Ncloud Storage buckets (GET / on kr.ncloudstorage.com). Ncloud Storage is the newer S3-compatible object storage at {bucket}.kr.ncloudstorage.com (KR only) and is a separate service from the legacy Object Storage with its own bucket namespace — for Object Storage buckets use ncloud_list_buckets and the other ncloud_* tools without the ncs_ prefix.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | Only buckets whose name starts with this prefix | |
| maxBuckets | No | Buckets per page (1–10,000) | |
| continuationToken | No | Pagination: continuationToken from the previous response |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true, but the description adds real context: read-only GET semantics, the {bucket}.kr.ncloudstorage.com host pattern, KR-only availability, and that it is a separate service with its own bucket namespace. It does not mention response shape or pagination behavior, but the safety/scope profile is well covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and endpoint before the service-distinction context. Slightly dense in the second sentence with host-pattern and namespace detail, but every clause carries routing value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-arg list tool with no output schema, the description supplies everything needed: identity, endpoint family, region scope, and the sibling routing rule. Return values are out of scope since no output schema exists and pagination is handled by a schema-documented parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so prefix, maxBuckets, and continuationToken are already documented in the schema. The description adds nothing about the parameters (e.g. that prefix filters bucket names, or that continuationToken drives pagination), so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("List Ncloud Storage buckets") plus the underlying API call (GET / on kr.ncloudstorage.com). It explicitly distinguishes itself from the near-identical sibling ncloud_list_buckets, which is the main disambiguation risk in this namespace.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly names the alternative ("for Object Storage buckets use ncloud_list_buckets and the other ncloud_* tools without the ncs_ prefix"), giving the agent a clear rule for when to pick this tool versus its sibling. No inference required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_list_multipart_uploadsARead-only
[Ncloud Storage] List in-progress (not yet completed or aborted) multipart uploads in a bucket (GET /?uploads). Incomplete uploads keep consuming storage until completed or aborted — use this to find leftovers, then ncloud_ncs_abort_multipart_upload.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | Only uploads whose key starts with this prefix | |
| keyMarker | No | Pagination: nextKeyMarker of the previous page | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| maxUploads | No | Uploads per page (1–1,000) | |
| uploadIdMarker | No | Pagination: nextUploadIdMarker of the previous page (requires keyMarker) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description adds meaningful context: incomplete uploads keep consuming storage until completed or aborted, and the operation is a GET request. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two focused sentences: the first front-loads verb, resource, scope, and endpoint; the second adds the operational rationale and follow-up tool. Every sentence earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Together with a well-documented schema, the description gives enough to select and invoke the tool: required bucketName, optional filters, pagination markers, and the cleanup rationale. The lack of an output schema is a minor gap, but pagination behavior is already conveyed through the keyMarker and uploadIdMarker parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents all five parameters (100% coverage), including constraints and pagination relationships, so the description does not need to repeat them. The description adds no parameter-specific detail beyond the bucket context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete action: list in-progress multipart uploads in a bucket, with explicit scope ('not yet completed or aborted') and the REST path (GET /?uploads). This clearly distinguishes it from multipart siblings like complete, abort, and list_parts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly frames when to use the tool: to find leftover uploads consuming storage, and even names the follow-up tool ncloud_ncs_abort_multipart_upload. It does not enumerate when-not-to-use exclusions, but there is no competing tool for listing NCS multipart uploads, so the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_list_objectsARead-only
[Ncloud Storage] List objects in a Ncloud Storage bucket (GET /?list-type=2). Supports prefix, delimiter, maxKeys, startAfter and continuation-token pagination; each entry includes its storage class.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | Limits results to keys beginning with this prefix | |
| maxKeys | No | Maximum number of keys to return (1–1,000, default 1,000) | |
| delimiter | No | Delimiter for grouping keys (commonly '/') | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| startAfter | No | Start listing after this key | |
| continuationToken | No | Pagination: nextContinuationToken of the previous response |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is known. The description adds behavioral context beyond that: it is a paginated list operation with prefix/delimiter grouping, startAfter support, and continuation-token traversal, plus the storage class is included in each returned entry. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with zero filler. The main action and resource are front-loaded, and the second sentence compactly enumerates all relevant capabilities. Every phrase contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should cover return expectations; it mentions storage class inclusion, which is useful, but does not describe other returned fields (e.g., key, size, last modified) or truncation behavior. Overall it gives an agent enough to invoke the tool correctly, though fuller response details would make it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline applies. The description merely names the same parameters found in the schema (prefix, delimiter, maxKeys, startAfter, continuation-token) without adding new semantic details such as default behavior or format expectations. It adds no value beyond what the input schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'List objects in a Ncloud Storage bucket' with the exact REST endpoint (GET /?list-type=2). The 'Ncloud Storage' scope and 'objects in a bucket' target clearly distinguish it from siblings like ncloud_ncs_list_buckets and ncloud_ncs_list_object_versions, and the added note about storage class per entry removes ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies how to use the tool by enumerating supported filtering and pagination parameters, but it never explicitly states when to choose this tool over alternatives such as ncloud_ncs_list_object_versions or the legacy ncloud_list_objects. There are no exclusions or alternative routing cues, so the agent must infer the correct context from the 'Ncloud Storage' prefix.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_list_object_versionsARead-only
[Ncloud Storage] List all versions and delete markers of objects in a versioning-enabled Ncloud Storage bucket (GET /?versions). Use it to find noncurrent versions to restore or delete, and to empty a versioned bucket before deleting it.
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No | Limits results to keys beginning with this prefix | |
| maxKeys | No | Items per page (1–1,000, default 1,000) | |
| keyMarker | No | Pagination: nextKeyMarker of the previous response | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| versionIdMarker | No | Pagination: nextVersionIdMarker of the previous response |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description aligns (it lists versions, doesn't mutate). The description adds context about pagination parameters (keyMarker/versionIdMarker) but does not describe what happens when a bucket is not versioning-enabled or whether delete markers are included even when they are empty. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loads the core action, and packs useful context (versions, delete markers, API reference, use cases) without fluff. It could arguably be trimmed, but every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the readOnly annotation, the parameter schema, and a simple list operation, the description provides enough context for an agent to call it correctly. It doesn't describe response structure, but there's no output schema, and for a list operation the response shape (versions/delete markers) is fairly inferable from the purpose. It also doesn't mention the exact behavior when versioning is disabled, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are documented in the schema. The description reinforces the pagination parameters (keyMarker/versionIdMarker) indirectly and mentions the bucket context, but it doesn't add much beyond the schema. However, it clarifies that the operation targets a 'versioning-enabled' bucket, which is semantically relevant for bucketName.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('List all versions and delete markers of objects in a versioning-enabled Ncloud Storage bucket') and even names the underlying API (GET /?versions). It clearly distinguishes this from sibling tools like ncloud_ncs_list_objects or ncloud_list_object_versions by specifying versions/delete markers, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides concrete use cases: 'Use it to find noncurrent versions to restore or delete, and to empty a versioned bucket before deleting it.' This tells an agent when to invoke it. It doesn't explicitly say when not to use it or name an alternative tool, but the provided use cases are specific enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_list_partsARead-only
[Ncloud Storage] List the parts uploaded so far for a multipart upload (GET /{key}?uploadId). Paginate with maxParts / partNumberMarker.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) of the multipart upload target | |
| maxParts | No | Parts per page (1–1,000) | |
| uploadId | Yes | Upload ID returned by ncloud_ncs_create_multipart_upload | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| partNumberMarker | No | Start after this part number (nextPartNumberMarker of the previous page) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds useful behavioral context: it performs a GET, reflects the current state of an in-progress upload, and supports pagination. It does not describe response shape or whether the list could be truncated, but the read-only safety profile is already covered by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact clauses: one states the core purpose and endpoint, the other states pagination behavior. There is no filler or duplication of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list operation with fully described parameters and a readOnlyHint annotation, the description is adequate. It could mention what the response contains or that results may be truncated, but the schema and pagination guidance already equip an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters are already documented. The description reinforces the pagination relationship between maxParts and partNumberMarker, but adds little beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('List') and resource ('parts uploaded so far for a multipart upload'), and includes the HTTP endpoint shape. This clearly distinguishes it from sibling tools like ncloud_ncs_list_multipart_uploads or ncloud_ncs_list_objects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: this tool is for inspecting parts of an existing multipart upload, and it explicitly instructs how to paginate using maxParts and partNumberMarker. It does not explicitly name alternatives or when-not conditions, but the multipart-upload framing is sufficient guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_bucket_corsA
[Ncloud Storage] Set the CORS configuration of a Ncloud Storage bucket (PUT /?cors). Replaces the whole configuration. Up to 100 rules; each needs at least one AllowedOrigin and one AllowedMethod; one '*' wildcard per origin/header item; ExposeHeader does not allow wildcards.
| Name | Required | Description | Default |
|---|---|---|---|
| corsRules | Yes | CORS rules to apply to the bucket | |
| bucketName | Yes | Name of the bucket to set CORS configuration for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses the destructive overwrite behavior ('Replaces the whole configuration') and adds validation constraints beyond the schema: one '*' wildcard per origin/header item and no wildcards in ExposeHeader. The 'Up to 100 rules' and per-rule requirements partly duplicate the schema, but the wildcard rules are genuinely additive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences with no fluff; the primary purpose is front-loaded, followed by the overwrite behavior and then the key validation rules. The compact semicolon-separated constraint list is dense but every clause adds value. Minor inefficiency: the 100-rule and required-field limits already exist in the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with 100% schema coverage and no output schema, the description covers the essential call semantics: purpose, overwrite behavior, and non-obvious wildcard constraints. It does not discuss permissions or error conditions, but nothing critical is missing for correct invocation. Complete enough for this tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters and their nested constraints. The description adds the replacement semantics tying bucketName and corsRules together, but does not add per-parameter detail beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Set the CORS configuration of a Ncloud Storage bucket' with the API endpoint (PUT /?cors). This clearly distinguishes it from the sibling tools ncloud_ncs_get_bucket_cors and ncloud_ncs_delete_bucket_cors, so an agent can select it without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The statement 'Replaces the whole configuration' conveys an important usage trait — this is a full overwrite, not a merge — implying the agent must supply all rules. However, it does not explicitly name alternatives (get/delete CORS) or state when to prefer them; the guidance is implied rather than made explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_bucket_encryptionA
[Ncloud Storage] Set default server-side encryption for a Ncloud Storage bucket (PUT /?encryption). Exactly one rule: AES256 (SSE-S3) or aws:kms (Ncloud-managed KMS key; customer-managed keys and aws:kms:dsse are not supported yet). New objects are encrypted with it by default.
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the bucket to set encryption configuration for | |
| sseAlgorithm | Yes | AES256 (SSE-S3) | aws:kms (SSE-KMS, Ncloud-managed key) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full behavioral burden. It discloses the supported algorithms, explicitly calls out unsupported key types (customer-managed keys, aws:kms:dsse), and states the post-condition for new objects. Minor gaps remain, such as whether an existing encryption configuration gets overwritten and any permission requirements, but the provided behavior is substantive and accurate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three tight sentences with no fluff. It front-loads the service and action, follows with the API path and supported values, and then explains the behavioral effect. Every clause contributes information an agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter PUT operation with no output schema, the description is close to complete: it covers what to pass, which values are valid, what is unsupported, and the effect on new objects. It could mention that the operation replaces or overwrites the existing encryption rule and that it returns a standard response, but these are minor given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers both parameters at 100%, so the baseline is 3. The description adds value by expanding on sseAlgorithm: it explains that aws:kms uses a Ncloud-managed key and clarifies which algorithm variants are not supported, going beyond the raw enum. bucketName is straightforward and needs no extra elaboration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Set) and a specific resource (default server-side encryption for a Ncloud Storage bucket), and reinforces it with the API path 'PUT /?encryption'. This unambiguous action clearly distinguishes it from sibling operations like get_bucket_encryption and delete_bucket_encryption without needing to name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys clear usage context: if you want to set default server-side encryption on a bucket, this is the tool. It does not explicitly name alternatives or exclusions, but the action and the effect statement 'New objects are encrypted with it by default' make the applicable scenario clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_bucket_lifecycleA
[Ncloud Storage] Set lifecycle rules on a Ncloud Storage bucket (PUT /?lifecycle). Supports current-version transitions (ONEZONE_IA | DEEP_ARCHIVE) and expiration by days or date, plus NoncurrentVersionTransition / NoncurrentVersionExpiration for versioning-enabled buckets. ⚠️ The API replaces the ENTIRE configuration on every call — a rule left out disappears. Default mergeWithExisting=false replaces (the response lists the rules that were removed); mergeWithExisting=true reads the current rules first and keeps those whose id you did not resend. Use dryRun=true to preview the exact XML.
| Name | Required | Description | Default |
|---|---|---|---|
| rules | Yes | Lifecycle rules to apply | |
| dryRun | No | If true, returns the XML that would be sent and what would change, without applying | |
| bucketName | Yes | Name of the bucket to set lifecycle configuration for | |
| mergeWithExisting | No | true: keep existing rules whose id is not in `rules` (same-id rules are replaced). false (default): the configuration becomes exactly `rules` |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden. It discloses the destructive replace-on-every-call behavior, explains merge semantics, mentions the response lists removed rules, and flags the abortIncompleteMultipartUploadDays spec mismatch. These are critical behavioral traits beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but appropriately so for a complex API. It front-loads the purpose and the most critical warning (replaces entire config), then details merge and dryRun. While long, every sentence contributes essential information without fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with nested rules, multiple storage classes, and versioning options, the description covers all major gotchas: replace behavior, merge semantics, dryRun, unsupported AWS names, and the abortIncompleteMultipartUploadDays risk. It is complete for an agent to call correctly, even without an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds significant extra meaning: the replace-vs-merge behavior for the rules parameter, dryRun's preview capability, and the specific enum restrictions (ONEZONE_IA/DEEP_ARCHIVE, not STANDARD_IA/GLACIER). It enriches the schema's parameter descriptions with operational caveats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it sets lifecycle rules on a Ncloud Storage bucket via PUT /?lifecycle, enumerates supported features (transitions, expiration, noncurrent versions), and distinguishes itself from sibling get/delete lifecycle tools. The verb-resource pair is explicit and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit guidance on when to use the tool and the critical distinction between mergeWithExisting=false (replaces) and true (keeps existing rules), plus dryRun for preview. It also warns about unsupported AWS storage class names and the potential rejection of abortIncompleteMultipartUploadDays, giving clear operational context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_bucket_versioningA
[Ncloud Storage] Set the versioning state of a Ncloud Storage bucket (PUT /?versioning). Enabled keeps every version of every object; Suspended stops creating new versions but keeps existing ones. Once enabled, versioning cannot be turned back to NotConfigured — only Suspended.
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | Enabled | Suspended | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations to carry safety or state information, the description explains the behavioral outcome of each enum value (Enabled keeps all versions, Suspended stops new versions but retains existing) and the irreversible transition from Enabled to Suspended. This is essential context that exceeds the bare schema and is clearly valuable for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action and resource, and then adds the state definitions and the critical caveat. Every sentence contributes essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with two required parameters and no output schema or annotations, the description covers everything necessary for correct invocation: the operation, the meaning of the status values, and the irreversible state transition. The agent can safely call this tool with just the provided information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides descriptions and an enum for both parameters, but the description adds semantic meaning to the status values by explaining their functional impact. This goes beyond the schema's terse 'Enabled | Suspended' and helps an agent choose the correct value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set the versioning state of a Ncloud Storage bucket') and identifies the resource (bucket). It also explains the two possible states and the irreversible transition, making the tool's purpose unambiguous and distinct from getter tools like ncloud_ncs_get_bucket_versioning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (to set versioning), but it does not explicitly mention alternatives or when-not-to-use conditions. It includes a critical caveat about the Enabled → Suspended restriction, which provides some guidance, but it fails to contrast with related siblings such as ncloud_put_bucket_versioning.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_objectA
[Ncloud Storage] Upload a text object to a Ncloud Storage bucket (PUT /{key}). Optional storage class (STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class), server-side encryption and Object Lock headers. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to upload to, e.g. 'folder/file.txt' | |
| body | Yes | Content to upload as the object body | |
| dryRun | No | If true (default), returns a preview without actually uploading | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| contentType | No | Content-Type of the object (e.g. 'text/plain', 'application/json') | |
| storageClass | No | x-amz-storage-class — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Omit to use STANDARD | |
| objectLockMode | No | x-amz-object-lock-mode — GOVERNANCE | COMPLIANCE (bucket must have Object Lock enabled; give objectLockRetainUntilDate too) | |
| objectLockLegalHold | No | x-amz-object-lock-legal-hold — ON | OFF | |
| serverSideEncryption | No | x-amz-server-side-encryption — AES256 (SSE-S3) | aws:kms | |
| objectLockRetainUntilDate | No | x-amz-object-lock-retain-until-date, ISO 8601 (e.g. 2027-01-01T00:00:00Z) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full disclosure burden. It makes the write nature explicit ('Upload', 'PUT'), surfaces the dryRun preview safety feature, and names the optional headers (storage class, SSE, Object Lock). Gaps remain: no mention of overwrite semantics for existing keys, required permissions, side effects, or what the dryRun preview returns. Solid but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-structured ~40-word paragraph that front-loads the verb, resource, and HTTP method before details. The purpose and dryRun hint earn their place, though the storage class parenthetical duplicates schema content one-for-one and could be trimmed without loss.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter tool with no output schema and empty annotations, coverage is decent: purpose, method, optional headers, and preview behavior are all present. However, it omits what the response contains, how overwrites behave, and the fact that dryRun already defaults to true. Adequate but with clear gaps an agent would need filled at call time.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline of 3 applies. The description re-states the storage class enum values that the schema already documents verbatim and adds no new per-parameter semantics beyond the schema's own descriptions. The text-object phrasing confirms the body is string content but that is also already covered by the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb + resource + HTTP method: 'Upload a text object to a Ncloud Storage bucket (PUT /{key})'. This clearly distinguishes it from sibling NCS tools like ncloud_ncs_get_object, ncloud_ncs_head_object, ncloud_ncs_copy_object, and ncloud_ncs_delete_object — the agent knows exactly what this tool does without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The verb and PUT method make the intended use case reasonably clear (uploading a single text object to NCS storage), and 'Use dryRun=true to preview' gives a how-to-safely instruction. However, it never explicitly contrasts alternatives or states when not to use it — e.g., no mention that multipart uploads, copies, or other object operations are handled by sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_object_legal_holdA
[Ncloud Storage] Turn an object's Object Lock legal hold ON or OFF (PUT /{key}?legal-hold). While ON the object cannot be deleted or overwritten regardless of retention; OFF releases it. The bucket must have Object Lock enabled.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) | |
| status | Yes | ON | OFF | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It explains the mutating effect ('cannot be deleted or overwritten... OFF releases it') and the prerequisite, which is meaningful. It does not mention error cases, permissions, or response behavior, but the core behavioral impact is well disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences deliver the action, endpoint, behavioral effect, and a prerequisite without any filler. The key semantics are front-loaded before the supporting detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple toggle operation, the description is complete: it states what the tool does, the protection effect, how to release it, and the required bucket configuration. All parameters are already documented in the schema, and no meaningful return payload is needed for an agent to invoke this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema fully documents bucketName, key, status, and versionId. The description adds legal-hold semantics and the Object Lock prerequisite, but does not add per-parameter details beyond what the schema already provides; the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Turn ... legal hold ON or OFF'), names the exact resource and endpoint, and explains the functional difference from retention by noting that legal hold protects objects regardless of retention. This clearly distinguishes it from siblings like ncloud_ncs_get_object_legal_hold and ncloud_ncs_put_object_retention.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear precondition ('The bucket must have Object Lock enabled') and makes the operation's context obvious. It does not explicitly name alternatives or say 'do not use when...', but the read/write pairing with get_object_legal_hold and the retention contrast are implicitly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_object_lock_configurationADestructiveIdempotent
[Ncloud Storage] Set the Object Lock configuration of a Ncloud Storage bucket (PUT /?object-lock). ObjectLockEnabled is always sent as Enabled; the default retention rule is optional — give mode plus exactly one of days (1-36,500) / years (1-100) to apply it to every new object, or omit mode to send no default retention. GOVERNANCE can be overridden by users with bypass permission; COMPLIANCE cannot be shortened or removed by anyone until it expires — it requires confirm=true. The bucket must have been created with objectLockEnabled=true. Use dryRun=true to preview the XML.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Default retention period in days, 1-36,500 (with mode; exactly one of days / years) | |
| mode | No | Default retention mode GOVERNANCE | COMPLIANCE. Omit to set no default retention rule | |
| years | No | Default retention period in years, 1-100 (with mode; exactly one of days / years) | |
| dryRun | No | If true, returns the XML that would be sent without applying | |
| confirm | No | Required (true) when mode=COMPLIANCE, because COMPLIANCE retention is irreversible | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite annotations (idempotentHint, destructiveHint) already flagging mutability, the description adds substantial beyond-annotation context: ObjectLockEnabled is always forced Enabled, GOVERNANCE can be bypassed but COMPLIANCE is irreversible and requires confirm=true, and the bucket prerequisite. This is exactly the kind of consequence disclosure a mutation tool needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense but front-loaded with the core operation before the retention-rule nuance. Some phrasing overlaps the schema's own descriptions, but for a tool with genuine GOVERNANCE/COMPLIANCE complexity the length is justified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and annotations only marking safety, the description covers prerequisites, mode semantics, the confirm requirement, and dryRun preview. Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3, but the description adds relational meaning not fully obvious from the schema: the mutual exclusivity of days and years with mode, the valid ranges, and that omitting mode sends no default retention rule. It clarifies how parameters interact rather than restating them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Set the Object Lock configuration of a Ncloud Storage bucket') and even names the underlying API path. An agent can distinguish it from the sibling ncloud_ncs_get_object_lock_configuration without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear conditions: the bucket must have been created with objectLockEnabled=true, and dryRun=true previews the XML without applying. It explains when to supply a default retention rule vs omit mode. It stops short of explicitly pointing to the get sibling as the read alternative, so not a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_put_object_retentionADestructiveIdempotent
[Ncloud Storage] Set or clear the Object Lock retention of an object (PUT /{key}?retention). GOVERNANCE can later be shortened/removed with bypassGovernanceRetention; COMPLIANCE can never be shortened or removed before retainUntilDate — it requires confirm=true. clear=true sends an empty Retention to remove retention (GOVERNANCE only, with bypass). The bucket must have Object Lock enabled; retainUntilDate must be in the future.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) | |
| mode | No | GOVERNANCE | COMPLIANCE (required unless clear=true) | |
| clear | No | true: remove the retention (sends an empty Retention). Needs bypassGovernanceRetention for GOVERNANCE; impossible for COMPLIANCE | |
| confirm | No | Required (true) when mode=COMPLIANCE, because COMPLIANCE retention is irreversible | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| retainUntilDate | No | ISO 8601 date in the future, e.g. 2027-01-01T00:00:00Z (required unless clear=true) | |
| bypassGovernanceRetention | No | Send x-amz-bypass-governance-retention: true to shorten/remove an existing GOVERNANCE retention |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, it discloses the most consequential behavior: COMPLIANCE retention can never be shortened or removed before retainUntilDate, GOVERNANCE may be overridden with bypassGovernanceRetention, and clearing only works for GOVERNANCE. This materially informs an agent about the risk of the operation and matches the idempotent/destructive hints with no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, with the purpose front-loaded and every subsequent sentence covering a distinct, high-value constraint. No filler or repeated schema text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, irreversible-capable operation with 8 parameters and no output schema, the description covers prerequisites, parameter dependencies, irreversibility, and the clear path. An agent has enough to call it correctly without reading external docs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although the schema fully documents all 8 parameters, the description adds cross-parameter semantics not obvious from individual fields: the mode/confirm dependency, the clear/bypass interaction, and the retained-bucket prerequisite. This is meaningful value beyond the 100%-covered schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-resource pair ('Set or clear the Object Lock retention of an object') and the exact API verb (PUT /{key}?retention). This clearly distinguishes it from sibling get/legal-hold tools such as ncloud_ncs_get_object_retention and ncloud_ncs_put_object_legal_hold.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear operational conditions: bucket must have Object Lock enabled, retainUntilDate must be future, clear is only for GOVERNANCE with bypass, and COMPLIANCE requires confirm=true. It does not explicitly name sibling alternatives or say 'use get_object_retention to inspect,' so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_restore_objectA
[Ncloud Storage] Request a temporary restored copy of a DEEP_ARCHIVE (Archive Class) object (POST /{key}?restore). The copy is readable with ncloud_ncs_get_object for the given number of days; check progress with ncloud_ncs_head_object (x-amz-restore). HTTP 202 = restore started, 200 = a restored copy already exists.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Key of the archived object | |
| days | No | How many days the restored copy stays available (RestoreRequest.Days) | |
| versionId | No | Version ID of the object (versioning-enabled buckets). Omit for the current version | |
| bucketName | Yes | Name of the Ncloud Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and covers it well: it discloses that the restore is temporary ('for the given number of days'), that it returns HTTP 202 for a new restore and 200 if a restored copy already exists, and that the copy is readable via get_object. This goes beyond a simple statement of intent and gives the agent actionable behavior expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first sentence delivers the core purpose and endpoint; the second packs in usage guidance and status-code semantics. Every clause earns its place and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter tool with no output schema and no annotations, the description explains the purpose, the restore lifecycle, and response semantics. Minor gaps exist: it does not mention whether 'days' has an upper bound or default, and it does not describe the response body structure. However, an agent can call the tool correctly with the provided information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all four parameters with 100% coverage, so the baseline is 3. The description loosely references the 'days' parameter ('for the given number of days') but does not add new parameter-level meaning beyond what the schema provides. It does not explain defaults, maximums, or interactions between parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Request a temporary restored copy'), the target resource ('DEEP_ARCHIVE (Archive Class) object'), and the endpoint (POST /{key}?restore). It clearly distinguishes this from sibling object tools by specifying the archive class and by referencing related operations (ncloud_ncs_get_object, ncloud_ncs_head_object) for the restore flow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: the tool is for restoring archived objects so they can be read, and it tells the agent to use ncloud_ncs_get_object after restore and ncloud_ncs_head_object to check progress. It does not explicitly name alternative tools to avoid (e.g., ncloud_restore_object), but the context is specific enough that an agent can infer when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_upload_partA
[Ncloud Storage] Upload one part of a multipart upload (PUT /{key}?partNumber&uploadId) and return its ETag. Body is text over MCP, so this suits small parts and API verification rather than bulk binary transfer. Every part except the last must be at least 5 MB (S3 convention) or CompleteMultipartUpload fails with EntityTooSmall.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) of the multipart upload target | |
| body | Yes | Content of this part | |
| uploadId | Yes | Upload ID returned by ncloud_ncs_create_multipart_upload | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| partNumber | Yes | Part number (1–10,000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and discloses important behavior: it returns an ETag, the body travels as text over MCP, and undersized non-final parts cause CompleteMultipartUpload to fail with EntityTooSmall. This gives an agent realistic expectations about the operation's constraints and failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler: the first states the action and return value, the second gives the key limitation, and the third states the failure condition. Everything earns its place and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation-style storage operation with no annotations and no output schema, the description adequately covers purpose, return value, size constraints, and failure behavior. It could add a bit more detail on the exact role of uploadId, but the schema already explains that it comes from create_multipart_upload.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds meaningful semantic context for the body parameter ('Body is text over MCP') and reinforces the part-size constraint relevant to partNumber and body. This goes beyond the generic schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Upload one part of a multipart upload' and identifies the underlying HTTP endpoint (PUT /{key}?partNumber&uploadId). It distinguishes itself from the sibling upload_part_copy by focusing on uploading a part from a body rather than copying one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear guidance that the tool is suited for small parts and API verification, and explicitly says it is not for bulk binary transfer. It also warns that every part except the last must be at least 5 MB. It stops short of naming an alternative tool, but the when/when-not context is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ncs_upload_part_copyA
[Ncloud Storage] Copy a byte range of an existing object into a part of a multipart upload (PUT /{key}?partNumber&uploadId with x-amz-copy-source). Use it to assemble or re-class objects larger than the 5 GB CopyObject limit without downloading them.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) of the multipart upload target | |
| uploadId | Yes | Upload ID returned by ncloud_ncs_create_multipart_upload | |
| bucketName | Yes | Name of the Ncloud Storage bucket | |
| copySource | Yes | Source object as {sourceBucket}/{sourceKey} (a leading slash is tolerated) | |
| partNumber | Yes | Part number (1–10,000) | |
| copySourceRange | No | Byte range to copy from the source, e.g. 'bytes=0-5242879'. Omit to copy the whole source object as this part | |
| copySourceVersionId | No | Version ID of the source object (versioning-enabled buckets) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It reveals that this is a server-side copy into a multipart part, mentions the HTTP verb and header, and notes it avoids downloading. However, it does not disclose response behavior, permission needs, or side effects such as replacing an existing part.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first sentence states the action and API mechanism, and the second gives a concrete use case. The most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the purpose and the 5 GB motivation, and the schema fully documents all seven parameters. It does not mention the broader multipart workflow (e.g., that complete_multipart_upload is needed afterward) or return values, but no output schema exists and the core call semantics are clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds minimal parameter-level context beyond mentioning 'byte range' and 'existing object', but it does not need to compensate because each parameter is already well documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Copy a byte range of an existing object into a part of a multipart upload') with the underlying HTTP API. It also names the 5 GB CopyObject limit, which distinguishes it from ncloud_ncs_copy_object and ncloud_ncs_upload_part without requiring the agent to inspect siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: use it to assemble or re-class objects larger than the 5 GB CopyObject limit without downloading. It does not explicitly list exclusions or name sibling alternatives, but the intended use case is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_add_subnetB
Add subnets to an NKS cluster (PATCH /clusters/{uuid}/add-subnet; a cluster can have at most 5 subnets)
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster | |
| subnetNoList | Yes | List of subnet numbers to add (sent as subnets[].number) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false in the annotations, the description carries most of the behavioral burden; it does add real value by disclosing the PATCH semantics and the 5-subnet ceiling, which tells the agent this is a mutating, capacity-bounded operation. However it says nothing about what happens to existing subnets, whether cluster/node-pool restarts are triggered, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with the primary action front-loaded and the endpoint/limit relegated to a parenthetical. Nothing is wasted, though the parenthetical mixes API plumbing with a genuinely useful constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a small 2-parameter mutation with a thin annotation set and no output schema, the description covers what is being changed and one limit, which is adequate but not rich. It omits side effects, failure modes (e.g. exceeding the limit), and any indication of the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so clusterUuid and subnetNoList are already fully documented in the schema; the description only echoes the concept of a subnet list. Baseline 3 applies since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Add subnets to an NKS cluster') and even names the underlying endpoint, so the agent knows exactly what the call mutates. It is distinguishable from nearby subnet-flavored siblings such as ncloud_nks_update_lb_subnet or ncloud_nks_update_node_pool_subnet, though it never names those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a hard constraint (max 5 subnets per cluster) but no guidance on when to choose this tool over node-pool or LB subnet operations, and no preconditions such as required cluster state or permissions. Usage is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_create_access_entryA
Create an IAM access entry for an NKS cluster: maps an IAM USER or ROLE (NRN) to Kubernetes groups and/or NKS access policies. Requires authType=API.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | IAM principal type | |
| entry | Yes | NRN of the IAM USER or ROLE | |
| groups | No | Kubernetes group names to bind the principal to | |
| policies | No | NKS access policies to attach (type + scope, namespaces when scope is 'namespace') | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries most of the behavioral burden. It usefully discloses the authType=API prerequisite, but says nothing about idempotency/duplicate-entry behavior, permissions required, or what happens if groups and policies are both omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence describing the operation followed by a one-line prerequisite, with the core purpose front-loaded. No filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter mutation tool with no output schema, the description covers purpose, the mapping semantics, and a key prerequisite. It leaves minor gaps (duplicate/conflict handling, permission requirements), but nothing that would cause an agent to invoke it incorrectly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (type, entry, groups, policies, clusterUuid) is already documented in the schema. The description restates the USER/ROLE-NRN and groups/policies concepts but adds no syntax, format, or constraint detail beyond the schema — the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Create) and resource (IAM access entry for an NKS cluster), and goes further by explaining the semantic effect: mapping an IAM USER or ROLE (NRN) to Kubernetes groups and/or NKS access policies. This clearly distinguishes it from the sibling list/get/update/delete_access_entry tools without requiring the schema to be opened.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a real precondition — 'Requires authType=API' — which tells the agent the cluster must be configured a certain way before this call will work. It doesn't explicitly name alternatives or state when not to use it, but the create-vs-update/delete distinction is unambiguous from the name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_create_clusterA
Create a new NKS Kubernetes cluster. Use dryRun=true to preview without creating.
G3(KVM) cluster requirements:
hypervisorCode: 'KVM' (required)
clusterType: must contain G003 (e.g., SVR.VNKS.STAND.C004.M016.G003)
k8sVersion: must use nks.2 suffix (e.g., 1.35.3-nks.2)
lbPrivateSubnetNo: Private LB subnet number (required — returns 400 without details if missing)
zoneCode: Required at cluster level when isRegional=false (default). Missing causes 400 without details.
nodePool.softwareCode: Must use FULL value from ncloud_nks_get_server_images including pipe and image number (e.g., SW.VSVR.OS.LNX64.UBNTU.SVR22.WRKND.G003|23215604)
nodePool.serverSpecCode: g3 spec code (e.g., c2-g3)
nodePool.storageSize: 100~2000GB (required)
Server-side validations added 2026-09-17 (request fails with 400 if violated):
Regional cluster (isRegional=true): every nodePool.zoneCode must match the zone of the subnets assigned to that node pool (subnetNoList). Check each subnet's zone with the VPC subnet tools before creating.
log.audit=true requires an active Cloud Log Analytics (CLA) subscription on the account — subscribe first or leave audit off and enable later with ncloud_nks_set_audit_log.
Istio is now available as an add-on (1.36+ clusters): install after creation with ncloud_nks_install_addons.
G2(XEN) vs G3(KVM) differences:
G2: clusterType contains G002, k8sVersion suffix nks.1, hypervisorCode optional
G3: clusterType contains G003, k8sVersion suffix nks.2, hypervisorCode='KVM' required
| Name | Required | Description | Default |
|---|---|---|---|
| log | No | Log settings. audit=true sends the Kubernetes audit log to Cloud Log Analytics and, since 2026-09-17, is rejected (400) unless the account has an active CLA subscription | |
| name | Yes | Cluster name (3-30 chars, lowercase+numbers+'-') | |
| vpcNo | Yes | VPC number | |
| addons | No | Add-ons to install together with the cluster | |
| dryRun | No | If true, returns a preview without actually creating | |
| zoneNo | No | Zone number — documented alternative to zoneCode | |
| authType | No | Cluster authentication mode. IAM access entries (ncloud_nks_*_access_entry) require API. ⚠️ Once set to API it cannot be changed back | |
| nodePool | No | Initial node pool configurations | |
| zoneCode | No | Zone code (e.g., KR-2). Required when isRegional is false (default). API returns 400 without details if missing for single-zone clusters | |
| kmsKeyTag | No | KMS key tag for Kubernetes secret encryption (from the Key Management Service console) | |
| isRegional | No | Multi-zone (Regional) cluster. Default: false. Public zone only (not in the Government-zone guide) | |
| k8sVersion | No | Kubernetes version (from ncloud_nks_get_versions). G3/KVM uses nks.2 suffix, G2/XEN uses nks.1 suffix | |
| regionCode | Yes | Region code (e.g., KR, SGN, JPN) | |
| subnetLbNo | No | Load balancer subnet number (legacy single LB-subnet field; conditional per the guide) | |
| clusterType | Yes | Cluster type (e.g., SVR.VNKS.STAND.C004.M016.G003 for G3, SVR.VNKS.STAND.C004.M016.G002 for G2) | |
| loginKeyName | Yes | Login key name for node access | |
| subnetNoList | Yes | Subnet number list for the cluster | |
| publicNetwork | No | Subnet network type. true=Public, false=Private (default) | |
| hypervisorCode | No | Hypervisor code: XEN (default) or KVM. Required as 'KVM' for G3 clusters | |
| lbPublicSubnetNo | No | Load balancer public subnet number. Required unless lbPublicSubnetNoList is given (Public zone) — the Government-zone guide lists it as required | |
| lbPrivateSubnetNo | No | Load balancer private subnet number. Required for G3/KVM clusters (API returns 400 without details if missing) | |
| bootstrapAccessEntry | No | Auto-create an IAM access entry for the creating principal (authType=API only) | |
| lbPublicSubnetNoList | No | Public zone only: up to 2 public LB subnet numbers in different zones (multi-zone). Alternative to lbPublicSubnetNo | |
| lbPrivateSubnetNoList | No | Public zone only: up to 2 private LB subnet numbers in different zones (multi-zone). Alternative to lbPrivateSubnetNo |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries the full disclosure burden and does so well: it names the exact 400-failure conditions (missing lbPrivateSubnetNo, missing zoneCode, audit without CLA, regional zone/subnet mismatch) and the hard immutability of authType=API. These are failure-mode and side-effect details the agent could not infer from the single annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the action sentence, then cleanly sectioned into G3 requirements, new validations, and G2-vs-G3 differences; for a 24-parameter nested tool the length is justified. There is some verbatim overlap with the schema descriptions (e.g., the softwareCode pipe warning), which is minor redundancy rather than noise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex mutating create with nested nodePool/fabricCluster objects and no output schema, the description covers prerequisites, required-field pitfalls, and follow-up actions thoroughly. It does not describe the creation response or how to poll/confirm the resulting cluster (e.g., an operation handle), which is the main remaining gap given no output schema exists to cover return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is already 100%, so the baseline is 3; the description earns above that by consolidating cross-parameter constraints (clusterType/k8sVersion/hypervisorCode coupling for G3, full-pipe softwareCode value) and by pointing at the sibling tools that supply each value (ncloud_nks_get_server_images, ncloud_nks_get_versions, ncloud_nks_get_server_specs). Much of the per-field detail nevertheless duplicates the schema, so it is not a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource ('Create a new NKS Kubernetes cluster') and immediately scopes it with the dryRun preview option. This clearly separates it from adjacent tools such as ncloud_nks_create_node_pool, ncloud_nks_create_access_entry, ncloud_ses_create_cluster, and ncloud_cdss_create_cluster, which an agent can rule out from the name plus this sentence alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete when-to-use context: prefer dryRun=true to preview, check subnet zones before regional creation, subscribe to CLA before enabling log.audit, and install add-ons afterward with ncloud_nks_install_addons. It stops short of explicit when-not-to-use guidance (e.g., choosing SES/CDSS over NKS, or deferring node pools to ncloud_nks_create_node_pool), but the operational routing it does provide is specific.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_create_node_poolA
Create a new node pool in an NKS cluster. Use dryRun=true to preview. On a Regional cluster, zoneCode is required and must match the zone of the subnets the pool uses (400 on mismatch since 2026-09-17).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Node pool name | |
| dryRun | No | If true, preview only | |
| labels | No | Node labels | |
| taints | No | Node taints | |
| zoneCode | No | Zone code (e.g., KR-1). Required for Regional clusters and, since 2026-09-17, must match the zone of the subnets assigned to this node pool — a mismatch is rejected with 400 | |
| autoscale | No | Autoscale configuration | |
| nodeCount | No | Number of nodes (required if autoscale not set) | |
| clusterUuid | Yes | UUID of the cluster | |
| storageSize | No | Storage size in GB (KVM, 100-2000) | |
| serverRoleId | No | IAM server role ID | |
| softwareCode | No | Server image code | |
| serverSpecCode | No | Server spec code (KVM) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the sparse annotations (only destructiveHint=false), the description discloses preview behavior (dryRun) and a validation rule with an exact error code and effective date (400 on zone mismatch since 2026-09-17). This adds meaningful behavioral context about error conditions. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three focused sentences: purpose first, then preview tip, then key constraint. No filler or repetition beyond what's needed. Front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the most critical non-obvious constraint (Regional cluster zone matching) and the preview workflow. The schema covers all 12 parameters, including nested objects. No output schema, but return values are typical for a create and less critical than the error condition disclosed. Could mention async behavior but not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented. The description only repeats zoneCode and dryRun behavior already present in the schema, adding no new parameter-level meaning. Baseline 3 is appropriate given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Create'), resource ('node pool'), and context ('in an NKS cluster'). Clearly distinguishes from sibling node pool operations like list/update/delete by naming the create action. No ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear contextual guidance for when the tool applies: preview via dryRun and the Regional-cluster zoneCode requirement. Does not name alternative tools (e.g., update/list), but the context is clear enough to guide invocation. Lacks explicit when-not-to-use/exclusion statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_delete_access_entryADestructiveIdempotent
⚠️ Destructive: Delete an IAM access entry from an NKS cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute | |
| entryUuid | Yes | IAM access entry UUID to delete | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered. The description adds the ⚠️ emphasis and the confirm gate, but confirm is already fully documented in the schema, so the added value is marginal. No mention of irreversibility or post-delete state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, warning front-loaded, zero filler. Every clause carries information and the action verb leads.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter delete whose annotations already carry the danger profile and whose schema is fully documented, the description is essentially complete. Only a note on irreversibility or permission requirements would improve it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so clusterUuid, entryUuid, and confirm are already documented. The description only repeats the confirm=true requirement, adding no syntax or format detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Delete) and resource (IAM access entry from an NKS cluster), which clearly separates it from siblings like ncloud_nks_create_access_entry and ncloud_nks_update_access_entry. It does not name a sibling explicitly, so it lands solidly at 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the destructive warning and the required confirm flag, but the description never states when to use this versus create/update access entry, nor any prerequisite (e.g. ownership or cluster state). Adequate but with a clear guidance gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_delete_addonADestructiveIdempotent
⚠️ Destructive: Uninstall an add-on from an NKS cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute | |
| addonRef | Yes | Installed add-on reference: the add-on name OR the installed add-on's UUID | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true. The description adds value by explaining the confirmation mechanism ('Set confirm=true to execute') and reinforcing the destructive nature with a warning emoji. This goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with an emoji, efficiently conveying the action, destructive warning, and execution requirement. No superfluous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the three parameters are fully described in the schema, and annotations provide the safety profile, the description is complete enough. It explains the critical execution condition (confirm=true) and the destructive nature. No output schema exists, so return values are not expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the schema already explains all three parameters. The description only reiterates the confirm parameter's purpose. It adds little beyond the schema, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Uninstall an add-on from an NKS cluster.' It specifies the resource (add-on) and the target (NKS cluster), and mentions the critical 'confirm' parameter. This distinguishes it from sibling tools like ncloud_nks_update_addon or ncloud_nks_install_addons.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description warns 'Destructive' and instructs to set confirm=true, but it does not explicitly state when to use this tool versus alternatives (e.g., when to use ncloud_nks_update_addon instead). The usage context is implied but not directly clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_delete_clusterADestructiveIdempotent
⚠️ Destructive: Permanently delete an NKS Kubernetes cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| clusterUuid | Yes | UUID of the cluster to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description adds critical behavior: the operation is permanent and requires explicit confirmation via the confirm parameter. This goes beyond the annotation by explaining the execution guard, which is essential for an agent to use the tool safely.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with the destructive warning first, then the action, then the required confirmation. Every sentence serves a distinct purpose and there is no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete tool with only two parameters, full schema coverage, and annotations providing safety hints, the description is sufficient. It covers the purpose, the confirmation requirement, and the permanence, leaving no critical gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both confirm and clusterUuid clearly described in the input schema. The description's mention of 'Set confirm=true' reinforces the confirm parameter's role but adds no new parameter-specific detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Permanently delete') and the resource ('an NKS Kubernetes cluster'), leaving no ambiguity about what the tool does. This distinguishes it from sibling tools like ncloud_nks_list_clusters or ncloud_nks_create_cluster.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear operational guidance by warning that the operation is destructive and requiring 'confirm=true to execute'. It does not explicitly name alternatives or exclusions, but the context of permanent deletion clearly implies this is for removing an entire cluster, not for partial operations like node pool deletion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_delete_node_poolADestructiveIdempotent
⚠️ Destructive: Permanently delete a node pool from an NKS cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute | |
| instanceNo | Yes | Node pool instance number to delete | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark destructiveHint and idempotentHint, but the description adds valuable behavioral context: the deletion is permanent and requires confirm=true to execute. This goes beyond the structured annotations by explaining irreversibility and the safety guard, which is critical for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning symbol, clearly stating the destructive action and the confirmation requirement. Every word contributes meaning; there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete operation with comprehensive schema and annotations, the description adequately covers the operation's purpose, the permanence, and the confirmation gate. It does not explain return values, but no output schema exists, and the annotation set covers idempotency and destructiveness sufficiently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage, describing all three parameters including the confirm requirement. The description's mention of confirm=true merely restates the schema's own description ('Must be true to execute'), adding no new semantic insight beyond what structured fields already convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('delete'), a specific resource ('node pool'), and a clear scope ('from an NKS cluster'). It clearly distinguishes this tool from similar siblings like ncloud_nks_delete_worker_node and ncloud_nks_delete_cluster by naming the exact resource being deleted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys the operation's context: permanently deleting a node pool from an NKS cluster, with a mandatory confirmation flag. It does not explicitly name alternatives or when-not-to-use scenarios, but the resource-specific wording makes the intended use unambiguous among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_delete_worker_nodeADestructiveIdempotent
⚠️ Destructive: Delete a specific worker node from an NKS cluster. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute | |
| instanceNo | Yes | Instance number of the worker node to delete | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reinforces the destructiveHint annotation with a warning emoji and adds the confirm-gating behavior, which is not fully captured by annotations alone. The idempotentHint is not contradicted or elaborated, but the description adds meaningful safety context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a concise warning prefix. Every word earns its place—it states the action, the target, and the critical execution requirement without fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, three-parameter tool with clear annotations and schema, the description covers the essential behavior: destructive action, target, and confirmation gate. It lacks details about prerequisites or post-conditions, but these are not critical given the tool's simplicity and the presence of annotations and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all three parameters, including the confirm flag's meaning. The description adds no new parameter information but does highlight the confirm=true requirement, which is redundant with the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Delete'), the resource ('specific worker node'), and the context ('from an NKS cluster'). It distinguishes from sibling tools like ncloud_nks_delete_node_pool by specifying 'specific worker node' rather than a node pool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear context for use (deleting a worker node) and a critical usage requirement ('Set confirm=true to execute'). It does not mention alternatives or exclusions, but the confirm flag is a strong, actionable guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_access_entryARead-only
Get one IAM access entry of an NKS cluster by its UUID
| Name | Required | Description | Default |
|---|---|---|---|
| entryUuid | Yes | IAM access entry UUID (from ncloud_nks_list_access_entries) | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safe-read profile is already covered. The description adds that this is a single-item UUID lookup, but says nothing about returned fields, permissions, or sensitivity of IAM access entry data, so it adds only modest context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence that front-loads the verb and resource with zero filler. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only get-by-UUID with no output schema and readOnlyHint already present, the description is nearly sufficient. It could optionally state what an access entry contains or any permission requirements, but an agent has enough to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both clusterUuid and entryUuid are already documented in the schema. The description's 'of an NKS cluster' and 'by its UUID' merely restate those parameters without adding format, sourcing, or validation detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('one IAM access entry of an NKS cluster') and adds the lookup key ('by its UUID'). This clearly distinguishes it from the sibling ncloud_nks_list_access_entries and from create/update/delete variants.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance or alternatives; it never points to ncloud_nks_list_access_entries as the way to obtain the required entryUuid, nor says when a direct fetch is preferable. Usage is only implied by the singular 'Get one'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_available_addonARead-only
Get details of an installable add-on (Add-on Manager catalog; requires Kubernetes 1.36+), including its installable versions for the given Kubernetes version.
| Name | Required | Description | Default |
|---|---|---|---|
| addonName | Yes | Add-on name (from ncloud_nks_list_available_addons) | |
| k8sVersion | Yes | Kubernetes version in major.minor.patch (e.g., 1.36.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds context about requiring K8s 1.36+ and returning installable versions, but lacks further behavioral disclosure (e.g., rate limits, error cases).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 20 words, includes all critical information: purpose, source, requirement, and output. No redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (2 params, no output schema), the description is sufficient. It explains what the tool does and what it requires, though it could explicitly state that it returns details of a single addon.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters. The overall description reinforces the meaning but adds minimal extra beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'details of an installable add-on', and the scope 'for the given Kubernetes version'. It distinguishes from sibling tools like list versions and list available addons.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a prerequisite (Kubernetes 1.36+) and implies the addonName comes from ncloud_nks_list_available_addons, but does not explicitly state when to use this versus alternatives like ncloud_nks_get_available_addon_version.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_available_addon_versionARead-only
Get details of a specific add-on version (Add-on Manager catalog; requires Kubernetes 1.36+), including its configuration schema for configurationValues.
| Name | Required | Description | Default |
|---|---|---|---|
| version | Yes | Add-on version (from ncloud_nks_get_available_addon) | |
| addonName | Yes | Add-on name | |
| k8sVersion | Yes | Kubernetes version in major.minor.patch (e.g., 1.36.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds that it returns configuration schema and requires K8s 1.36+, which provides some additional context but does not substantially expand behavioral disclosure beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with all essential information: purpose, constraints (K8s 1.36+), and output hint (configuration schema). No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 required parameters and no output schema. The description hints at the return content (configuration schema) and notes a key constraint. While not exhaustive, it covers the main points adequately for a simple get operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage of parameter descriptions. The description does not add further parameter-specific meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Get details of a specific add-on version' and mentions the inclusion of configuration schema. It distinguishes from siblings like ncloud_nks_get_available_addon by focusing on a version, not just an add-on.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite (Kubernetes 1.36+) but does not explicitly guide when to use this tool vs alternatives like ncloud_nks_get_available_addon. Usage is implied rather than clearly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_clusterARead-only
Get detailed information about a specific NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description is consistent with that. However, the description adds no extra behavioral context such as what fields are returned, whether the response is paginated, or any caveats. It does not contradict the annotation but also provides minimal added value beyond it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that directly states the tool's purpose without any redundant or irrelevant information. It is extremely concise and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool with one parameter and a readOnly annotation, the description is adequate but not rich. It does not specify what 'detailed information' includes (e.g., status, node pools, network config), which would be helpful since there is no output schema. Still, the tool's simplicity and annotations reduce the need for extensive elaboration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for the single parameter clusterUuid, which is clearly documented as 'UUID of the cluster to query'. The tool description does not add any additional parameter meaning or usage nuance, so the schema carries the full burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and clearly identifies the resource as 'a specific NKS cluster', distinguishing it from list operations like ncloud_nks_list_clusters. The inclusion of 'specific' aligns with the required clusterUuid parameter, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is used when a specific cluster UUID is already known, but it does not explicitly state when to use this over alternatives like list_clusters, nor does it mention any prerequisites or exclusions. Guidance is only implied by the wording and the required parameter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_cluster_addonARead-only
Get a single add-on installed on an NKS cluster, including status, configuration, and version.
| Name | Required | Description | Default |
|---|---|---|---|
| addonRef | Yes | Installed add-on reference: the add-on name OR the installed add-on's UUID | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description only adds that it returns status, configuration, and version. It does not mention error scenarios or required permissions, but given the annotation coverage, it provides adequate extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence (14 words) that is easy to parse. However, it could be structured with bullet points or sections to improve readability. The conciseness is good but leaves out some useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only get tool, the description adequately describes the returned data (status, configuration, version). No output schema exists, so the mention of what is returned is helpful. It could mention the format or potential error cases, but overall it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (addonRef, clusterUuid). The description adds no additional meaning beyond the schema, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves a single add-on installed on an NKS cluster, with specific details (status, configuration, version). The verb 'Get' and resource 'add-on' are precise, and it distinguishes from siblings like ncloud_nks_list_cluster_addons or ncloud_nks_get_available_addon.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., for listing all addons use ncloud_nks_list_cluster_addons). The description lacks any context for selection or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_ip_aclBRead-only
Get IP ACL configuration for an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already establishes this is a safe read operation. The description adds no behavioral context beyond that—no mention of what the configuration includes, any preconditions, or response format. It simply restates the tool's purpose without revealing any additional traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word carries meaning, making it appropriately concise for a simple read operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, read-only annotation, no output schema), the description is largely sufficient. However, it does not specify what the IP ACL configuration contains or what the response will look like, which would be useful without an output schema. A 4 reflects this minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (clusterUuid is described as 'UUID of the cluster'), so the schema fully documents the only parameter. The description does not add any extra semantic detail, earning the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get IP ACL configuration for an NKS cluster' uses the specific verb 'Get' and identifies a precise resource ('IP ACL configuration') and scope ('NKS cluster'). It clearly distinguishes from the sibling tool ncloud_nks_set_ip_acl, which modifies the configuration, and from other NKS getters like ncloud_nks_get_cluster.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention the complementary setter ncloud_nks_set_ip_acl, nor any exclusions or prerequisites. The agent must infer usage solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_kubeconfigARead-only
Retrieve the kubeconfig for a specified NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the readOnlyHint annotation. It does not disclose what the kubeconfig response contains, authentication requirements, or any other operational details. The annotation already communicates that this is a safe read operation, so the description contributes little additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence of ten words, front-loaded with the action ('Retrieve') and the resource ('kubeconfig'), making it concise and immediately parsable with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple getter with one parameter and a read-only annotation, the description is adequate. It could have mentioned the kubeconfig content or return format, but given the low complexity and the useful annotation, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the single parameter (clusterUuid with description 'UUID of the cluster'), so the schema coverage is 100%. The description's reference to 'a specified NKS cluster' mirrors the schema without adding new semantic detail. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Retrieve' and clearly identifies the resource as the kubeconfig for an NKS cluster. This distinguishes it from sibling tools like ncloud_nks_reset_kubeconfig (which resets) and ncloud_nks_get_cluster (which gets cluster info).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives or mention any prerequisites. Usage is implied by the tool's name and straightforward retrieval purpose, but no explicit guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_oidcARead-only
Get OIDC (OpenID Connect) provider configuration for an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, and the description's 'Get' is consistent with that. The description adds no further behavioral context (e.g., whether the cluster must exist, error scenarios, or what specifically is returned), but it does not contradict the annotation either.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no redundant words. It front-loads the action and resource, and there is no filler or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required parameter, no nested objects, no output schema) and the clear purpose, the description is largely complete. However, it does not describe the return value structure (e.g., what an OIDC configuration contains), which could be useful given there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; the single parameter 'clusterUuid' is described as 'UUID of the cluster', which is adequate. The description does not add any extra parameter semantics beyond this, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('OIDC provider configuration for an NKS cluster'), and it distinguishes the tool from siblings like ncloud_nks_set_oidc by specifying a read operation. The naming and description are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided beyond the action itself. The description does not mention when to use this tool versus ncloud_nks_set_oidc (for configuring OIDC) or ncloud_nks_get_cluster (for general cluster info), nor does it specify any prerequisites or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_server_imagesARead-only
List available server image types for NKS cluster/node pool creation
| Name | Required | Description | Default |
|---|---|---|---|
| hypervisorCode | No | Hypervisor type code filter: XEN (default) or KVM |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, and the description's 'List' aligns with that. The description adds the context that images are for NKS cluster/node pool creation but does not disclose additional behaviors such as response format or default hypervisorCode (which is in the schema). No contradiction found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action verb 'List', and contains no unnecessary filler. It earns its place by clearly stating the resource and purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple tool with one optional parameter and a readOnly annotation. The description clearly states what it lists and for what purpose. Since there is no output schema, the description could be more explicit about the response structure, but 'server image types' is sufficiently clear for this low-complexity operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the sole parameter hypervisorCode. The tool description adds no extra parameter semantics beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), a specific resource ('available server image types'), and a clear context ('for NKS cluster/node pool creation'). This distinguishes it from sibling tools like ncloud_get_server_images (general server images) and ncloud_nks_get_server_specs (server specs, not images).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for NKS cluster/node pool creation, which gives clear context. However, it does not explicitly state when not to use this tool or name alternative tools (e.g., ncloud_get_server_images for non-NKS scenarios), so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_server_specsARead-only
List available server specifications for NKS cluster/node pool creation. Requires softwareCode (from ncloud_nks_get_server_images) and zoneCode or zoneNo.
| Name | Required | Description | Default |
|---|---|---|---|
| zoneNo | No | Zone number. Required if zoneCode not provided. | |
| zoneCode | No | Zone code (e.g., KR-1). Required if zoneNo not provided. | |
| softwareCode | Yes | Server image code (value from ncloud_nks_get_server_images) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation is consistent with the 'List' action, and the description adds valuable context about the dependency on ncloud_nks_get_server_images. However, it does not disclose potential response format, pagination, or other behavioral traits beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, no filler or redundant information. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with full schema coverage and a read-only annotation, the description is adequate. It clearly states purpose and prerequisites. It could optionally mention the return value (list of server specifications), but the tool name and nature make this obvious.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all parameters with descriptions, achieving 100% coverage. The description adds minimal extra meaning, mostly repeating the dependency on ncloud_nks_get_server_images and the zoneCode/zoneNo mutual requirement already present in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: 'List available server specifications for NKS cluster/node pool creation.' It uses a specific verb ('List'), identifies the resource ('server specifications'), and scopes it to NKS cluster/node pool creation, distinguishing it from sibling tools like ncloud_get_server_specs or ncloud_ses_get_server_specs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by stating this is for NKS cluster/node pool creation and listing required prerequisites (softwareCode from ncloud_nks_get_server_images and zoneCode or zoneNo). However, it does not explicitly mention when not to use it or name alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_get_versionsARead-only
List available Kubernetes versions for NKS cluster creation
| Name | Required | Description | Default |
|---|---|---|---|
| hypervisorCode | No | Hypervisor code filter: XEN (default) or KVM | |
| isRegionalSupport | No | Filter only Regional (multi-zone) cluster supported versions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds the specific context that it targets cluster creation versions, which is helpful, but it does not disclose any additional behavioral traits such as return format, pagination, or defaults. With the annotation present, the description provides minimal extra value beyond the structured data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the tool's purpose. Every word earns its place, and there is no redundant or tangential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with optional parameters and read-only annotations, the description is adequate and complete. It clearly identifies the tool's role in the NKS workflow, and the schema handles parameter details. However, it does not describe the shape of the response, which could be useful but is not critical for a list endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters (hypervisorCode and isRegionalSupport) with clear descriptions, so the schema coverage is 100%. The description adds no additional parameter-level meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and specific resource 'available Kubernetes versions for NKS cluster creation'. It is unambiguous and distinguishes this tool from similar listing tools like ncloud_ses_get_versions or ncloud_cdss_get_kafka_versions by explicitly mentioning NKS.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for NKS cluster creation' implies when to use this tool, but there is no explicit guidance on when not to use it or which alternatives exist. Sibling tools like ncloud_nks_upgrade_cluster are not mentioned, leaving usage context somewhat implicit rather than clearly delineated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_install_addonsA
Install one or more add-ons on an NKS cluster (Add-on Manager, k8s 1.36+). Use dryRun=true to preview without installing.
| Name | Required | Description | Default |
|---|---|---|---|
| addons | Yes | One or more add-ons to install | |
| dryRun | No | If true, returns a preview without actually installing | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint=false, consistent with the install action. The description adds behavioral traits: the tool requires a minimum Kubernetes version (1.36+), and the dryRun parameter allows preview without actual installation. This provides useful context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences. It front-loads the core purpose and version constraint, then adds the dry-run hint. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a moderately complex tool with nested parameters, the description is brief and lacks details on return values (no output schema). While the schema covers parameter definitions, the description could reference the listing tool for add-on names and explain conflict resolution. It is adequate but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; all parameters are documented. The description only reiterates the dry-run option ('preview without installing'), which adds minimal value over the schema. It does not explain the addons array structure or configurationValues beyond what schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool installs add-ons on an NKS cluster, specifying a Kubernetes version requirement (k8s 1.36+) and the dry-run option. It distinguishes itself from sibling add-on tools (list, update, delete) by the verb 'install' and the inclusion of preview behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some guidance by suggesting dry-run for preview, but it does not explicitly state when to use this tool versus alternatives like ncloud_nks_list_available_addons or ncloud_nks_update_addon. The context of k8s 1.36+ implies a prerequisite, but no direct comparison with siblings is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_list_access_entriesARead-only
List IAM access entries of an NKS cluster (requires authType=API on the cluster)
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description contributes the authType=API cluster precondition, which is useful context beyond the annotations, but it says nothing about permissions, pagination, or result volume.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the action first and appends the precondition in parentheses. No redundant or filler text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with full schema coverage and no output schema, purpose plus precondition is close to complete. Return shape and pagination behavior are not addressed, but the essential call information is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single clusterUuid parameter is already documented in the schema. The description adds no syntax, format, or sourcing detail beyond what the schema provides, so baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (IAM access entries of an NKS cluster), which clearly separates it from the single-entry sibling ncloud_nks_get_access_entry and the mutating create/update/delete siblings. It stops short of explicitly naming those siblings, so it lands at a clear-but-not-differentiated 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical "requires authType=API on the cluster" gives a concrete precondition the agent must check before calling, which is genuine usage context. It does not name an alternative tool or a when-not condition, so it is not a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_list_available_addonsARead-only
List add-ons installable on an NKS cluster for a given Kubernetes version (Add-on Manager catalog; Add-on Manager is only available on Kubernetes 1.36+ clusters). Requires k8sVersion. The catalog includes components delivered as add-ons such as the NAVER Cloud Global DNS (ExternalDNS) webhook provider and, since 2026-09-17, Istio (service mesh); the available add-ons vary by Kubernetes version and region.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination | |
| size | No | Page size for pagination | |
| k8sVersion | Yes | Kubernetes version in major.minor.patch (e.g., 1.36.0). Use the version from ncloud_nks_get_versions without the -nks.N suffix |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations carry readOnlyHint=true, which the description aligns with. Beyond the annotation, it adds meaningful behavioral context: the 1.36+ availability constraint, that results vary by Kubernetes version and region, and concrete catalog contents (ExternalDNS, Istio since 2026-09-17). No contradiction with annotations; the description adds value beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two information-dense sentences with the purpose front-loaded, but the text is a bit cluttered: 'Requires k8sVersion' repeats the schema, and the Istio date ('since 2026-09-17') is a niche detail that could be trimmed. Every fragment mostly earns its place, but the structure could be cleaner.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-param tool with no output schema, the description conveys purpose, required parameter, availability constraint, content examples, and variation factors. The main gap is the absence of return-value description (since there is no output schema), but for a list catalog the return shape is fairly evident. Reasonably complete overall.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the k8sVersion description is already detailed (including guidance to strip the -nks.N suffix). The description adds minor interpretive value by noting the catalog varies by version and region, and it redundantly restates 'Requires k8sVersion' which the schema's required array already conveys. Baseline 3 is appropriate since the schema carries the parameter burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'List add-ons installable on an NKS cluster for a given Kubernetes version'. The word 'installable' plus 'Add-on Manager catalog' implicitly distinguishes this from siblings like ncloud_nks_list_cluster_addons (installed add-ons), but it does not explicitly name any sibling. Clear and specific, though differentiation is implicit rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides some when-to-use context: 'Add-on Manager is only available on Kubernetes 1.36+ clusters' tells an agent when this catalog exists, and 'Requires k8sVersion' flags the dependency. However, it offers no explicit alternatives or exclusions (e.g., 'for installed add-ons on a cluster use ncloud_nks_list_cluster_addons'). Usage context is implied but not fully developed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_list_cluster_addonsARead-only
List add-ons currently installed on an NKS cluster, with their versions and status.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination | |
| size | No | Page size for pagination | |
| status | No | Filter by add-on status | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint: true, so the description adds limited behavioral detail. It mentions returned fields (versions and status) but does not discuss pagination, filtering via the status parameter, or any other operational characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that efficiently conveys the tool's purpose. Every word earns its place with no redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and four parameters, the description covers the core functionality but omits important details about pagination, filtering, and response structure. For a simple list tool, it is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all parameters. The description does not add additional meaning beyond what the schema provides, such as clarifying that page and size control pagination or that status filters results.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (add-ons installed on an NKS cluster), and what information is returned (versions and status). It distinguishes from sibling tools like ncloud_nks_list_available_addons by specifying 'currently installed'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this tool versus alternatives such as ncloud_nks_get_cluster_addon for a single addon or ncloud_nks_install_addons for installation. No usage context or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_list_clustersARead-only
List all NKS (Ncloud Kubernetes Service) clusters in the current region
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds the 'current region' scoping constraint, but does not describe return format, pagination, or ordering. With annotations covering the safety profile, this is adequate but not rich in additional behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or redundant information. It expands the NKS acronym, states the action (list), the resource (clusters), and the scope (current region), all in one concise line.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list operation with clear purpose and scope, the description is sufficient. It does not describe the response contents, but given the simple nature and absence of an output schema, this is acceptable. The description is not severely incomplete and supports correct tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema coverage is effectively 100%. The description adds contextual meaning by clarifying the 'current region' scope, which is not a parameter but a useful environmental constraint. Baseline for 0 params is 4, and the description does not contradict the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource structure: 'List all NKS (Ncloud Kubernetes Service) clusters' and adds 'in the current region' as scope. This clearly distinguishes it from sibling tools like ncloud_nks_get_cluster (single cluster) and ncloud_nks_list_node_pools (node pools).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when you need to enumerate all NKS clusters in the current region. It provides clear context but does not explicitly mention when not to use it or point to alternatives such as ncloud_nks_get_cluster for detailed cluster info. This fits 'clear context, no exclusions'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_list_node_poolsARead-only
List all node pools in a specified NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster | |
| hypervisorCode | No | Hypervisor filter: XEN (default) or KVM |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already declares this a safe read, so the bar is lower. The description adds only the cluster-scoping context, without disclosing return shape, pagination behavior, or empty-result handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the scope qualifier follows the core action cleanly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with annotations covering safety and no output schema, this is roughly adequate. Still, it omits any mention of the hypervisor filter's effect on results and gives no sense of what a returned node pool contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (clusterUuid and hypervisorCode) are fully documented in the schema. The description references the cluster scope but says nothing about the hypervisor filter or its XEN/KVM enum, so it adds little beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb (List) and resource (node pools) scoped to an NKS cluster, which lets an agent distinguish it from write siblings like ncloud_nks_create_node_pool or ncloud_nks_delete_node_pool. It does not, however, name any sibling explicitly or clarify the relationship to ncloud_nks_list_worker_nodes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the 'List' verb; there is no explicit when-to-use guidance, no note on prerequisites (e.g., a valid cluster UUID being required), and no routing to alternatives such as list_worker_nodes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_list_worker_nodesARead-only
List worker nodes in an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a read-only operation. The description adds minimal behavior beyond that—it identifies the resource scope ('in an NKS cluster') but doesn't disclose any additional traits like pagination, filtering, or required cluster UUID context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with clear structure, containing no unnecessary words or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one required parameter, read-only annotation, and no output schema, the description adequately conveys the core function. It lacks any mention of return content or edge cases but remains sufficient for basic selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single clusterUuid parameter ('UUID of the cluster'). The description adds no further semantic meaning beyond the schema, which is sufficient for a one-parameter tool, hence baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'worker nodes in an NKS cluster', differentiating it from sibling tools like ncloud_nks_list_node_pools which operate on a different resource (node pools).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_nks_list_node_pools or ncloud_nks_get_cluster. Usage context is only implied by the simple 'list' verb, with no exclusions or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_reset_kubeconfigB
Reset the kubeconfig credentials for a specified NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for disclosing behavior. It indicates a mutating action ('reset') but does not explain side effects such as invalidating existing kubeconfig files, potential downtime, or required permissions. The lack of such detail is a significant gap for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, straightforward sentence that gets directly to the point. It is appropriately concise with no redundant or irrelevant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple with one parameter and no output schema, the description lacks essential context for a mutating operation. It explains what it does but not why or when it would be needed, nor the consequences. This is acceptable for a minimum viable description but leaves notable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully documents the only parameter (clusterUuid) with a clear description. The tool description adds no extra semantic value beyond restating that the operation targets a specified cluster. Baseline of 3 is appropriate given 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (reset) and the resource (kubeconfig credentials for an NKS cluster). This distinguishes it from sibling tools like ncloud_nks_get_kubeconfig, which retrieves credentials, and other cluster management operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description only states what it does, not the situations that warrant resetting kubeconfig or any exclusions. This leaves the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_set_audit_logAIdempotent
Configure audit log collection via Cloud Log Analytics (CLA) for an NKS cluster. Since 2026-09-17 enabling it (audit=true) is rejected with 400 unless the account has an active CLA subscription — subscribe to Cloud Log Analytics first.
| Name | Required | Description | Default |
|---|---|---|---|
| audit | Yes | Whether to enable audit log collection (true/false) | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering safety. The description adds the behavioral fact that enabling without a CLA subscription will be rejected with 400, and provides a date-sensitive policy (since 2026-09-17). This goes beyond the structured annotations and helps the agent anticipate errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first states the core function, the second delivers a crucial caveat. Information is front-loaded and every word earns its place. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple two-parameter schema, full parameter descriptions, and no output schema, the description covers the essential usage details. It includes the critical prerequisite and error scenario. The idempotent and non-destructive annotations further round out the context. Nothing critical is missing for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover both parameters (audit boolean, clusterUuid string) at 100%. The description references 'audit=true' but that merely echoes the schema's 'true/false' explanation. No new semantic detail is added beyond what the schema already provides, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (configure audit log collection) on a specific resource (NKS cluster) via a specific service (Cloud Log Analytics). It clearly distinguishes from sibling tools like ncloud_nks_set_ip_acl or ncloud_nks_set_return_protection, which handle different settings. The mention of 'audit=true' clarifies the toggle behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a critical usage condition: enabling audit log collection requires an active CLA subscription, otherwise a 400 error is returned. It tells the agent to subscribe first. It does not explicitly mention alternatives, but the purpose is distinct from siblings, so the primary usage context is clear. The prerequisite is a valuable guideline for when to use and how to avoid failure.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_set_ip_aclBIdempotent
Configure IP ACL for an NKS cluster to restrict API server access. defaultAction (allow|deny) is required and applies to addresses not matched by entries.
| Name | Required | Description | Default |
|---|---|---|---|
| entries | No | IP ACL entries (optional) | |
| clusterUuid | Yes | UUID of the cluster | |
| defaultAction | Yes | Default action for addresses not matched by any entry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, so the safety profile is partly covered. The description adds that defaultAction is required and applies to unmatched addresses, but it does not disclose whether existing ACL entries are replaced or merged, nor authentication requirements. This is additional context, but incomplete for a mutation/config tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly written sentences. The core purpose is front-loaded, and the required defaultAction behavior is stated without filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimally adequate for a config tool whose schema is fully documented and annotations cover idempotency/non-destructiveness. However, it omits key behavioral context such as whether the provided entries replace or augment existing ACL rules, which an agent would need to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters in detail. The description restates the defaultAction behavior that the schema also describes, but adds no meaningful syntax, constraints, or format details beyond structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Configure) and resource (IP ACL for an NKS cluster), plus the security goal of restricting API server access. It is clear, but does not explicitly differentiate from sibling tools such as ncloud_nks_get_ip_acl, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. It implies usage by stating the tool configures an IP ACL, but an agent gets no routing help among the many NKS and ACL-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_set_oidcBIdempotent
Configure OIDC (OpenID Connect) authentication for an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | OIDC activation status (true=enable, false=disable) | |
| clientId | Yes | OIDC provider Client ID | |
| issuerURL | Yes | OIDC provider URL | |
| clusterUuid | Yes | UUID of the cluster | |
| groupsClaim | No | JWT claim for groups | |
| groupsPrefix | No | Prefix for groups claim | |
| requiredClaim | No | Required claim as key=value pair | |
| usernameClaim | No | JWT claim for username | |
| usernamePrefix | No | Prefix for username claim |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, so the agent knows it is a safe, repeatable operation. However, the description adds no extra behavioral context, such as the effect of setting status=false (disabling OIDC), potential impact on cluster access, or that it replaces existing OIDC configuration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or redundant details. It efficiently states the tool's purpose without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 9 parameters and no output schema, the description only provides a terse purpose statement. It does not mention the role of the required 'status' parameter (enable/disable), potential side effects, or how this tool relates to ncloud_nks_get_oidc. For a complex configuration operation, this level of context is insufficient for an agent to fully understand the tool's impact.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all 9 parameters, giving 100% coverage. The description itself adds no parameter-specific information, so it does not improve upon the schema. Baseline of 3 is appropriate given the strong schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Configure' with a clear resource ('OIDC authentication') and target ('NKS cluster'). It clearly distinguishes this from the sibling tool ncloud_nks_get_oidc, which retrieves OIDC settings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention the complementary ncloud_nks_get_oidc tool, nor does it state any prerequisites or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_set_return_protectionAIdempotent
Configure return (deletion) protection for an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| clusterUuid | Yes | UUID of the cluster | |
| returnProtection | Yes | Enable/disable deletion protection |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is known. The description merely restates 'configure return (deletion) protection' without adding behavioral specifics such as whether enabling protection blocks deletion until disabled or the effect of re-applying the same value. No contradiction, but little additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the action and resource. Every word contributes; no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation with full schema coverage and annotations indicating idempotent/non-destructive behavior, the description is adequate. It lacks details about return values or side effects, but no output schema exists and the operation is straightforward, so completeness is reasonable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of the two parameters with clear descriptions for clusterUuid and returnProtection. The description does not provide additional semantic depth beyond what the schema already states, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Configure' and names the exact resource 'return (deletion) protection for an NKS cluster'. It clearly distinguishes from sibling tools like ncloud_nks_delete_cluster, which performs actual deletion, and the parenthetical '(deletion)' disambiguates the term 'return protection'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to set deletion protection on an NKS cluster, but it does not provide explicit when-to-use guidance or contrast with alternatives. There is no mention of prerequisites such as cluster state or permissions, and no exclusion of scenarios like already-enabled protection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_access_entryAIdempotent
Update the Kubernetes groups and/or NKS access policies of an IAM access entry (PUT — the supplied lists replace the existing ones)
| Name | Required | Description | Default |
|---|---|---|---|
| groups | No | Kubernetes group names (replaces the existing list) | |
| policies | No | NKS access policies (replaces the existing list) | |
| entryUuid | Yes | IAM access entry UUID | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose idempotency and non-destructiveness, and the description adds the important behavioral detail that supplied groups and policies replace existing lists. It does not cover auth requirements, rate limits, or what happens when a field is omitted, but the replacement semantics are a meaningful addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single front-loaded sentence with no wasted words. The essential operation and replacement behavior are conveyed immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema, annotations, and a 4-parameter update tool, the description is mostly sufficient: it states the updated fields and replacement semantics. It could more explicitly note that at least one of groups or policies must be supplied, and no output schema exists to cover return behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented. The description mentions groups and policies but adds no syntax, format, or constraint information beyond what the schema and its field descriptions provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Update), resource (IAM access entry), and the fields affected (Kubernetes groups and NKS access policies). It does not explicitly name or differentiate from sibling tools such as create_access_entry or delete_access_entry, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The PUT note and 'and/or' wording give implied usage context, but the description never states when to use this tool versus siblings or any prerequisites. It provides no explicit alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_addonAIdempotent
Update an add-on installed on an NKS cluster — change its version and/or configurationValues. At least one of version/configurationValues/resolveConflicts must be provided.
| Name | Required | Description | Default |
|---|---|---|---|
| version | No | Target version. Omit to keep the current version | |
| addonRef | Yes | Installed add-on reference: the add-on name OR the installed add-on's UUID | |
| clusterUuid | Yes | UUID of the cluster | |
| resolveConflicts | No | Conflict resolution: Overwrite (default) | Preserve | |
| configurationValues | No | Helm values override as a JSON-object STRING. An empty string resets to {} |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the agent knows this is a safe, non-destructive operation. The description adds the constraint that at least one of version/configurationValues/resolveConflicts must be provided, which is useful. However, it does not elaborate on response behavior or other nuances.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the core purpose, and efficiently conveys the action, resource, and key constraint. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (5 parameters, 2 required) and the presence of comprehensive schema and annotations, the description adequately covers the core purpose and constraint. It leaves no major gaps for an agent to misunderstand.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are thoroughly described in the schema. The description reiterates that version and configurationValues are changeable and mentions resolveConflicts in the constraint, but does not add significant new semantic meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (update), the resource (add-on on NKS cluster), and what can be changed (version, configurationValues). It includes a necessary precondition (at least one of version/configurationValues/resolveConflicts must be provided). This distinguishes it from sibling tools like ncloud_nks_install_addons or ncloud_nks_delete_addon.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the tool's purpose and the requirement for at least one of the three parameters. While it doesn't explicitly mention alternatives, the sibling list includes install and delete addon tools, providing implicit guidance on when to use this update tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_auth_typeAIdempotent
Update authentication mode for an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| authType | Yes | Auth type: API or CONFIG_MAP | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate non-destructive and idempotent behavior. The description adds no additional behavioral context (e.g., whether the update takes effect immediately, requires cluster availability, or impacts existing sessions). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, concise and to the point. No filler words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update operation with two well-documented parameters and safe annotations, the description suffices. It does not mention possible side effects or state changes, but given the simplicity and existing schema/annotations, it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers both parameters with descriptions (authType: 'API or CONFIG_MAP', clusterUuid: 'UUID of the cluster'). The tool description adds no further parameter semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (update) and the target resource (authentication mode for an NKS cluster), distinguishing it from sibling tools like ncloud_nks_set_oidc or ncloud_nks_set_ip_acl.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It only states what it does, leaving usage to inference. No exclusions or alternative tool suggestions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_lb_subnetAIdempotent
Update the load balancer subnet of an NKS cluster. Parameters are sent as query string (no JSON body): lbSubnetNo (or, Public zone only, lbSubnetNoList with up to 2 subnets in different zones) plus igwYn (Y = public subnet, N = private, default).
| Name | Required | Description | Default |
|---|---|---|---|
| igwYn | No | Subnet type: Y = public LB subnet, N = private (default) | |
| lbSubnetNo | No | Load balancer subnet instance number (required unless lbSubnetNoList is given) | |
| clusterUuid | Yes | UUID of the cluster | |
| lbSubnetNoList | No | Public zone only: up to 2 LB subnet instance numbers in different zones (multi-zone). Alternative to lbSubnetNo |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so safety of repeated calls is covered. The description adds one genuinely useful behavioral detail -- parameters are transmitted as a query string with no JSON body -- but says nothing about side effects on live traffic, prerequisites, or whether the change is disruptive. With annotations covering the safety profile, a 3 is warranted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded sentences with no filler; the mutation and its scoping constraints come first. The nested parenthetical in the second sentence is dense but every clause carries information, so it stays within budget.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but for an update tool with full schema coverage and annotations covering idempotency/destructiveness, the description supplies the needed invocation context (transport format, alternative parameters, enum meaning). Return values and any post-update state effects are the only omissions, which is acceptable here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description restates the cross-parameter constraints (lbSubnetNo vs lbSubnetNoList, Public-zone-only, up to 2 subnets) that the schema already documents, adding only the query-string transport note, which is marginal rather than compensating for any gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Update the load balancer subnet of an NKS cluster.' The NKS/LB scope lets an agent distinguish it from the classic-LB sibling ncloud_set_lb_subnet and from ncloud_nks_update_node_pool_subnet without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a conditional usage rule at the parameter level (lbSubnetNoList is 'Public zone only' for multi-zone) and notes igwYn's default, which implies context. However, it never states when this tool should be chosen over related siblings such as ncloud_nks_update_node_pool_subnet or ncloud_set_lb_subnet, so tool-level routing guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_node_poolAIdempotent
Update node pool settings (node count or autoscale) in an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| autoscale | No | Autoscale configuration | |
| nodeCount | No | Desired node count (required if autoscale disabled) | |
| instanceNo | Yes | Node pool instance number | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool idempotent and non-destructive. The description adds minimal behavioral context beyond stating what it updates; it does not disclose parameter interactions, prerequisites, or operational implications. With annotations covering safety, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence, front-loaded with the verb, clearly communicating the purpose without any unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given full schema documentation and clear annotations, the description provides sufficient context for correct invocation. It could mention parameter selection rules more explicitly, but the schema's description of nodeCount ('required if autoscale disabled') already covers the main constraint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are already documented. The description reinforces the two key parameters (nodeCount and autoscale) but adds no new semantic details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update'), the resource ('node pool settings'), and the specific scope ('node count or autoscale') within an NKS cluster. This distinguishes it from sibling tools that update labels, taints, or subnets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (updating node count or autoscale), but does not explicitly name alternatives or exclusion cases, such as using ncloud_nks_update_node_pool_label for label updates.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_node_pool_labelAIdempotent
Update labels on a node pool in an NKS cluster (PUT replaces all labels)
| Name | Required | Description | Default |
|---|---|---|---|
| labels | Yes | Label key/value pairs | |
| instanceNo | Yes | Node pool instance number | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds crucial behavioral context beyond the annotations: 'PUT replaces all labels'. This warns the agent that existing labels will be overwritten, which is important despite destructiveHint=false. The idempotentHint=true is consistent with PUT semantics, and the description adds value by clarifying the replacement behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core action and includes a critical behavioral note. Every word adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple scope (update labels), the description combined with full schema coverage and annotations provides sufficient context. It clearly states the operation and the full-replacement behavior. No output schema exists, so return values need not be explained. Minor omission: no guidance on empty labels behavior, but not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (clusterUuid, instanceNo, labels) with descriptions. The tool description does not add additional parameter-level semantics beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Update') and resource ('labels on a node pool in an NKS cluster'), clearly distinguishing it from sibling tools like update_node_pool_taint or update_node_pool. The target and scope are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you need to update node pool labels), but does not provide explicit guidance on alternatives or exclusions. No mention of related tools for taints or other node pool properties.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_node_pool_subnetAIdempotent
Update the subnets of a node pool that has manually assigned subnets (PATCH .../node-pool/{instanceNo}/subnets). Not usable when subnets are auto-assigned.
| Name | Required | Description | Default |
|---|---|---|---|
| instanceNo | Yes | Node pool instance number | |
| clusterUuid | Yes | UUID of the cluster | |
| subnetNoList | Yes | New subnet number list (sent as subnets[]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds one meaningful eligibility constraint (manual-assignment requirement) beyond the annotations, but it omits the important behavior of whether the supplied list replaces the existing subnets entirely and what impact the change has on running nodes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with zero filler; the action and endpoint come first and the eligibility constraint second. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a narrow three-parameter PATCH with no output schema, the description covers what the tool does and the key restriction, which is nearly enough. The remaining gap is the replace-all-list semantics and any operational impact on the node pool, which an agent would benefit from knowing before invoking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so instanceNo, clusterUuid, and subnetNoList are already documented, including the subnets[] serialization detail. The description adds nothing about parameter format or constraints, which is an acceptable baseline given the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ("Update the subnets of a node pool") and even cites the underlying PATCH endpoint, so the action is unambiguous. It does not explicitly distinguish itself from close siblings like ncloud_nks_add_subnet or ncloud_nks_update_node_pool, but the scope is narrow enough that an agent can infer the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states a clear precondition/exclusion: it is only usable when subnets are manually assigned, not auto-assigned. That is a genuine when-not rule, but no alternative tool is named for either the auto-assigned case or for adding rather than replacing subnets.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_node_pool_taintAIdempotent
Update taints on a node pool in an NKS cluster (PUT replaces all taints)
| Name | Required | Description | Default |
|---|---|---|---|
| taints | Yes | Taint key/value/effect objects | |
| instanceNo | Yes | Node pool instance number | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (idempotentHint=true, destructiveHint=false), the description discloses the PUT semantics that all existing taints are replaced, which is critical to avoid unintended loss. This adds meaningful behavioral context beyond what annotations alone provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys both the action and the key replacement behavior. No filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a relatively simple three-parameter update tool, the description covers the essential purpose and the critical nuance of full replacement. Without an output schema, return values are not detailed, but the primary behavior is sufficiently explained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all three parameters, achieving 100% coverage. The description does not elaborate on parameter meanings or formats beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update', the resource 'taints on a node pool in an NKS cluster', and distinguishes from sibling tools like update_node_pool_label or update_node_pool by focusing specifically on taints. The parenthetical 'PUT replaces all taints' adds crucial scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys a clear context: this tool is for updating taints, and the note that it replaces all taints implies the agent must include the full desired list. While it doesn't explicitly name alternatives, the specificity to taints among siblings makes the usage context clear without exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_update_secret_encryptionBIdempotent
Configure secret encryption for an NKS cluster
| Name | Required | Description | Default |
|---|---|---|---|
| kmsKeyTag | No | KMS key tag for secret encryption | |
| clusterUuid | Yes | UUID of the cluster |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There is no annotation contradiction; idempotentHint and destructiveHint are consistent with a non-destructive configuration update. However, the description adds no behavioral context beyond the annotations—it doesn't describe effects on existing encryption settings, cluster state requirements, or what happens if kmsKeyTag is omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that states the core purpose. It is front-loaded and contains no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (2 params, no output schema) and existing annotations/schema coverage, the description is minimally adequate. However, it leaves ambiguity about the optional kmsKeyTag param and the exact behavior of 'configure' (e.g., enable, update, or disable encryption), so it is not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for both parameters (clusterUuid and kmsKeyTag), so the baseline is 3. The description adds no additional meaning about how the parameters interact or optionality, relying entirely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Configure') and the resource ('secret encryption for an NKS cluster'). It distinguishes from sibling tools like ncloud_nks_update_auth_type or ncloud_nks_set_oidc because no other tool targets secret encryption. The verb and object are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. It solely states what it does without context, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_upgrade_clusterB
Upgrade the Kubernetes version of an NKS cluster. Uses PATCH with query parameters.
| Name | Required | Description | Default |
|---|---|---|---|
| maxSurge | No | Max nodes that can be added during upgrade (default: 1) | |
| k8sVersion | Yes | Target Kubernetes version (e.g., 1.27.9-nks.1) | |
| clusterUuid | Yes | UUID of the cluster to upgrade | |
| maxUnavailable | No | Max nodes that can be unavailable during upgrade (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. 'Uses PATCH with query parameters' is an implementation detail, but it does not disclose behavioral impacts such as potential downtime, rolling upgrade behavior, irreversibility, or required cluster state. This is a mutation operation without side-effect disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two short sentences with no redundant information. It front-loads the core purpose and adds a single technical note about the HTTP method, making it appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a cluster upgrade operation with no annotations, no output schema, and no supplementary context, the description is critically thin. It does not explain what happens during the upgrade, how to monitor progress, whether the upgrade is rolling or disruptive, or any version compatibility checks needed. This leaves the agent under-informed for a high-impact operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no parameter-specific information beyond what the schema already provides, meaning it does not enhance the agent's understanding of maxSurge, maxUnavailable, or version constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (upgrade), the resource (NKS cluster), and the specific attribute (Kubernetes version). This distinguishes it from sibling tools like ncloud_nks_upgrade_node_pool by specifying 'cluster'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for cluster-level Kubernetes upgrades, but provides no explicit guidance on when to use this tool versus alternatives like ncloud_nks_upgrade_node_pool. No prerequisites, exclusions, or alternative recommendations are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_nks_upgrade_node_poolB
Upgrade the Kubernetes version of a node pool. Uses PATCH with query parameters.
| Name | Required | Description | Default |
|---|---|---|---|
| maxSurge | No | Max nodes added during upgrade (default: 1) | |
| instanceNo | Yes | Node pool instance number | |
| k8sVersion | Yes | Target Kubernetes version | |
| clusterUuid | Yes | UUID of the cluster | |
| maxUnavailable | No | Max unavailable nodes during upgrade (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It only reveals the HTTP method (PATCH), implying mutation, but does not mention that upgrades may cause rolling node replacement, downtime, incompatibility, or irreversibility, nor whether it is a long-running operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded in a single, tight sentence with no wasted words. The second sentence about PATCH is brief but of marginal value to an MCP agent since the server typically handles the HTTP method.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and empty annotations, the description is the only source of context, and at 13 words it is insufficient for a mutating infrastructure operation. It omits expected return/status checks, version ordering constraints, upgrade disruption profile, and prerequisites such as cluster/node pool availability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all five parameters. The description adds no semantic detail about parameters beyond noting they are sent as query parameters, which is marginal; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Upgrade'), the resource ('node pool'), and the specific aspect (Kubernetes version). This distinguishes it from sibling tools like ncloud_nks_upgrade_cluster (which targets the whole cluster) and ncloud_nks_update_node_pool (a more general update).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus the closely related ncloud_nks_upgrade_cluster or ncloud_nks_update_node_pool, and there are no prerequisites, exclusions, or alternative recommendations. The PATCH note is an implementation detail, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_activate_sub_caB
Activate a Sub CA using a signed certificate and CA chain (direct signing method).
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value of the Sub CA to activate | |
| certPem | Yes | Signed CA certificate in PEM format | |
| caChainPem | Yes | Signer certificate chain in PEM format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It only states 'Activate a Sub CA' without disclosing side effects, prerequisites (e.g., CA state), permission requirements, or reversibility. This is insufficient for a state-changing operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that immediately states the action and key inputs. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite complete schema coverage and no output schema, the description provides minimal context. It omits the activation workflow, prerequisite CA state, potential outcomes, or error conditions. For a CA activation operation, an agent needs more to fully understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with detailed descriptions for caTag, certPem, and caChainPem. The description adds no additional parameter semantics beyond echoing 'signed certificate and CA chain', so it meets the baseline but doesn't enhance understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Activate'), the target resource ('Sub CA'), and the method ('using a signed certificate and CA chain (direct signing method)'). It distinguishes from sibling tools like ncloud_pca_sign_sub_csr by specifying the activation step and the direct signing method.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when you have a signed certificate and CA chain) but does not explicitly name alternatives or exclusion conditions. The phrase 'direct signing method' hints at possible alternatives but lacks concrete guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_create_caB
Create a new Private CA (Root CA or Sub CA). Requires alias, keyType, period, and x509Parameters.
| Name | Required | Description | Default |
|---|---|---|---|
| ip | No | IP SANs (IP address format) | |
| memo | No | CA memo/description | |
| alias | Yes | CA name (3-15 chars, alphanumeric + '-' + '_', starts with letter) | |
| caType | Yes | CA type: PRIVATE_ROOT (Root CA) or PRIVATE_SUB (Intermediate CA) | |
| period | Yes | Validity period in days (1-3650) or 'MAX' for maximum | |
| altName | No | DNS/Email SANs (domain/host name or email format) | |
| country | No | Country code (ISO 3166-1 alpha-2) | |
| keyType | Yes | Key type for the CA | |
| locality | No | City name (0-128 chars) | |
| issuerTag | No | Issuer CA tag value (required for PRIVATE_SUB when using internal signing) | |
| commonName | Yes | Common Name (1-64 chars) | |
| organization | No | Organization name (0-64 chars) | |
| stateProvince | No | State/Province name (0-128 chars) | |
| organizationUnit | No | Organization unit name (0-128 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint: false, which the description does not leverage or contradict. The description adds no behavioral context such as side effects, prerequisites, quotas, or state changes after creation. Since annotations are minimal, the description carries the burden and fails to disclose meaningful behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but the second sentence ('Requires alias, keyType, period, and x509Parameters') is redundant with the schema's required fields and introduces an erroneous terminology. It does not earn its place and detracts from conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 14 parameters and no output schema, the description is too sparse. It does not mention required vs. optional fields, dependencies (e.g., issuerTag for PRIVATE_SUB), return values, or likely failure modes. An agent would need to rely entirely on the schema, which is insufficient for correct invocation in nuanced scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already documents all parameter details. The description's parameter mention is inaccurate and adds negative value: 'x509Parameters' is not a real parameter, and it omits 'caType' and 'commonName' which are required. It does not clarify formats, dependencies, or relationships beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and clearly identifies the resource ('new Private CA') while distinguishing root and sub CA variants. This aligns with the tool name and differentiates it from sibling PCA tools like delete, get, or issue operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose statement 'Create a new Private CA' implicitly conveys when to use the tool, but it does not explicitly mention when not to use it or suggest alternatives. No comparison to other PCA tools (e.g., delete, get, issue end cert) is provided, so usage context is only implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_create_ocspB
Create OCSP and deploy the OCSP URL to certificates issued by this CA.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value | |
| ocspServers | Yes | OCSP URL (format: https://<Private CA host>/ext/{caTag}/ocsp — pca.apigw.ntruss.com in the Public zone, privateca.apigw.gov-ntruss.com in the Government zone) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries real weight here. It usefully discloses that the operation mutates certificates issued by the CA, but does not say whether this is reversible, what happens on redeployment, or whether auth beyond caTag is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence that front-loads the action and appends the consequential side effect. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter mutation tool with no output schema, the description covers the action and its effect on certificates, but omits prerequisites, reversibility, and failure behavior that an agent would want before invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both caTag and ocspServers fully documented including URL format and zone hosts. The description adds nothing beyond the schema, which is acceptable given the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Create) and resource (OCSP) plus the notable side effect of deploying the OCSP URL to certificates issued by the CA. This clearly distinguishes it from sibling ncloud_pca_delete_ocsp, though it does not call out that sibling by name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to create an OCSP responder versus other PCA operations, no mention of prerequisites such as an existing CA (caTag) or when the URL should already exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_delete_caADestructiveIdempotent
⚠️ Destructive: Permanently delete a Private CA. Only CAs in DESTROYING status can be deleted. The CA's private key will be permanently destroyed and cannot be recovered. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value (required) | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by detailing the irreversibility ('private key will be permanently destroyed and cannot be recovered') and the requirement for confirm=true. This adds significant behavioral context about the consequences and execution guardrail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loaded with a clear destructive warning. Every sentence adds critical information without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete operation, the description covers the essential context: what it deletes, the status prerequisite, the irreversible consequence, and the confirmation requirement. No additional critical information appears missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, so the schema already documents caTag and confirm precisely. The description reinforces 'Set confirm=true to execute' but does not add substantial new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Permanently delete a Private CA', identifying the specific action and resource. It also distinguishes from sibling PCA operations by noting the status requirement and the confirm flag, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear precondition: 'Only CAs in DESTROYING status can be deleted.' It also instructs to set confirm=true to execute. However, it does not explicitly mention when not to use or discuss alternatives, so it stops short of full usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_delete_ocspADestructiveIdempotent
⚠️ Destructive: Delete OCSP configuration and remove the OCSP URL from all certificates issued by this CA. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value (required) | |
| confirm | No | Must be true to actually execute the destructive operation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it discloses that the OCSP URL is removed from all certificates issued by the CA, which is a critical side effect. It also reinforces the confirm=true safeguard, making the destructive nature explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning emoji and clear instruction. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, no output schema), the description is complete: it covers purpose, destructive side effect, and the confirm requirement. The annotations cover idempotency, so no gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the confirm parameter is already fully described in the schema. The description adds a minor reinforcement ('Set confirm=true to execute') but does not provide additional meaning for caTag beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Delete), the resource (OCSP configuration), and the scope (removes the OCSP URL from all certificates issued by this CA). This is specific and distinguishes it from sibling tools like ncloud_pca_create_ocsp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context that this is a destructive operation and instructs the agent to set confirm=true to execute. It does not explicitly name alternatives or exclusions, but the context is sufficient for when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_get_caARead-only
Get detailed information of a specific Private CA by its tag value.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value (identifier) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already communicates safe read-only behavior, and the description is consistent with it ('Get' rather than modify). No additional behavioral details are disclosed—such as what happens for a non-existent tag or what 'detailed information' includes—so the description adds little beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 13-word sentence that states the essential action and identifier method with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup with one required parameter and no output schema, the description is adequate for selection and invocation. However, 'detailed information' is vague and does not clarify the response structure or edge cases, so completeness is good but not maximal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with caTag documented as 'CA tag value (identifier)'. The description's phrase 'by its tag value' merely restates the parameter's purpose and adds no new meaning or format constraints. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource ('Get detailed information of a specific Private CA') and clearly indicates the lookup key ('by its tag value'). This distinguishes it from sibling tools like ncloud_pca_list_cas (list all) and ncloud_pca_get_ca_chain (get chain). The purpose is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit usage guidance is given. The description does not mention when to prefer this tool over alternatives or note any prerequisites, exclusions, or fallback tools. The sibling context implies a get-vs-list distinction, but the description itself provides no such guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_get_ca_chainARead-only
Get the certificate chain (PEM) of a Private CA.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already establishes the safe read-only nature. The description adds the output format (PEM) and resource type (Private CA) beyond the annotation, but does not describe error cases, return structure, or other behavioral traits. Given the annotation covers the main safety aspect, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, nine words, front-loaded and direct. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one parameter, read-only, no output schema). The description conveys the purpose and the input's reference, which is sufficient for a basic retrieval operation. It could benefit from noting that the chain is for a Private CA only, but the name and description already convey that. Minor gaps prevent a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the parameter caTag is documented as 'CA tag value'. The description clarifies that the tag refers to the Private CA whose chain is requested, adding slight context, but does not elaborate beyond the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Get'), the resource ('certificate chain (PEM) of a Private CA'), and is distinct from sibling PCA tools like get_ca and get_ca_crl. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It simply states what it does, leaving the agent to infer usage from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_get_ca_crlARead-only
Get the CRL (Certificate Revocation List) of a Private CA in PEM format.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds the output format (PEM), which is useful but minimal. It does not disclose additional behavioral traits such as error handling, rate limits, or whether the CA must exist. With annotations present, the bar is lower, and the description meets the minimum by not contradicting the read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the action ('Get') and includes the key detail (PEM format). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter, full schema coverage, and a readOnly annotation, the description is adequate. It specifies the output format (PEM) even though there is no output schema, covering the most critical return detail. It does not explain the response structure or error cases, but for such a focused retrieve operation, this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with caTag described as 'CA tag value'. The description does not add extra meaning beyond the schema, but since the schema fully documents the parameter, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the CRL of a Private CA in PEM format, using a specific verb ('Get') and resource ('CRL of a Private CA'). This distinguishes it from sibling tools like ncloud_pca_get_crl_config (configuration) and ncloud_pca_get_ca_chain (chain).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It does not mention when to prefer this over ncloud_pca_get_crl_config or ncloud_pca_rotate_crl, nor does it state any exclusions or prerequisites. The usage context is implied but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_get_crl_configARead-only
Get the CRL update interval configuration for a Private CA.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and the description's 'Get' is consistent, so there's no contradiction. However, the description adds no further behavioral context such as return format, specific fields, or prerequisites. It mostly restates the tool's purpose, providing minimal additional transparency beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It immediately states the action and resource, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one required param, read-only) and the description sufficiently conveys what it does. However, without an output schema, it doesn't specify the exact response fields (e.g., interval value and units), so it's not maximally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for the single parameter caTag with its own description 'CA tag value'. The tool description adds no extra parameter meaning, so baseline 3 applies because the schema already fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and identifies the exact resource ('CRL update interval configuration') scoped to a Private CA. This clearly distinguishes it from sibling tools like ncloud_pca_get_ca_crl (gets the actual CRL) and ncloud_pca_update_crl_config (updates the config).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is clear: use this to fetch CRL update interval settings. It doesn't explicitly state when not to use or mention alternatives, but the wording naturally differentiates it from related PCA tools. The agent can infer usage from the precise resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_get_end_certARead-only
Get detailed information of a specific end-entity certificate by serial number.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value | |
| serialNo | Yes | Certificate serial number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a safe read operation; the description adds the selection criterion (by serial number) which is consistent. However, no additional context is provided about error cases, response details, or the need to specify a CA tag.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence that clearly communicates the tool's function with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with two documented parameters and no output schema, the description is adequate but does not mention the required CA context or how to obtain the serial number, leaving some ambiguity for agents.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides full descriptions for both caTag and serialNo (100% coverage), so the description adds no extra parameter semantics beyond restating 'by serial number.' Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get detailed information'), the specific resource ('specific end-entity certificate'), and the lookup method ('by serial number'). It distinguishes this from the sibling 'ncloud_pca_list_end_certs' which lists certificates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a serial number is known, but it does not explicitly state when to use this tool versus listing certificates first or any alternatives. It lacks exclusions or hints such as 'use list_end_certs to find the serial number first.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_get_sub_csrARead-only
Get the CSR (Certificate Signing Request) of a Sub CA for external signing. Only available for unsigned Sub CAs.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value of the Sub CA |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which aligns with the description's 'Get' action. The description adds the important behavioral constraint that the tool only works for unsigned Sub CAs, which is useful context beyond the annotation. It does not detail response format, but the annotation covers safety expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no redundant information. It front-loads the primary action and resource, then adds the essential availability constraint. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, read-only annotation, no output schema), the description adequately covers what the tool does and its key constraint. It could mention the output format, but the 'Get' verb implies the CSR is returned. Overall sufficient for effective selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter caTag has a description in the schema ('CA tag value of the Sub CA'), providing 100% schema coverage. The tool description does not add additional parameter-level detail, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the resource (CSR of a Sub CA), and the purpose (for external signing). The additional constraint 'Only available for unsigned Sub CAs' further clarifies scope and distinguishes it from other PCA get operations like ncloud_pca_get_ca_chain or ncloud_pca_get_ca_crl.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: retrieving a CSR for external signing, and only for unsigned Sub CAs. It does not explicitly name alternative tools, but the 'for external signing' qualifier implicitly connects to the signing workflow, making the usage intent clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_issue_end_certA
Issue a new end-entity certificate from a CA. Returns private key, certificate, and CA chain.
| Name | Required | Description | Default |
|---|---|---|---|
| ip | No | IP SANs (IP address format) | |
| caTag | Yes | CA tag value of the issuing CA | |
| period | No | Validity period in days (1-3650) or 'MAX' | |
| altName | No | DNS/Email SANs | |
| country | No | Country code (ISO 3166-1 alpha-2) | |
| keyType | No | Key type for the certificate | |
| locality | No | City name (0-128 chars) | |
| commonName | Yes | Common Name (1-64 chars) | |
| organization | No | Organization name (0-64 chars) | |
| stateProvince | No | State/Province (0-128 chars) | |
| streetAddress | No | Street address (0-128 chars) | |
| organizationUnit | No | Organization unit (0-128 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the burden. It discloses the outputs (private key, certificate, CA chain) but does not mention side effects, required permissions, security implications, or whether issuance is reversible. This is minimal but non-trivial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no filler, front-loading the core purpose and key outputs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter tool with no output schema, the description provides the core purpose and returns a brief list of outputs, but it omits return format, prerequisites, and error behavior. The schema compensates for parameters, so the description is moderately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with useful descriptions for all 12 parameters, including an enum for keyType. The description adds no parameter-specific meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Issue') and the resource ('new end-entity certificate from a CA'), and the mention of returning private key, certificate, and CA chain distinguishes it from sibling tools like ncloud_pca_sign_end_csr or listing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_pca_sign_end_csr or ncloud_issue_private_certificate. There are no contextual hints about prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_list_casARead-only
List all Private CA (Certificate Authority) instances. Returns CA info including status, type, alias, and certificate details.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, and the description is consistent with that. It adds return-content context (status, type, alias, certificate details) but does not mention pagination behavior, default page size, or other operational caveats. The description adds some value beyond the annotation but could disclose more.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action and resource, and contains no filler. It efficiently communicates purpose and return contents.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and a readOnly annotation, the description covers the action, scope, and returned fields. The main gap is the lack of pagination semantics despite the pageNo parameter, which could matter when the result set is large. Overall, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, pageNo, is fully described in the schema as 'Page number for pagination'. The description adds no additional meaning about pagination mechanics, defaults, or how 'all' relates to paging. Baseline 3 applies because schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with a clear resource 'Private CA instances', explains the acronym, and notes returned fields (status, type, alias, certificate details). It differentiates from sibling ncloud_pca_get_ca by saying 'all' rather than implying a single CA lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear scope ('List all Private CA instances') but does not explicitly state when to use this tool versus alternatives like ncloud_pca_get_ca or ncloud_list_certificates. Usage is implied by the tool name and wording, but no exclusions or explicit alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_list_end_certsARead-only
List all end-entity certificates issued by a specific CA. Returns serial numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, and the description adds that it 'Returns serial numbers', which is useful. However, it does not disclose whether the list includes revoked/expired certificates, pagination behavior, or ordering. This is acceptable but not rich enough for a 4.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences that are front-loaded with the primary action ('List all end-entity certificates') and conclude with the return value. No wasted words, highly scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one parameter and no output schema, the description provides the essential information: what it lists, the scope (specific CA), and the key return value (serial numbers). It lacks details on pagination or status filtering, but these are not critical for basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the only parameter (caTag) with a description ('CA tag value'), so the baseline is 3. The tool description does not add further semantic detail about the parameter beyond restating that it specifies 'a specific CA', which does not materially improve understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb ('List') and identifies the exact resource ('all end-entity certificates issued by a specific CA'). It distinguishes this from sibling tools like ncloud_pca_list_cas (lists CAs) and ncloud_pca_get_end_cert (gets a single certificate), making the purpose clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to enumerate end-entity certificates for a CA, but it does not explicitly state when to choose this over alternatives such as ncloud_pca_get_end_cert or ncloud_pca_revoke_end_cert. No exclusionary or alternative guidance is provided, so usage context is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_revoke_end_certADestructiveIdempotent
⚠️ Destructive: Revoke an end-entity certificate by its serial number. This action is irreversible and the certificate will no longer be trusted.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value (required) | |
| serialNo | Yes | Certificate serial number to revoke (required) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include destructiveHint=true, and the description reinforces this with the warning 'Destructive' and adds new behavioral context: 'irreversible' and 'certificate will no longer be trusted.' These details go beyond the annotation by explaining the permanence and consequence of the action, which is valuable for an agent. No contradiction with annotations (idempotentHint=true is not addressed but does not conflict).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence with a leading warning icon and word 'Destructive'. It front-loads the critical safety information and conveys the action and consequence without any filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with strong annotations (destructive and idempotent) and a 100% schema coverage, the description provides sufficient context: what it does, how it's done (by serial number), and key consequences. It does not cover return values, but there is no output schema to explain; it also omits prerequisite details like requiring an active CA, but these are not critical given the schema and annotations. Overall, it is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both caTag and serialNo have clear descriptions in the input schema. The tool description only mentions 'by its serial number', which reinforces serialNo but adds no new meaning beyond the schema. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Revoke an end-entity certificate by its serial number.' It uses a specific verb and resource, distinguishing it from sibling operations like issuing, signing, or listing certificates. The consequence 'the certificate will no longer be trusted' further clarifies the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (for revoking a certificate) but does not explicitly mention alternatives or when-not-to-use conditions. It lacks guidance such as 'use list_end_certs to find the serial number first' or 'for revoking a CA, use pca_trim_ca instead.' The usage context is understandable but not fully defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_rotate_crlA
Manually rotate the CRL to refresh it with the latest revocation information.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden for behavioral disclosure. It communicates the action (rotate) and the immediate effect (refresh with latest revocation info). However, it does not disclose potential side effects, permissions required, whether the operation is reversible, or what the response contains—though for a straightforward rotation action, this may be sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action ('Manually rotate the CRL') and includes the purpose. There is no redundant or filler content; every word contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter and no output schema. The description sufficiently explains the action but lacks context such as when this should be performed (e.g., after revoking certificates), any dependencies, or expected results. It is minimally complete but leaves room for additional guidance about usage scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% as the only parameter 'caTag' has a description ('CA tag value'). The tool description does not add additional meaning beyond the schema, and the schema description is somewhat vague ('CA tag value' does not clarify how to obtain or identify the tag). Baseline of 3 applies because coverage is high, even though the description adds little value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Manually rotate the CRL' and the purpose 'to refresh it with the latest revocation information.' This is a specific verb+resource combination that distinguishes it from sibling tools like ncloud_pca_get_ca_crl (retrieve) and ncloud_pca_update_crl_config (update configuration).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'Manually' implies that rotation can also happen automatically, providing a subtle usage context. However, the description does not explicitly state when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. Guidance is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_sign_end_csrARead-only
Sign a provided CSR to issue a new end-entity certificate. The existing CA certificate is returned.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value of the signing CA | |
| csrPem | Yes | CSR in PEM format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint: true, so the safety profile is already known. The description adds one behavioral detail: 'The existing CA certificate is returned,' which is not present in annotations or schema. However, it does not clarify whether the signed certificate itself is also returned, nor any side effects (e.g., persistence). Given the annotation coverage, this is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, concise and front-loaded with the core action. Every word adds value: the verb, the target (CSR), the result (end-entity certificate), and the return value. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (2 params, no output schema) and the description covers the core purpose and one return value. However, it is incomplete regarding the full response: it says 'The existing CA certificate is returned' but does not explicitly state whether the newly signed end-entity certificate is also returned or in what format. Given no output schema, this leaves ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for both parameters: caTag ('CA tag value of the signing CA') and csrPem ('CSR in PEM format'). The description adds no additional parameter semantics, so it does not go beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Sign a provided CSR') and the purpose ('to issue a new end-entity certificate'). It also mentions the return value, which helps distinguish it from similar tools like ncloud_pca_sign_sub_csr (which signs a sub-CA CSR) and ncloud_pca_issue_end_cert. The verb+resource+result are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use this when you have a CSR to sign for an end-entity certificate. However, it does not explicitly mention when to use this tool versus alternatives such as ncloud_pca_sign_sub_csr or ncloud_pca_issue_end_cert, nor does it provide any exclusion criteria. The guidance is purely implied by the tool's purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_sign_sub_csrBRead-only
Sign a Sub CA CSR using this CA to issue an intermediate CA certificate.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value of the signing (parent) CA | |
| csrPem | Yes | CSR in PEM format | |
| period | Yes | Validity period in days (1-3650) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description says 'Sign a Sub CA CSR' which is a mutating operation (creating an intermediate CA certificate), but the annotations declare readOnlyHint: true. This is a direct contradiction. The description does not disclose any side effects, permissions, or lifecycle implications beyond what the annotation incorrectly claims.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler. It front-loads the action and purpose, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the annotation contradiction and lack of output schema, the description fails to provide necessary behavioral context. It does not mention that this operation is irreversible, requires CA private key access, or that it creates a new certificate. The one-line description is insufficient for a PKI mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains all three parameters (caTag, csrPem, period) adequately. The description adds minimal extra meaning—it implies the CSR is for a Sub CA and the CA signs it, but does not clarify parameter format or interactions beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Sign') and a specific resource ('Sub CA CSR'), and clearly states the outcome ('to issue an intermediate CA certificate'). It distinguishes itself from sibling tools like ncloud_pca_sign_end_csr by explicitly targeting Sub CA CSRs rather than end-entity CSRs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (when you need to issue an intermediate CA certificate from a Sub CA CSR) but does not explicitly state when to use this tool versus alternatives, such as ncloud_pca_sign_end_csr or ncloud_pca_issue_end_cert. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_trim_caA
Trim expired certificates from the CRL to clean up the revocation list.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It states the core action (trimming expired certificates) but does not disclose whether this is destructive, irreversible, requires specific permissions, or what the response looks like. As a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the action and purpose. It contains no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool, the description covers the action and intent, but it lacks context about the effects of the operation, whether it modifies the CRL permanently, and how it relates to the specified CA. It is minimally viable but has clear gaps for a mutation tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the caTag parameter described as 'CA tag value'. The description does not add any parameter-specific context beyond the schema. Baseline 3 is appropriate since the schema fully documents the only parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Trim') and resource ('CRL' - Certificate Revocation List), and clarifies the purpose of cleaning up the revocation list. This clearly distinguishes it from sibling tools like get_ca_crl (fetch) or rotate_crl (likely regenerating the CRL).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating the goal ('clean up the revocation list'), but it does not explicitly state when to use this tool versus alternatives like rotate_crl or update_crl_config. There are no exclusions or alternative tool names mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_update_caAIdempotent
⚠️ Destructive: Update CA status (ACTIVE, DEACTIVATED, or DESTROYING). Setting to DESTROYING will permanently delete the CA and all sub-CAs after 72 hours. This action is irreversible.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value | |
| status | Yes | New CA status |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description warns that setting DESTROYING will permanently delete the CA after 72 hours and is irreversible, which is useful behavioral context. However, this directly contradicts the annotation destructiveHint: false. The description clearly signals a destructive action while the annotation denies it, creating a serious inconsistency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, warning first, then explaining the destructive behavior and irreversibility. Every sentence contributes essential information with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with only two fully documented parameters and no output schema, so the description covers the most critical aspect (DESTROYING consequences). However, the annotation contradiction undermines completeness by giving an agent contradictory safety signals, and the effects of DEACTIVATED status are not described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters with 100% coverage. The description adds extra meaning for the status parameter by explaining the consequence of DESTROYING, which goes beyond the schema's enum listing. No additional info is provided for caTag, but the schema fully documents it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Update'), resource ('CA status'), and the valid statuses (ACTIVE, DEACTIVATED, DESTROYING). It is specific enough to distinguish from sibling tools like ncloud_pca_delete_ca.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (to change a CA's status) and warns about DESTROYING, but it does not explicitly contrast with alternatives (e.g., ncloud_pca_delete_ca) or state when NOT to use it. The guidance is helpful but not fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pca_update_crl_configBIdempotent
Set the CRL update interval (in days) for a Private CA. Minimum 3 days.
| Name | Required | Description | Default |
|---|---|---|---|
| caTag | Yes | CA tag value | |
| expiry | Yes | CRL update interval in days (minimum 3, up to CA expiry) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotency and non-destructiveness. The description adds the minimum 3-day constraint, but this is already present in the schema. No additional behavioral details are disclosed, such as whether updating the interval triggers immediate CRL generation or only affects future rotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no unnecessary words. It front-loads the action and then states the key constraint, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity and rich schema with annotations, the description is mostly sufficient. It clearly states what the tool does and the minimum value. However, it omits context about whether the change is applied immediately or via a scheduled rotation, and does not reference related sibling tools; a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% parameter coverage with descriptions for both caTag and expiry. The description repeats the minimum 3-day rule but does not add new meaning beyond the schema, such as clarifying what a 'CA tag value' is or how expiry relates to CA expiry.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Set' and the target 'CRL update interval for a Private CA', which is specific and distinguishes this tool from siblings like get_crl_config (view) and rotate_crl (immediate rotation). No ambiguity exists.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_pca_get_crl_config or ncloud_pca_rotate_crl. The verb 'Set' implies an update but gives no prerequisites, exclusions, or context for choosing it over related operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pipeline_list_sourcebuild_projectsARead-only
List available SourceBuild projects for pipeline task configuration
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N) | |
| pageSize | No | Items per page (1~N) | |
| searchWord | No | Filter by project name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which agrees with 'List'. The description adds the availability scoping ('available') and purpose context, but does not mention pagination behavior, defaults, or return shape. Given annotation coverage, this is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with verb and resource, contains no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity read-only list tool with fully documented schema, the one-line description is sufficient to select and invoke it. However, the absence of any output-schema or return-format guidance is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 3 parameters with descriptions (100% coverage), so baseline applies. The description adds no additional parameter-specific semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'List', names resource 'SourceBuild projects', and adds context 'for pipeline task configuration' which distinguishes it from sibling tools like ncloud_sourcebuild_list_projects and ncloud_sourcedeploy_get_sourcebuild_projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for pipeline task configuration' gives a clear context, but there is no explicit guidance on when to use this over alternatives such as ncloud_pipeline_list_sourcedeploy_projects or ncloud_sourcebuild_list_projects, nor any exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pipeline_list_sourcecommit_branchesBRead-only
List branches of a SourceCommit repository for pipeline configuration
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryName | Yes | SourceCommit repository name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation. The description adds no behavioral details beyond that—no mention of return format, pagination, scoping, or any constraints. The phrase 'for pipeline configuration' only indicates intent, not behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler. It front-loads the action and resource, and every word earns its place. It could optionally include alternative tool references, but its brevity is appropriate for a simple operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only one parameter, full schema coverage, and a readOnly annotation, the description is minimally sufficient. However, since there is no output schema, it doesn't explain what the response contains (e.g., branch names, metadata), and it offers no guidance on edge cases or prerequisites. It's adequate but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for the sole parameter (repositoryName with a clear description). The description does not add anything beyond the schema, so it meets the baseline but provides no extra semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List) and resource (branches of a SourceCommit repository), with an added purpose clause ('for pipeline configuration'). It is unambiguous about what the tool does, though it doesn't explicitly differentiate from similar siblings like ncloud_sourcecommit_list_branches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'for pipeline configuration' phrase implies the tool is intended for pipeline setup scenarios, but there is no explicit guidance on when to use this versus related list-branch tools, nor any exclusions. Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pipeline_list_sourcecommit_reposARead-only
List available SourceCommit repositories for pipeline configuration
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N) | |
| pageSize | No | Items per page (1~N) | |
| searchWord | No | Filter by repository name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds that the repos are 'available for pipeline configuration', implying a filtered result set, which is beyond the annotation and useful for understanding behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the action, resource, and context. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low-complexity with a read-only annotation and fully documented parameters. The description provides sufficient context, though the term 'available' could be more explicit about what qualifies a repo as available for pipeline configuration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters (pageNo, pageSize, searchWord) having clear descriptions. The tool description adds no parameter-specific details, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('SourceCommit repositories'), and the qualifier 'for pipeline configuration' clearly distinguishes this from the generic sibling 'ncloud_sourcecommit_list_repos'. It also contrasts with deploy-specific tools like 'ncloud_sourcedeploy_get_sourcecommit_repos'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for pipeline configuration' provides clear context on when to use this tool (when setting up pipeline source repositories). However, it does not explicitly mention alternatives or when not to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pipeline_list_sourcedeploy_projectsARead-only
List available SourceDeploy projects for pipeline task configuration
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N) | |
| pageSize | No | Items per page (1~N) | |
| searchWord | No | Filter by project name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the safe read-only nature, and the description correctly aligns with that. The description adds little behavioral depth beyond stating the listing action; it does not disclose pagination, return format, or any account-specific restrictions. With annotations present, a baseline 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly communicates the action and purpose with no unnecessary words. It is concise and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with complete schema documentation and read-only annotations, the description is adequate. It indicates the general purpose and relies on the schema for parameter details. It does not describe the response structure, but that is not critical for a list operation. Slightly more detail on return values or criteria would have earned a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all three parameters (pageNo, pageSize, searchWord), so the schema already fully explains parameter semantics. The description does not add extra meaning to the parameters, making the baseline 3 the correct score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a list operation on SourceDeploy projects with the specific purpose of pipeline task configuration. It uses a specific verb ('List') and resource ('SourceDeploy projects'), and the qualifier 'for pipeline task configuration' distinguishes it from the generic ncloud_sourcedeploy_list_projects sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context by indicating this is for pipeline task configuration, which implies the tool should be used when selecting a SourceDeploy project within a pipeline. However, it does not explicitly call out alternatives or exclusions, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pipeline_list_sourcedeploy_scenariosARead-only
List available SourceDeploy scenarios for a project stage
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N) | |
| stageId | Yes | SourceDeploy stage ID | |
| pageSize | No | Items per page (1~N) | |
| projectId | Yes | SourceDeploy project ID | |
| searchWord | No | Filter by scenario name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, and the description's 'List' verb aligns with that. However, it adds no additional behavioral insight such as pagination behavior, filtering, or how scenarios are scoped to a stage beyond what the schema already shows.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that wastes no words. It is front-loaded with the action and resource, making it easily scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with fully documented parameters and a read-only annotation, the description is largely sufficient. It does not detail the return structure, but no output schema exists and the context of a listing tool makes the expectation obvious. A brief note about filtering or pagination could improve completeness, but it is not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% parameter description coverage, so the baseline is 3. The description adds minimal value beyond the schema; it restates the stage context, but does not clarify relationships between parameters or the semantic meaning of searchWord beyond the schema's 'Filter by scenario name (partial match)'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') with a clear resource ('SourceDeploy scenarios') and scope ('for a project stage'). It distinguishes from sibling tools like ncloud_pipeline_list_sourcedeploy_stages and ncloud_sourcedeploy_list_scenarios by implying the pipeline project-stage context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to list scenarios for a given project stage, but it does not explicitly state when to prefer this tool over alternatives like ncloud_sourcedeploy_list_scenarios or provide exclusion criteria. Context is implied rather than articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_pipeline_list_sourcedeploy_stagesBRead-only
List available SourceDeploy stages for a project
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1~N) | |
| pageSize | No | Items per page (1~N) | |
| projectId | Yes | SourceDeploy project ID | |
| searchWord | No | Filter by stage name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation. The description adds no further behavioral context, such as pagination behavior, filtering semantics, or what 'available' means, leaving the agent to infer from the schema alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no padding or redundant information. It earns a top score for conciseness despite lacking depth elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple list operation with full schema coverage and a readOnly annotation. The description states the essential purpose, and the schema covers parameters, but there is no mention of return value shape or how it fits into pipeline workflows, leaving minor gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all four parameters (projectId, pageNo, pageSize, searchWord) documented in the schema. The description adds no extra parameter insights, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('List available SourceDeploy stages for a project') making the core action clear. However, it does not distinguish this tool from the similar sibling ncloud_sourcedeploy_list_stages, so it falls short of the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like ncloud_sourcedeploy_list_stages or ncloud_pipeline_list_sourcedeploy_scenarios. No context, prerequisites, or exclusions are provided beyond what the name implies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_put_bucket_aclA
Set the access control list (ACL) of an Object Storage bucket using a canned ACL
| Name | Required | Description | Default |
|---|---|---|---|
| acl | Yes | Canned ACL to apply (private, public-read, public-read-write, authenticated-read) | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It states it 'sets' an ACL but does not mention whether this overwrites existing ACLs, requires specific permissions, is reversible, or what happens if the bucket does not exist. No side effects or prerequisites are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the verb and resource. No redundant or filler information is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple two-parameter tool with complete schema and a clear description. However, the lack of behavioral context (permissions, side effects, return behavior) and absence of an output schema mean the agent is not fully informed about consequences, making it adequate but with gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both bucketName and acl fully described. The description adds minor clarification (canned ACL, Object Storage bucket) but does not provide meaningful semantics beyond what the schema already offers. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Set' with a clear resource 'access control list of an Object Storage bucket' and method 'using a canned ACL'. This clearly distinguishes it from sibling tools like get_bucket_acl and put_object_acl.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. Usage is implied by the resource type (bucket ACL), but there is no mention of get_bucket_acl for reading or put_object_acl for object-level ACLs. Provides minimal guidance beyond the action itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_put_bucket_versioningA
Set the versioning state of an Object Storage bucket (Enabled or Suspended)
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | Versioning status to set (Enabled | Suspended) | |
| bucketName | Yes | Name of the bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden for behavioral disclosure. It only states the action 'Set' without mentioning side effects, necessary permissions, reversibility, or consequences of changing versioning. As a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the verb 'Set' and directly states the resource and allowed values. There is no unnecessary information or padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with only two parameters and no output schema, so the description is minimally viable. However, as a mutation tool without annotations, it lacks behavioral context, usage guidance, and any mention of prerequisites or return behavior, leaving gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both parameters have descriptions), so the baseline is 3. The description adds minimal value beyond restating the status enum and the bucket name, which the schema already documents. No additional parameter semantics are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Set' and the specific resource 'versioning state of an Object Storage bucket', with the allowed values '(Enabled or Suspended)' explicitly listed. This distinguishes it from sibling tools like ncloud_get_bucket_versioning, which reads the state, and other bucket operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for changing versioning state, but it does not explicitly state when to use it, prerequisites, or alternatives. It offers no exclusions or when-not-to-use guidance, so the agent must infer usage from the verb and resource.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_put_objectB
Upload (put) an object to an Object Storage bucket. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Object key (path) to upload to | |
| body | Yes | Content to upload as the object body | |
| dryRun | No | If true, returns a preview without actually uploading | |
| bucketName | Yes | Name of the bucket | |
| contentType | No | Content-Type header for the object (e.g., 'text/plain', 'application/json') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description must disclose behavioral traits. It mentions dryRun preview but omits critical details for an upload operation, such as overwriting behavior, required permissions, or the effect on existing objects. This is a significant transparency gap for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the primary action. No extraneous words, and the dryRun hint is placed as a useful secondary note.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an upload tool with five schemas-described parameters and no output schema, the description is minimal but not dangerously incomplete. It lacks prerequisites (e.g., bucket existence) and return-value context, but the schema covers the parameter meanings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents all parameters. The description adds 'Use dryRun=true to preview,' which is redundant with the schema's dryRun explanation and does not clarify other parameters like body encoding or contentType.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource pair ('Upload (put) an object to an Object Storage bucket') and distinguishes itself from siblings like get_object, delete_object, and list_objects. It also notes the dryRun preview, which is a clear behavioral scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as copy_object, initiate_multipart_upload, or upload_part. The description simply restates the tool's purpose without context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_put_object_aclB
Set the access control list (ACL) of an object in Object Storage using a canned ACL
| Name | Required | Description | Default |
|---|---|---|---|
| acl | Yes | Canned ACL to apply (private, public-read, public-read-write, authenticated-read) | |
| bucketName | Yes | Name of the bucket containing the object | |
| objectName | Yes | Object key (path) to set ACL for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description bears full responsibility for behavioral disclosure. It only says 'Set' without revealing side effects, idempotency, permission requirements, or that the existing ACL will be overwritten. No additional behavioral context is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It efficiently conveys the tool's core purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation tool with complete parameter documentation, the description is minimally viable. However, it lacks contextual details such as when to choose this over related tools, any behavioral caveats, or prerequisites (e.g., object existence), and there are no annotations or output schema to supplement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter already has a clear description. The only semantic addition is 'using a canned ACL', which is already reflected in the 'acl' property's enum and description, providing no net new value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set'), the resource ('access control list (ACL) of an object in Object Storage'), and the method ('using a canned ACL'). It distinguishes from sibling tools like ncloud_put_bucket_acl by explicitly mentioning 'object'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or point to related tools such as ncloud_get_object_acl or ncloud_put_bucket_acl for bucket-level ACL operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_put_scaling_policyB
Create or update a scaling policy for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| cooldown | No | Cooldown period in seconds after scaling | |
| policyName | Yes | Scaling policy name | |
| minAdjustmentStep | No | Minimum adjustment step for percentage-based scaling | |
| scalingAdjustment | Yes | Scaling adjustment value | |
| adjustmentTypeCode | Yes | Adjustment type (CHANG — exact change, PRCNT — percentage, EXACT — set to exact number) | |
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of disclosing behavioral traits. It only says 'Create or update' without explaining side effects, idempotency, permission requirements, error conditions, or impact on existing policies. This is insufficient for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It efficiently conveys the core action and resource. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and empty annotations, the description must provide more context. It lacks information about when to use the tool, behavior on existing policies, prerequisites, or how adjustment types affect outcomes. The minimal description leaves significant gaps for an agent trying to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each of the 6 parameters having a description. The tool description adds no additional parameter semantics, but it does not need to since the schema is comprehensive. This aligns with the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create or update') and the resource ('a scaling policy for an Auto Scaling Group'), which is specific and distinguishes it from related sibling tools that list, delete, or execute scaling policies. The verb+resource combination is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites, exclusions, or references to sibling tools such as ncloud_list_scaling_policies or ncloud_delete_scaling_policy. The description simply states what it does without contextualizing usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_put_scheduled_actionB
Create or update a scheduled action for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | End time in ISO 8601 format (e.g. 2024-12-31T23:59:59+0900) | |
| maxSize | No | Maximum size at scheduled time | |
| minSize | No | Minimum size at scheduled time | |
| startTime | No | Start time in ISO 8601 format (e.g. 2024-01-01T00:00:00+0900) | |
| desiredCapacity | No | Desired capacity at scheduled time | |
| recurrenceInKST | No | Cron expression in KST (e.g. '0 9 * * 1-5' for weekdays at 9am KST) | |
| autoScalingGroupNo | Yes | Auto Scaling Group number | |
| scheduledActionName | Yes | Scheduled action name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure. It merely says 'Create or update' without explaining important semantics: whether an existing scheduled action is fully replaced, whether all parameters are required for updates, or how one-time vs recurring schedules interact. For a mutation tool, this is a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of ten words, front-loaded with the action verb. Every word earns its place, and there is no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 8 parameters, no output schema, and no annotations, yet the description provides minimal context. It does not explain scheduling concepts (one-time vs recurring using recurrenceInKST), the effect of updating an existing action, or expected response/behavior. For a complex ASG scheduling operation, this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with meaningful descriptions for all 8 parameters, so the baseline is 3. The description adds no additional parameter-level detail beyond what the schema already states, so no extra credit is warranted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create or update') and resource ('a scheduled action for an Auto Scaling Group'). This clearly distinguishes it from sibling tools like ncloud_list_scheduled_actions and ncloud_delete_scheduled_action, and also from ncloud_put_scaling_policy which targets a different resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the phrase 'Create or update' and the resource type, but the description does not explicitly state when to use this tool versus alternatives or mention any exclusions or preconditions. There is no guidance on choosing between this and related tools like delete_scheduled_action or put_scaling_policy, though the resource clarity partially compensates.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_query_monitoring_dataCRead-only
Query time-series monitoring data from Cloud Insight. Returns metric data for a specific product and metric. The aggregation must match one configured in the product schema.
| Name | Required | Description | Default |
|---|---|---|---|
| cw_key | Yes | Product key (cw_key) identifying the service (see Cloud Insight metrics) | |
| metric | Yes | Metric name to query (e.g., "avg_cpu_used_rto", "mem_usert") | |
| timeEnd | Yes | End time in Unix epoch milliseconds | |
| interval | No | Aggregation interval (default: Min1) | |
| timeStart | Yes | Start time in Unix epoch milliseconds | |
| dimensions | Yes | Dimensions identifying the resource as key-value pairs (required, e.g., {"instanceNo": "12345"}) | |
| aggregation | No | Aggregation type (default: AVG) | |
| productName | No | Product name (e.g., "System/Server(VPC)") | |
| queryAggregation | No | How to aggregate query results when the query interval is coarser than stored data (default: AVG) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide readOnlyHint=true, so safety is covered. However, the description adds little behavioral context beyond what the first sentence implies – it doesn't mention rate limits, response format (e.g., time series array), or data retention constraints. For a query tool, a bit more on return behavior would help.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core purpose and a key constraint. It is concise with no wasted words, though it could be slightly more structured (e.g., bullet points for constraints).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters, nested dimensions, and no output schema, the description is somewhat sparse. It doesn't explain the expected return format or how to handle pagination, but it does cover the essential purpose and one key constraint. For the complexity, a bit more detail would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning every parameter is documented in the schema itself. The description adds a constraint about aggregation matching the product schema, which is a helpful cross-parameter note, but doesn't explain parameter semantics beyond that. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource (query time-series monitoring data) and specifies it returns metric data for a product and metric. It clearly distinguishes from siblings like ncloud_send_monitoring_data or ncloud_query_monitoring_data_multiple, though it doesn't explicitly name the latter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternatives are mentioned. The agent must infer from the context that this is for querying single metric data, but the description doesn't say when to use this versus ncloud_query_monitoring_data_multiple or other monitoring tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_query_monitoring_data_multipleARead-only
Query multiple time-series monitoring data from Cloud Insight in a single request (up to 20 metric conditions).
| Name | Required | Description | Default |
|---|---|---|---|
| timeEnd | Yes | End time in Unix epoch milliseconds | |
| timeStart | Yes | Start time in Unix epoch milliseconds | |
| metricInfoList | Yes | Array of metric queries to execute (max 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this is a safe read operation, so the description's job is to add context, and it does supply the batch ceiling of 20 conditions. Beyond that it says nothing about return format, data-point limits, retention windows, or rate limits for a monitoring query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the scope constraint front-loaded and no filler words. The parenthetical carries real information (batch cap) rather than padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only query with a fully documented nested schema and a safety annotation, the core is covered. However, with no output schema the agent gets no hint of the response shape (series structure, aggregation of results, partial-failure behavior when some of the 20 conditions are invalid), which is a real gap for a batch API.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the nested metricInfoList fields (metric, prodKey, interval enum, dimensions, aggregations) are fully documented in the schema itself. The description's only parameter-adjacent detail, the 20-condition cap, merely restates maxItems=20, so it adds no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb and resource ('Query ... monitoring data from Cloud Insight') and states the scope precisely: multiple time-series in one request, capped at 20 metric conditions. It implicitly separates itself from the singular sibling ncloud_query_monitoring_data via 'multiple', but never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by 'multiple ... in a single request', which suggests batching several metrics rather than issuing several single-metric calls. There is no explicit when-to-use statement, no exclusion conditions, and no reference to the sibling query tool as the alternative for single-metric lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_query_widget_previewBRead-only
Query widget preview chart data from Cloud Insight by specifying metrics directly.
| Name | Required | Description | Default |
|---|---|---|---|
| periodEnd | Yes | End time in Unix epoch milliseconds | |
| metricsInfo | Yes | Metric definitions to preview (WidgetMetricInfoDto[]) | |
| periodStart | Yes | Start time in Unix epoch milliseconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is already covered. The description adds that data comes from Cloud Insight and that metrics are supplied directly, which is useful framing, but it says nothing about auth requirements, result size, or aggregation behavior beyond what the schema's enums already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the purpose and the metric-driven approach come first. It is efficient, though perhaps too sparse for a tool with a complex nested metricsInfo array.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations covering safety and a fully documented schema, the core need is met. But for a query tool with no output schema and a nested metric-definition array, the description gives no sense of what the preview returns or how multiple metrics are combined, leaving a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with richly documented nested fields (metric, prodKey, statistic, period, dimensions), so the schema does the heavy lifting. The description's only parameter-relevant contribution is 'specifying metrics directly,' which does not add meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Query) and resource (widget preview chart data from Cloud Insight) with the key distinguishing detail that metrics are specified directly. However, it doesn't name or contrast with the many nearby monitoring siblings (ncloud_query_monitoring_data, ncloud_get_dashboard_widgets, ncloud_get_dashboard_widget_image), so an agent gets the purpose but no sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance. 'By specifying metrics directly' implies a contrast with a widget-ID-based fetch, but no alternative tool is named and no prerequisites or context are given. This leaves routing entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_reboot_cache_serverAIdempotent
Reboot a Cloud DB for Cache server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudCacheServerInstanceNo | Yes | Cloud Cache server instance number to reboot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, establishing the safety profile. The description adds no extra behavioral context such as potential downtime, duration, or post-reboot status. It simply restates the action without additional transparency beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler or redundancy. The description is front-loaded with the action and resource, making it immediately scannable and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one required parameter), the presence of idempotent and non-destructive annotations, and the absence of an output schema, the description is sufficient to understand the tool's function. It could mention that the reboot may temporarily disrupt the cache service, but that is not essential given the clear action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for the single parameter, including a clear description ('Cloud Cache server instance number to reboot'). The tool description adds no additional meaning, examples, or format details beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific action ('Reboot') and a specific resource ('Cloud DB for Cache server instance'), which clearly distinguishes it from sibling reboot tools like ncloud_reboot_mysql_server or ncloud_reboot_server. It is concise and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly identifies the resource type, making it evident when this tool should be used (for Cloud DB for Cache instances) versus other reboot tools. However, it does not explicitly state exclusions or alternatives, falling slightly short of the full guidance provided in top-tier examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_reboot_mongodb_serverBIdempotent
Reboot a Cloud DB for MongoDB server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMongoDbServerInstanceNo | Yes | Cloud MongoDB server instance number to reboot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, leaving a low burden on the description. However, the description provides no additional behavioral traits beyond the annotations—nothing about temporary downtime, asynchronous execution, or instance-state requirements. It does not contradict the annotations, but it is essentially silent on behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action verb, and contains zero filler words. Every word earns its place by precisely stating the tool's purpose. It is appropriately sized for a simple one-parameter reboot operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low-complexity (one required parameter, no output schema) and the annotations cover the safety profile, so the description is minimally sufficient. However, it lacks operational context that would help an agent set expectations, such as the instance becoming temporarily unavailable or the reboot being asynchronous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with cloudMongoDbServerInstanceNo already described as 'Cloud MongoDB server instance number to reboot'. Therefore the baseline is 3. The description adds no additional parameter meaning beyond the schema; the single parameter's semantics are fully captured by the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Reboot a Cloud DB for MongoDB server instance' uses the specific verb 'Reboot' and clearly identifies the target resource (Cloud DB for MongoDB server instance). It distinguishes from sibling reboot tools like ncloud_reboot_mysql_server by naming MongoDB, though it is essentially a short paraphrase of the tool name without explicit differentiation from alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool, what prerequisites exist, or which alternatives apply. It does not mention that the instance must be running, that the instance number can be obtained from ncloud_list_mongodb_instances, or that other reboot tools (e.g., ncloud_reboot_mysql_server) should be used for other database types. Usage is only implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_reboot_mssql_serverBIdempotent
Reboot a Cloud DB for MSSQL server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMssqlServerInstanceNo | Yes | Cloud MSSQL server instance number to reboot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, which covers the safety profile. However, the description adds no additional behavioral context such as whether the reboot causes downtime, is asynchronous, or if there are any side effects. It does not contradict the annotations, but it also provides no extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence of 8 words that immediately conveys the core operation. There is no wasted text, and it is appropriately sized for a simple reboot action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter reboot tool, the description is minimally adequate. The schema covers the parameter, and annotations cover safety. However, the description lacks any context about operational impact (e.g., downtime, async behavior) or when to use the tool, which would help an agent invoke it correctly. It is not incomplete enough to be unusable, but it barely meets the minimum viable threshold.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage for the single parameter (cloudMssqlServerInstanceNo) with a clear description. The description's mention of 'server instance' only loosely ties to the parameter without adding any new format, constraints, or deeper meaning. Baseline 3 applies since the schema does all necessary work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Reboot') and the resource ('Cloud DB for MSSQL server instance'), which distinguishes it from other reboot tools for MySQL, PostgreSQL, etc. The wording is slightly awkward ('a Cloud DB for MSSQL server instance') but the meaning is unambiguous. It loses a point because it doesn't explicitly mention the instance number parameter, though that is covered by the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., ncloud_reboot_mysql_server, ncloud_reboot_postgresql_server) or any prerequisites like instance state. The description simply restates the action without any usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_reboot_mysql_serverBIdempotent
Reboot a Cloud DB for MySQL server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudMysqlServerInstanceNo | Yes | Cloud MySQL server instance number to reboot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations already indicating idempotency and non-destructive nature, the description adds no further behavioral context such as expected downtime or connection impact. It simply restates the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that gets straight to the point with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool, full parameter schema, and annotations covering safety, the description is adequate for selection and invocation. However, it lacks any additional context about side effects, but that is not critical for a straightforward reboot operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents the single parameter (cloudMysqlServerInstanceNo) with a description, and the tool description does not add additional semantics. Baseline 3 applies for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Reboot' and identifies the resource as 'Cloud DB for MySQL server instance', clearly distinguishing it from sibling reboot tools for other database types (e.g., PostgreSQL, MongoDB).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites. It is a bare statement of the operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_reboot_postgresql_serverBIdempotent
Reboot a Cloud DB for PostgreSQL server instance
| Name | Required | Description | Default |
|---|---|---|---|
| cloudPostgresqlServerInstanceNo | Yes | Cloud PostgreSQL server instance number to reboot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, but the description adds no context about operational effects like temporary downtime, connection interruptions, or required permissions. For a disruptive action, this absence of disclosure is a gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero waste. It conveys the essential information without any redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple reboot operation with one parameter and solid annotations, the description is sufficient. Adding a note about the operational impact (e.g., brief downtime) would make it fully complete, but the low complexity warrants a high score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the single parameter with 100% coverage, and the description adds no additional meaning beyond what the schema already provides. The baseline of 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Reboot') and the specific resource ('Cloud DB for PostgreSQL server instance'), making it unambiguous and distinct from sibling reboot tools for other database types like MySQL, MSSQL, MongoDB, and Cache.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as rebooting MySQL or regular servers. It lacks any context about prerequisites, use cases, or when this tool is the appropriate choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_reboot_serverAIdempotent
Reboot one or more running server instances
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNoList | Yes | List of server instance numbers to reboot |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description is not burdened with the full safety profile. It adds the prerequisite that instances must be running and that multiple servers can be included, but it does not disclose potential downtime or whether the reboot is graceful. This is adequate given the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that directly states the action, resource, and scope. There is no redundancy or unnecessary detail—every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a low-complexity tool with one parameter and no output schema. The description covers the action and scope, and the annotation covers idempotency and safety. It could have mentioned that it is for compute server instances (as opposed to database servers), but the tool name and sibling context make this clear. Overall, the description is complete enough for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, serverInstanceNoList, is fully described in the schema (100% coverage) as a list of server instance numbers to reboot. The main description adds no additional parameter semantics, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Reboot') with a clear resource ('server instances') and scope ('one or more running'), distinguishing it from sibling tools like start_server, stop_server, and terminate_server. It is immediately obvious what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'running server instances' establishes a clear context for when to use the tool (only on running instances) and indicates support for multiple instances. However, it does not explicitly mention alternatives or when-not-to-use cases, though the verb itself makes the usage clear relative to start/stop/terminate siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_register_external_certificateC
Register an external SSL certificate issued by a third-party CA (e.g. Let's Encrypt, ZeroSSL, DigiCert). certificateName: 3-20 chars, starts with a letter, letters/digits/'-' only (validated before the call).
| Name | Required | Description | Default |
|---|---|---|---|
| privateKey | Yes | PEM-encoded private key (must be decrypted, not encrypted) | |
| certificateName | Yes | Certificate name: 3-20 chars, must start with a letter, English letters/digits/'-' only, unique within the account (limit reduced from 30 to 20 chars on 2026-09-17) | |
| certificateChain | Yes | PEM-encoded certificate chain (intermediate CA certificates) | |
| publicKeyCertificate | Yes | PEM-encoded certificate body (public key certificate) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint: false, which is useful but doesn't fully characterize the operation. The description adds a small note that certificateName is 'validated before the call', which hints at input validation behavior, but it doesn't disclose any other behavioral traits such as whether registration replaces an existing certificate, if the operation is idempotent, or any permission requirements. For a registration action with minimal annotation coverage, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: a single action sentence followed by a brief validation constraint. No fluff or redundant phrasing, and the primary purpose is front-loaded. While the validation note duplicates some schema info, it adds a unique behavioral nuance ('validated before the call') that justifies its inclusion. It earns a high score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With four required parameters Skapa and no output schema, the description needs to provide more context for an agent to invoke the tool correctly. It lacks information about the expected result (does it return a certificate ID?), any prerequisites, and the effect on existing certificates (e.g., name uniqueness is in schema but not in description). The description is too sparse to be considered complete for a mutation operation, even with annotations covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% description coverage for all four parameters, including formats (PEM-encoded, decrypted) and constraints (3-20 chars, unique). The description adds no substantive meaning beyond what the schema already offers; the only extra is 'validated before the call', which is a minor behavioral note rather than parameter semantics. Per the baseline, a score of 3 is appropriate when the schema fully documents parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Register an external SSL certificate') and identifies the resource as a certificate from a third-party CA, with concrete examples (Let's Encrypt, ZeroSSL, DigiCert). This is specific and avoids tautology myself. However, it does not explicitly distinguish from sibling tools like ncloud_pca_issue_end_cert or ncloud_edge_provision_certificate, though the term 'external' subtly differentiates it from internal CA offerings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no explicit guidance on when to use this tool versus alternatives, nor any exclusions or preconditions. The word 'external' implies this is for third-party CAs, but there's no statement like 'for internal certificates use PCA tools' or 'use this when you have a certificate from a public CA'. An agent must infer usage context from the name and description, which is insufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_acg_inbound_ruleADestructiveIdempotent
⚠️ Destructive: Remove an inbound rule from an Access Control Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (required) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| ipBlock | No | IP block in CIDR format. Cannot be used with accessControlGroupSequence. | |
| portRange | No | Port range (e.g., 80, 1-65535). Required if protocol is TCP or UDP. | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP, or protocol number) | |
| accessControlGroupNo | Yes | ACG number to remove rule from (required) | |
| accessControlGroupSequence | No | Source ACG number. Cannot be used with ipBlock. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, the description adds crucial behavioral context: 'Set confirm=true to execute.' This explains the safety confirmation mechanism not visible in annotations, though it does not elaborate on other behavioral aspects like idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with the destructive warning front-loaded. Every word provides value, and there is no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema and annotations cover parameters and safety, the description lacks context about prerequisites, mutual exclusions (e.g., ipBlock vs accessControlGroupSequence), and what happens after removal. It is minimally adequate but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameter semantics are fully covered by the schema. The description's mention of confirm=true adds no new information beyond what the schema already states for that parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Remove an inbound rule from an Access Control Group' using a specific verb and resource. It clearly distinguishes from sibling tools like ncloud_add_acg_inbound_rule and ncloud_remove_acg_outbound_rule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. The name and context imply usage for removing inbound ACG rules, but there is no mention of exclusions or references to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_acg_outbound_ruleADestructiveIdempotent
⚠️ Destructive: Remove an outbound rule from an Access Control Group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (required) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| ipBlock | No | IP block in CIDR format. Cannot be used with accessControlGroupSequence. | |
| portRange | No | Port range (e.g., 80, 1-65535). Required if protocol is TCP or UDP. | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP, or protocol number) | |
| accessControlGroupNo | Yes | ACG number to remove rule from (required) | |
| accessControlGroupSequence | No | Destination ACG number. Cannot be used with ipBlock. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Although destructiveHint annotation already signals destructiveness, the description adds value by explicitly warning with ⚠️ and highlighting the confirm=true gate required to execute. This goes beyond the annotation, though it does not elaborate on idempotency or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the warning, states the action, and gives the essential confirm instruction. No wasted words, highly scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive removal tool with comprehensive schema and annotations, the description sufficiently covers the critical operational context (destructive, confirm required). It does not cover success/failure return values or prerequisites, but those are less critical given the simple single-object operation and existing structured metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description only repeats the confirm=true instruction already present in the schema (property 'confirm'), adding no additional meaning beyond what structured data provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Remove an outbound rule from an Access Control Group.' This specific verb+resource+scope distinguishes it from sibling tools like ncloud_remove_acg_inbound_rule by explicitly naming 'outbound'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implicit context (destructive, requires confirm=true) but does not explicitly state when to use this tool over alternatives, mention exclusions, or describe scenarios. It relies on the tool name and schema for context, offering no direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_file_pluginADestructiveIdempotent
⚠️ Destructive: Remove file monitoring plugin(s) from a server instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| confirm | No | Must be true to actually execute the destructive operation | |
| configList | Yes | File paths to remove | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds value by explicitly stating what is destroyed ('file monitoring plugin(s)') and requiring a confirmation flag ('Set confirm=true to execute'), which is crucial for safe usage. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single concise sentence preceded by a warning symbol. Every word contributes: it names the action, target, and critical confirmation requirement. No wasted text or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive removal tool, the description adequately covers the action, the lifecycle (confirmation required), and the target. The annotations supply safety context, and the schema covers parameter details. It does not explain return values, but that is not critical for this operation type.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and all parameters already have descriptions (e.g., configList 'File paths to remove', confirm 'Must be true to actually execute'). The tool description does not add additional parameter semantics beyond what the schema provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the specific action ('Remove') and resource ('file monitoring plugin(s)') with target ('server instance'), distinguishing it from sibling tools like list/get/add/set file plugins. The verb+resource structure leaves no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives (e.g., list/add/set file plugins). It provides the important safety instruction 'Set confirm=true to execute' but that is an invocation detail, not a selection guideline. Usage context is implied by the name and destructive warning.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_lb_listener_certificateADestructiveIdempotent
⚠️ DESTRUCTIVE: Remove an SNI-based TLS certificate from a load balancer listener. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | ⚠️ DESTRUCTIVE: Must be true to actually execute the certificate removal | |
| sslCertificateNo | Yes | SSL certificate number to remove | |
| loadBalancerListenerNo | Yes | Load balancer listener number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (destructiveHint, idempotentHint) and adds context about the 'confirm' safety mechanism and the SNI-based certificate type. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, no unnecessary words. The destructive warning is front-loaded, and the key execution instruction (confirm=true) is prominent. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive but idempotent tool, the description covers the essential points: what it does, its destructive nature, and the required confirm parameter. No output schema exists, which is acceptable. Could mention prerequisites like listener existence, but overall complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, so the description adds limited meaning beyond the schema. It clarifies the confirm parameter's role as a safety gate, but the other parameters are adequately described in the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Remove an SNI-based TLS certificate from a load balancer listener.' It uses a specific verb (Remove) and resource (SNI-based TLS certificate from a load balancer listener), distinguishing it from other load balancer operations like adding a certificate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage guidance by noting the destructive nature and requiring confirm=true to execute. However, it does not explicitly compare this tool to alternatives (e.g., ncloud_add_lb_listener_certificate) or specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_member_server_image_sharingADestructiveIdempotent
⚠️ DESTRUCTIVE: Remove sharing permission for a member server image. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| targetLoginIdList | Yes | List of target login IDs to revoke sharing permission | |
| memberServerImageInstanceNo | Yes | Member server image instance number to remove sharing from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructiveHint and idempotentHint. The description adds the confirm=true safeguard requirement and a strong 'DESTRUCTIVE' warning, going beyond the structured annotations. It does not detail post-conditions or reversibility, but the annotations already cover the destructive nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a clear warning emoji and front-loaded destructive alert. Every word contributes: the action, the resource, and the execution requirement. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema covers all parameters, annotations cover destructive/idempotent behavior, and the description specifies the confirmation gate. For a focused permission removal tool, this is largely complete. It lacks mention of what happens after removal (e.g., immediate loss of access), but the destructive hint already signals consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add additional meaning to the parameters; it only repeats the confirm requirement already present in the schema. No extra context for targetLoginIdList or memberServerImageInstanceNo is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Remove sharing permission for a member server image.' It includes the resource type ('member server image') and distinguishes from sibling tools like ncloud_remove_server_image_sharing by scoping to member images. The destructive warning and confirm requirement add clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly mention when to use this tool versus alternatives such as ncloud_add_member_server_image_sharing or ncloud_remove_server_image_sharing. It provides an operational guideline ('Set confirm=true to execute') but no selection guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_nas_volume_access_controlADestructiveIdempotent
⚠️ Destructive: Remove server instance access control from a NAS volume (NFS protocol). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| nasVolumeInstanceNo | Yes | NAS volume instance number | |
| serverInstanceNoList | Yes | List of server instance numbers to revoke access |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true. The description adds valuable behavioral context beyond the annotations: it warns with '⚠️ Destructive' and explicitly states the confirmation requirement ('Set confirm=true to execute'), which is critical for safe usage. This adds meaningful transparency about the destructive nature and the required safety mechanism.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the destructive nature, the specific operation, and the required confirmation, all without wasted words. It is exceptionally concise while retaining all essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward destructive operation with three parameters and no output schema, the description covers the core action, the NFS context, and the confirm safety gate. It does not elaborate on the post-removal state (e.g., that listed server instances lose access), but this is largely implied by the tool's purpose and the parameter list. The description is mostly complete for its complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters (confirm, nasVolumeInstanceNo, serverInstanceNoList) are already well-documented in the schema. The description repeats the confirm semantics but does not add additional meaning beyond the schema, such as format expectations or relationships between parameters. This aligns with the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Remove server instance access control from a NAS volume (NFS protocol).' This uses a specific verb and resource, and explicitly mentions NFS protocol, which distinguishes it from sibling tools like add/set access control. The tool's name further reinforces this purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (when needing to remove server instance access control from a NAS volume) and includes the critical usage requirement 'Set confirm=true to execute.' It does not explicitly name alternatives or exclusions, but the context is unambiguous and the confirmation gate is explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_network_acl_inboundADestructiveIdempotent
⚠️ Destructive: Remove an inbound rule from a Network ACL. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| ipBlock | No | IP block in CIDR format | |
| priority | Yes | Rule priority to remove | |
| portRange | No | Port range (e.g., 80, 1-65535) | |
| networkAclNo | Yes | Network ACL number | |
| ruleActionCode | Yes | Rule action (ALLOW or DROP) | |
| denyAllowGroupNo | No | Deny-Allow Group number | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds the confirm-gating behavior ('Set confirm=true to execute'), which is not in the annotations, and reinforces the destructive nature. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: the first states the core action, the second provides the necessary confirmation requirement. No filler or redundant details; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the annotations cover the destructive/idempotent nature and the schema fully documents parameters, the description provides the essential extra context (confirm=true requirement). It is sufficient for a destructive removal tool, though it could theoretically mention the effect on traffic, which is not necessary given annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 8 parameters have descriptions in the schema (100% coverage), so the schema carries the parameter semantics. The description mentions 'confirm', but that is also documented in the schema, adding no new meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Remove an inbound rule from a Network ACL' with a specific verb and resource, clearly distinguishing from sibling tools like ncloud_remove_network_acl_outbound and ncloud_add_network_acl_inbound. It is unambiguous and immediately conveys the exact operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly compare with alternatives or state when not to use. It provides an execution prerequisite ('Set confirm=true to execute'), but usage context is otherwise only implied by the tool's name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_network_acl_outboundADestructiveIdempotent
⚠️ Destructive: Remove an outbound rule from a Network ACL. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| ipBlock | No | IP block in CIDR format | |
| priority | Yes | Rule priority to remove | |
| portRange | No | Port range (e.g., 80, 1-65535) | |
| networkAclNo | Yes | Network ACL number | |
| ruleActionCode | Yes | Rule action (ALLOW or DROP) | |
| denyAllowGroupNo | No | Deny-Allow Group number | |
| protocolTypeCode | Yes | Protocol type code (TCP, UDP, ICMP) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds the confirmation gate (confirm=true) beyond the destructiveHint annotation, warning that removal only executes with this flag. The destructive nature is reaffirmed with the warning emoji.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with warning, front-loaded, every word serves a purpose. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description plus rich schema and annotations cover the action, confirmation requirement, and parameter details. No output schema exists, but for a simple removal operation this is sufficient. Could optionally mention post-condition or reversibility but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover all 8 parameters, and the description does not add semantic detail beyond the confirm=true mention already present in the schema. Baseline 3 applies due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Remove' and resource 'outbound rule from a Network ACL', clearly distinguishing from the inbound sibling by direction. The warning icon and confirm instruction add operational clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context that this targets outbound rules and requires confirm=true, but does not explicitly name the inbound alternative or specify when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_nic_acgADestructiveIdempotent
⚠️ DESTRUCTIVE: Remove access control groups (ACGs) from a network interface. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| networkInterfaceNo | Yes | Network interface number to remove ACGs from | |
| accessControlGroupNoList | Yes | List of ACG numbers to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint and idempotentHint annotations, the description adds the crucial behavioral requirement that confirm must be true to execute, which is not part of the annotations. It also provides an explicit warning symbol, reinforcing the destructive nature. However, it does not elaborate on side effects beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with a warning emoji, a clear action, and the confirm requirement. Every phrase earns its place; no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter tool with no output schema, the description covers the core purpose and the mandatory confirm flag. However, it lacks explicit usage guidance or reference to the complementary ncloud_add_nic_acg tool, leaving some contextual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not add meaning beyond the schema; it restates the action and the confirm parameter, which is already fully described in the schema ('Must be true to actually execute the destructive operation'). With 100% schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Remove' and the resource 'access control groups (ACGs) from a network interface,' which distinguishes it from related tools like ncloud_add_nic_acg. It also includes the critical safety requirement to set confirm=true, reinforcing the specific action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when ACGs need to be detached from a network interface, but it does not explicitly mention alternative tools or provide when-to-use/when-not-to-use guidance. The sibling ncloud_add_nic_acg exists, but no direct comparison is made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_placement_group_serverADestructiveIdempotent
⚠️ Destructive: Remove a server instance from a placement group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| placementGroupNo | Yes | Placement group number | |
| serverInstanceNo | Yes | Server instance number to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description reinforces the destructive nature with a warning emoji and adds behavioral context beyond annotations: the operation will not execute unless confirm=true is set. It does not contradict annotations and effectively communicates the safety gate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences: a warning label plus the core action and the mandatory confirmation instruction. It is front-loaded with '⚠️ Destructive', every sentence earns its place, and there is no extraneous text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive mutation with only three parameters, no output schema, and sufficient annotations, the description covers the essential context: what the operation does, that it is destructive, and the confirm gate. It does not explain side effects or mention the inverse operation, but given the schema and annotations, the description is adequately complete for an agent to use the tool safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter documented (confirm requires true, placementGroupNo is the group number, serverInstanceNo is the server to remove). The description itself only restates the confirm requirement ('Set confirm=true'), which is already in the schema. Baseline 3 is appropriate since the schema carries the parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource: 'Remove a server instance from a placement group.' It clearly identifies the exact operation and distinguishes it from sibling tools like ncloud_add_placement_group_server (adds) and ncloud_delete_placement_group (deletes the entire group).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the use case ('Remove a server instance from a placement group') and provides a crucial usage requirement ('Set confirm=true to execute'). It implies when to use this tool, though it does not explicitly mention alternatives or exclusion cases. The safety-critical confirmation instruction is strong guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_port_pluginADestructiveIdempotent
⚠️ Destructive: Remove port monitoring plugin(s) from a server instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| confirm | No | Must be true to actually execute the destructive operation | |
| portList | Yes | Port numbers to remove | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include destructiveHint and idempotentHint. The description adds a warning and clarifies the confirm flag requirement, explaining that execution only happens when confirm=true. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence with a warning prefix. Information is front-loaded and every word adds value; no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with 4 parameters and no output schema, the description covers the essential safety and execution requirements. It could mention prerequisites or side effects, but the current description is sufficient for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are documented in the schema. The description reinforces the confirm behavior already described in the schema but adds no new parameter-specific meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Remove port monitoring plugin(s) from a server instance' with a specific verb and resource. It distinguishes itself from sibling tools like ncloud_list_port_plugins, ncloud_add_port_plugin, and ncloud_set_port_plugins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied (use when you want to remove port monitoring plugins), but there is no explicit when-to-use or when-not-to-use guidance or alternatives mentioned. The instruction 'Set confirm=true to execute' provides execution context but not tool-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_process_pluginADestructiveIdempotent
⚠️ Destructive: Remove process monitoring plugin(s) from a server instance. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| confirm | No | Must be true to actually execute the destructive operation | |
| configList | Yes | Process names to remove | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, but the description adds the explicit warning '⚠️ Destructive' and the requirement 'Set confirm=true to execute', which is essential behavioral context beyond what annotations provide. This helps the agent understand the safety guardrail without relying solely on the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the critical destructive warning, and each sentence serves a purpose: stating the action and explaining the prerequisite for execution. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential context for this destructive operation: what it does and the required confirm flag. There is no output schema, but this is a simple mutation tool, and the absence of return-value details is not a significant gap given the clear action and parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already described (instanceNo, configList, type, confirm). The description adds no additional parameter-level detail, so it does not exceed the baseline established by the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description provides a specific verb ('Remove') and resource ('process monitoring plugin(s) from a server instance'), clearly distinguishing it from sibling tools like add, set, or list. The action is unambiguous and directly related to the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the context ('Remove process monitoring plugin(s) from a server instance') and includes a critical usage instruction ('Set confirm=true to execute'). While it doesn't explicitly mention alternatives, the destructive nature and confirmation requirement give clear guidance on when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_resource_from_rulesBDestructiveIdempotent
⚠️ Destructive: Remove a specific monitoring target from the given Cloud Insight event rules.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute removal. | |
| prodKey | Yes | Product key (cw_key) | |
| resourceId | Yes | Resource ID (monitoring target) to remove from rules | |
| ruleGroupIds | Yes | Event Rule (rule group) IDs to remove the resource from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare destructiveHint=true and idempotentHint=true, and the '⚠️ Destructive' prefix largely restates that. The description adds only the target/scope context ('monitoring target', 'Cloud Insight event rules') and does not disclose the confirm-gate, required permissions, or the effect on existing rules, so it adds limited behavior beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that leads with the destructive warning and then states the action and scope. No filler and nothing redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool whose safety profile is covered by annotations and whose parameters are fully documented in the schema, the description is adequate but thin: it does not note the mandatory confirm step, permissions, or impact on the referenced rules. No output schema exists, so return values need not be described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (including the required confirm flag) are already documented in the schema. The description adds no parameter-level meaning, which meets the baseline for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description pairs a specific verb ('Remove') with a specific resource ('a specific monitoring target') and scope ('from the given Cloud Insight event rules'), so the agent can tell it apart from list/get rule tools. It stops short of naming a sibling add-counterpart (e.g., an add-resource-to-rules tool), so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use vs when-not-to-use guidance and no named alternatives (e.g., how this differs from deleting a whole rule group). The context of use is only implied by the operation itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_routeADestructiveIdempotent
⚠️ Destructive: Remove a route from a route table. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| confirm | No | Must be true to actually execute the destructive operation | |
| targetNo | Yes | Target instance number | |
| routeTableNo | Yes | Route table number | |
| targetTypeCode | Yes | Target type code (NATGW, VPCPEERING, VGW) | |
| destinationCidrBlock | Yes | Destination CIDR block of the route to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint, and the description reinforces this with a '⚠️ Destructive' warning. It also adds the confirmation gate ('Set confirm=true to execute'), which is behavioral context beyond the annotations. This discloses that the destructive operation will not execute unless confirmed, giving the agent a clear safety mechanism.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, with the critical warning placed first and the operational instruction second. Every word is necessary, and there is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple destructive operation, annotations cover safety, and schema covers all parameters, the description is complete enough. It adds the key confirmation requirement. Since there is no output schema, the description does not need to explain return values. A minor gap is the lack of prerequisites (e.g., valid route table), but that is implied by the parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: all six parameters (routeTableNo, vpcNo, destinationCidrBlock, targetTypeCode, targetNo, confirm) have descriptive text. The description adds no new parameter-level semantics beyond what the schema provides, so the baseline of 3 applies. It does reiterate the 'confirm' behavior but that is already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: 'Remove a route from a route table.' This distinguishes it from sibling tools like ncloud_add_route (adding) and ncloud_remove_route_table_subnet (removing a subnet, not a route). The verb 'remove' plus resource 'route' is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (you use this when you need to delete a route) and provides a critical instruction ('Set confirm=true to execute'), but it does not explicitly mention when to prefer this tool over alternatives like ncloud_remove_route_table_subnet or ncloud_add_route. No exclusions or alternative tools are named, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_route_table_subnetADestructiveIdempotent
⚠️ Destructive: Remove a subnet association from a route table. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| confirm | No | Must be true to actually execute the destructive operation | |
| subnetNo | Yes | Subnet number to remove from route table | |
| routeTableNo | Yes | Route table number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint and idempotentHint, so the description's destructive warning initially seems redundant. However, the description adds valuable context by explicitly telling the agent to set confirm=true to execute, which is an essential safety behavior not fully explained in the annotations alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that wastes no words. It packs the operation, the destructive warning, and the execution requirement into a compact, scannable format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple removal tool with full schema coverage, no output schema, and safety annotations, the description sufficiently covers the operation, destruction risk, and confirmation requirement. It doesn't elaborate on preconditions or response details, but the tool's simplicity and schema completeness make that acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all parameters, so the baseline is 3. The description adds extra semantic value by highlighting the confirm parameter's gatekeeping role ('Set confirm=true to execute'), which reinforces what the schema states but also frames it as the critical execution guard for a destructive operation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific verb 'Remove' and resource 'subnet association from a route table', making the tool's purpose immediately apparent. It distinguishes itself from sibling tools like ncloud_remove_route and ncloud_add_route_table_subnet by explicitly naming the association removal operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys the operation and provides a critical usage instruction ('Set confirm=true to execute'). While it doesn't explicitly mention when to choose this over alternatives, the narrowed scope ('subnet association from a route table') makes the usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_server_image_sharingBDestructiveIdempotent
⚠️ DESTRUCTIVE: Remove sharing permission for a server image. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| serverImageNo | Yes | Server image number to remove sharing from | |
| targetLoginIdList | Yes | List of target login IDs to revoke sharing permission |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true. The description's '⚠️ DESTRUCTIVE' repeats the destructive hint without adding new context such as irreversibility, permission requirements, or what exactly gets affected. The confirm=true instruction is already in the schema. Therefore no behavioral info beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with a clear warning and instruction, front-loaded. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given its simplicity, the description covers the basic purpose and confirmation mechanism. However, it omits context such as required ownership/ACL permissions, reversibility, and any alternate tool guidance. For a destructive action, this is a notable gap, though annotations partially compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter having a clear description. The description adds no new parameter semantics beyond reiterating the confirm=true requirement, which the schema already specifies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Remove sharing permission for a server image' with a specific verb and resource, clearly distinguishing from add/set operations and from the member-server-image variant by naming 'server image' in the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like ncloud_remove_member_server_image_sharing or ncloud_add_server_image_sharing. The description only mentions the confirm flag, which is a parameter instruction, not tool selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_remove_targetADestructiveIdempotent
⚠️ Destructive: Remove targets from a target group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| targetNoList | Yes | List of target (server instance) numbers to remove | |
| targetGroupNo | Yes | Target group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds a prominent destructive warning and specifies the confirm=true safeguard, which goes beyond the annotations' destructiveHint and idempotentHint. This gives the agent actionable knowledge that the operation requires explicit confirmation to execute. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with the critical warning front-loaded. Every word earns its place, and it avoids unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward destructive operation, the description and schema provide enough context to invoke the tool correctly. The absence of an output schema is acceptable, as return values are not critical for a removal action. The description could optionally mention effects on associated resources, but this is not essential for the core task.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for all three parameters (confirm, targetNoList, targetGroupNo) with 100% coverage. The description explicitly mentions confirm=true, which aligns with the schema but doesn't add new semantic detail. Thus the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Remove targets from a target group') with a specific verb and resource. It distinguishes itself from siblings like ncloud_add_target and ncloud_set_targets by focusing on removal. The scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its usage context by naming the exact operation and the confirmation requirement. However, it does not explicitly contrast with alternative tools such as ncloud_set_targets or ncloud_add_target, so it relies on the tool name and sibling list for differentiation. No exclusions or prerequisites are mentioned, making it clear but not fully prescriptive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resource_attach_groupBIdempotent
Add one or more resources to a resource group.
| Name | Required | Description | Default |
|---|---|---|---|
| groupId | Yes | Resource group ID | |
| nrnList | Yes | List of Ncloud Resource Names to add to the group (see ncloud_resource_list_resources) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, so the agent knows the operation is safe to retry and non-destructive. The description itself is minimal, but it does not contradict annotations. It adds little beyond the annotations regarding behavior such as partial failures or whether existing memberships are preserved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence that conveys the core operation without wasted words. It is appropriately concise for a simple tool and does not bury key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only 2 simple parameters and no output schema, the description plus schema annotations are mostly adequate for a basic call. However, the description does not clarify whether the resource group must already exist, how to discover valid group IDs (though ncloud_resource_list_groups exists as a sibling), or what response or error behavior to expect. These are minor gaps for such a straightforward operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: groupId is described as 'Resource group ID' and nrnList as 'List of Ncloud Resource Names to add to the group (see ncloud_resource_list_resources)'. The description repeats essentially the same information as the schema, so it adds little meaning beyond the schema. The nrnList schema description already gives a useful cross-reference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description "Add one or more resources to a resource group" states a clear verb ('Add') and identifies both the target resource (resource group) and what is being added (resources). It is distinct enough from sibling tools like ncloud_resource_detach_group and ncloud_resource_attach_tag, though it doesn't explicitly name those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when needing to add resources to an existing resource group, and the schema parameter nrnList references ncloud_resource_list_resources as a way to find resource names. However, it does not explicitly state when to use this tool instead of ncloud_resource_attach_tag or other resource-modification tools, nor does it mention prerequisites like the group needing to exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resource_attach_tagAIdempotent
Attach a tag to one or more resources. If the tag key already exists on a resource, only its value is updated.
| Name | Required | Description | Default |
|---|---|---|---|
| tagKey | Yes | Tag key to attach (1-128 chars; the special characters _ . / = + - @ are allowed) | |
| nrnList | Yes | List of Ncloud Resource Names to tag (see ncloud_resource_list_resources) | |
| tagValue | Yes | Tag value to attach (1-256 chars; the special characters _ . / = + - @ are allowed) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds meaningful behavioral nuance by explaining that an existing tag key results in only a value update, which matches and enriches the idempotency signal. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no filler. The core operation is stated first, and the important edge behavior (existing tag key) is included as a second sentence. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter tagging operation with full schema coverage and no output schema, the description is sufficient: it states the action, target, and update semantics. It could additionally mention what happens when a resource does not exist, but that is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented with types, constraints, and allowed characters. The description adds only minor context about one-or-more resources and update-on-existing-key behavior, but the schema carries the main semantic burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (attach a tag), the target (one or more resources), and the key behavior (updates existing tag value). This differentiates it from siblings like ncloud_resource_detach_tag and ncloud_resource_attach_group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is clear from the name and description, but there is no explicit guidance about when to prefer this tool over alternatives, such as ncloud_resource_detach_tag for removing tags. Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resource_detach_groupADestructiveIdempotent
⚠️ Destructive: Remove one or more resources from a resource group. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| groupId | Yes | Resource group ID | |
| nrnList | Yes | List of Ncloud Resource Names to remove from the group |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly labels the operation as 'Destructive' and explains that nothing happens without confirm=true. This goes beyond the annotations (destructiveHint=true) by clarifying that the operation is gated behind a confirmation flag, which is critical behavioral information. The description's warning is consistent with the annotations, and the safety mechanism is well disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that front-loads the most important information (destructive warning) before stating the action. It's appropriately sized and every word earns its place. It could be slightly improved by adding a note about the sibling attach operation, but as-is it is efficient and readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with three parameters, the description covers the essential context: what it does and the critical confirm gate. However, it doesn't mention the return value or whether the operation is reversible, and there's no mention of prerequisites (e.g., what happens if a resource doesn't exist in the group). The output schema absence means the agent doesn't know what to expect as a response, but the core calling context is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers 100% of parameter documentation, with descriptions for confirm, groupId, and nrnList. The description adds value by emphasizing the confirm parameter's role ('Set confirm=true to execute'), but it doesn't add additional meaning to groupId or nrnList beyond what the schema provides. With full schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Remove' and the resource ('one or more resources from a resource group'), which is specific enough to understand what the tool does. However, it doesn't explicitly distinguish itself from sibling tools like ncloud_resource_attach_group or ncloud_resource_detach_tag, though the name and action make it fairly clear. The destructive warning adds important context but the core purpose is stated simply and effectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells the agent that confirm=true is required to execute, which is a critical usage guideline. It gives a clear context for when to use the tool (when removing resources from a group), but it does not explicitly mention alternatives or when NOT to use it. Given the sibling tools, an explicit note about using attach_group for the reverse operation would have improved this score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resource_detach_tagADestructiveIdempotent
⚠️ Destructive: Remove a tag from one or more resources. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| tagKey | Yes | Tag key to remove (1-128 chars) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| nrnList | Yes | List of Ncloud Resource Names to remove tag from | |
| tagValue | No | Tag value (optional; omit to remove the key regardless of its value) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description repeats the destructiveHint annotation with the '⚠️ Destructive' label, but it adds meaningful behavioral context by stating that confirm=true is required to actually execute the operation. This discloses a safety-gate behavior that the annotation alone does not capture. It also communicates the multi-resource scope ('one or more resources'), adding value beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the destructive nature with the warning and immediately states the action and the confirm requirement. Every word earns its place; there is no filler, repetition, or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive operation with full schema coverage and annotations, the description is nearly sufficient: it identifies the action, the confirm safety gate, and the multi-resource scope. It does not cover partial-failure behavior or what happens if a tag is absent, but those are edge cases for a tool of this simplicity. No output schema exists, so return-value documentation is not expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters already have descriptions in the schema (100% coverage), so the description does not need to explain individual parameter semantics. The mention of 'one or more resources' loosely reflects the nrnList parameter, and 'Set confirm=true' echoes the confirm parameter's schema description. Since the schema carries the full semantic load, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a precise action with a specific verb and resource: 'Remove a tag from one or more resources.' This clearly differentiates it from sibling tools like ncloud_resource_attach_tag and ncloud_resource_detach_group based on the verb 'Remove' and the noun 'tag.' The tool name and description are perfectly aligned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is 'Set confirm=true to execute,' which tells the agent that the operation is gated by the confirm parameter. However, it does not mention when to prefer this tool over alternatives, nor does it state exclusions. Usage context is therefore implied rather than explicitly differentiated from siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resource_list_groupsBRead-only
List resource groups with optional name filter and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, 0-based (default 0) | |
| size | No | Page size 1~100 (default 20) | |
| groupName | No | Group name filter, exact match |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already communicates that this is a safe read operation, and the description is consistent with it ('List...'). It adds minor behavioral context by mentioning filtering and pagination, but it does not disclose details such as whether results are capped, ordered, or how pagination behaves at boundaries.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that conveys the core action, the resource, and the two optional behaviors with no wasted words. The details are appropriately deferred to the input schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with all parameters fully documented in the schema and a readOnlyHint annotation, the description is nearly sufficient. The main gap is that it does not clarify which 'groups' are being listed, which matters given the ncloud_list_groups sibling and the absence of an output schema describing the returned group objects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: page, size, and groupName each have descriptions including defaults, constraints, and exact-match semantics. The description only restates these as 'optional name filter and pagination,' adding no syntax or format detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('List') and resource ('resource groups') and adds the key capabilities of name filtering and pagination. It does not, however, explicitly distinguish this tool from the similarly named sibling ncloud_list_groups, leaving the agent to infer the difference from the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool or when to prefer an alternative. Given that the sibling ncloud_list_groups also lists 'groups', an explicit note about this being the resource-group tool (vs the IAM/sub-account group tool) would be valuable, but the description offers no such direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resource_list_resourcesARead-only
List resources managed in Ncloud. When NRN is specified, returns single resource detail with tags and groups. Note that every filter is an EXACT match — there is no partial/contains matching in this API. Each returned item carries both productName (the service code, the only value the productName filter accepts) and productDisplayName (the human-readable service name shown in the console).
| Name | Required | Description | Default |
|---|---|---|---|
| nrn | No | Ncloud Resource Name for single resource detail lookup | |
| tag | No | Tag filter array, e.g. [{tagKey: 'env', tagValue: 'dev'}] or [{tagKey: 'env'}] to filter by key alone | |
| page | No | Page number, 0-based (default 0) | |
| size | No | Page size, documented as 1~100 (default 20). The API was observed returning more than 100 rows for a larger value rather than rejecting or clamping it, so values above 100 work today but are outside the documented range — do not rely on them | |
| groupName | No | Group name filter, exact match | |
| regionCode | No | Region code filter, exact match (e.g., 'KR', 'JPN') | |
| resourceId | No | Resource ID filter, exact match | |
| productName | No | Service CODE of the resource, matched exactly — not the display name shown in the console. Service codes carry no spaces or parentheses: use 'DataQuery', not 'Data Query'. To discover the valid codes for this account, call this tool without a productName filter and read each item's productName (its productDisplayName is the console name). When a productName filter returns nothing, this tool retries once without it and reports the codes that do exist as productNameFilterHint | |
| resourceName | No | Resource name filter, exact match | |
| resourceType | No | Resource type filter, exact match (e.g., 'DataSource', 'Project'). See a returned item's resourceType for valid values |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses non-obvious API behaviors: exact-match only (no partial matching), the productName/productDisplayName distinction, the undocumented retry that falls back without productName and exposes productNameFilterHint, and the observed pagination anomaly (size >100 actually returns more rows). This is exactly the kind of behavioral context that annotations can't convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The main description is three sentences, each carrying distinct value: the action, the NRN special mode, and the exact-match/product-name caveats. No filler or restatement of the name. Additionally, the property descriptions are detailed but not bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The definition covers the essential return-field semantics (productName, productDisplayName, tags/groups in NRN mode) and all filter behaviors through a rich schema. Missing pieces are minor: no explicit statement of how multiple filters combine (presumably AND) and no output structure for paginated list results, which would matter more because there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already documents every parameter, so the baseline is 3. The tool description adds cross-cutting semantics: the exact-match rule applies to every filter, and the productName field explanation clarifies which field the filter accepts. This lifts the value above the schema alone, though most parameter meaning still lives in the property descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'List resources managed in Ncloud' — a specific verb and object — and immediately distinguishes the NRN mode ('returns single resource detail with tags and groups') from the default list mode. This separates it from sibling resource-group, attach, and detach tools. Clear and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear within-tool instructions: use NRN for single-resource detail, and it tells you to call without productName to discover valid codes. However, it never names sibling tools (e.g., ncloud_get_server_detail) or says when this general list is preferred over service-specific detail tools. The 'when not to use' guidance is absent, so the agent must infer the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_restore_nas_volume_with_snapshotADestructive
⚠️ Destructive: Restore a NAS volume to a previous snapshot state. Current data will be overwritten with the snapshot data. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| nasVolumeInstanceNo | Yes | NAS volume instance number to restore | |
| nasVolumeSnapshotNo | Yes | NAS volume snapshot number to restore from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
While destructiveHint annotation already marks it destructive, the description adds critical context: 'Current data will be overwritten with the snapshot data' and the confirm=true safeguard. This goes beyond the annotation by specifying the exact data-loss behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with a clear warning, the action, and the confirmation requirement. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-param destructive restore tool, the description plus schema fully cover the prerequisites, the destructive behavior, and the confirm safety mechanism. Output schema absence is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the description mostly restates the confirm parameter's purpose from the schema. It doesn't add new semantics for nasVolumeInstanceNo or nasVolumeSnapshotNo beyond their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Restore a NAS volume to a previous snapshot state' with a specific resource (NAS volume) and the effect (overwrite). This distinguishes it from sibling tools like create_nas_snapshot or delete_nas_snapshot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides the key usage requirement 'Set confirm=true to execute' and the context of restoring a volume, but doesn't explicitly name alternative tools or state when-not-to-use. The destructive warning implicitly signals caution.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_restore_objectA
Restore an object stored in Archive class to make it accessible. The restored copy is available for the specified number of days.
| Name | Required | Description | Default |
|---|---|---|---|
| days | Yes | Number of days to keep the restored copy accessible | |
| bucketName | Yes | Name of the bucket containing the archived object | |
| objectName | Yes | Key (path) of the archived object to restore |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral disclosure burden. It does disclose a key behavior: the restored copy is available for a specified number of days. However, it omits other traits like whether the restore is asynchronous, whether it incurs cost, or whether it affects the original archived object, and it doesn't describe any return value or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler. The main action is front-loaded in the first sentence, and the second sentence explains the duration parameter. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 required parameters and no output schema, the description covers the essential context: what triggers the restore, what makes it accessible, and the time-bound nature. The absence of notes about async behavior or permissions is a minor gap, but the tool is simple enough that this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% parameter coverage with descriptive text for bucketName, objectName, and days. The description reiterates the meaning of days ('available for the specified number of days') but adds no new semantic detail beyond the schema. Baseline of 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Restore') with a clear resource ('an object stored in Archive class') and states the outcome ('make it accessible'). This clearly distinguishes it from sibling tools like ncloud_get_object which retrieve accessible objects, and ncloud_copy_object which copies objects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly conditions the use case: objects stored in Archive class. This tells the agent when to use this tool versus other object operations. However, it doesn't explicitly name alternatives or exclusions, such as 'use get_object for objects not in Archive', which would strengthen guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_resume_processesAIdempotent
Resume previously suspended scaling processes for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| autoScalingGroupNo | Yes | Auto Scaling Group number | |
| scalingProcessCodeList | Yes | List of scaling process codes to resume |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the description's addition of 'previously suspended' provides some context about the target state. However, it does not disclose behavior if called on non-suspended processes, potential asynchronous side effects, or what response to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. It is front-loaded with the verb and resource, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation with idempotent and non-destructive annotations, the description is adequately complete. It covers the operation scope, and the schema provides full parameter descriptions. No output schema exists, but given the tool's simplicity, the lack of return-value details is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both autoScalingGroupNo and scalingProcessCodeList have descriptions. The tool description does not add meaning beyond the schema; it does not clarify what scaling process codes are valid, though sibling tool ncloud_get_scaling_process_types exists for that purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Resume') and the resource ('scaling processes for an Auto Scaling Group'), and the phrase 'previously suspended' clarifies the targeted state. It is distinct from sibling tools like ncloud_suspend_processes and ncloud_get_scaling_process_types, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage after processes have been suspended, but it does not explicitly state when to use this tool versus alternatives like ncloud_suspend_processes, nor does it mention any prerequisites or exclusions. The guidance is mostly implied by the verb 'resume'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_run_pipelineC
Execute a SourcePipeline pipeline
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Pipeline ID to run |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries full responsibility for behavioral disclosure. It only says 'Execute a SourcePipeline pipeline' – it does not indicate whether the operation is synchronous, whether it returns a run ID, whether it is idempotent, or any side effects (e.g., creating history entries). This is essentially a tautology of the tool name, offering no behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at only four words, with no fluff or redundancy. It front-loads the action and resource. However, it is so terse that it sacrifices necessary detail, but for what it contains, every word earns its place. A longer description would be needed to improve other dimensions, but this is appropriately sized for the minimal information given.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is an execution/mutation operation with no output schema and no annotations to clarify behavior. The description does not explain the execution semantics, what happens after running, how to check results, or any potential side effects. Given that sibling tools like list_pipeline_history and cancel_pipeline exist, the description should at least reference related operations. This is completely inadequate for a tool that triggers a pipeline.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, and the parameter 'projectId' is described as 'Pipeline ID to run'. Since the schema already fully documents the parameter, the description does not need to add much. The tool description adds no extra parameter meaning, but the baseline is 3 due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Execute') on a specific resource ('a SourcePipeline pipeline'). This distinguishes it from sibling tools like create_pipeline, update_pipeline, delete_pipeline, and cancel_pipeline, as 'execute/run' is a distinct operation. However, it lacks any detail about what execution entails (e.g., triggering a build or deployment), so it's not maximally explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, typical use cases, or how this relates to cancel_pipeline or list_pipeline_history. The verb 'Execute' implies triggering a run, but there is no explicit 'use this to...' or 'instead of...' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_search_event_by_idCRead-only
Get detailed information about a specific monitoring event by event ID and rule ID.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Search by rule name, metric name or resource name | |
| ruleId | Yes | Event Rule ID associated with the event | |
| endTime | Yes | End time in Unix epoch milliseconds | |
| eventId | Yes | Event ID to retrieve details for | |
| pageNum | No | Page number (default: 1) | |
| pageSize | No | Number of results per page (default: 20) | |
| startTime | Yes | Start time in Unix epoch milliseconds | |
| onlyFetchUnCloseEvent | No | Only return events that are not closed yet (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. Beyond that the description discloses nothing: no mention of the mandatory time window, pagination behavior (pageNum/pageSize), or the onlyFetchUnCloseEvent filter that materially changes results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the resource and key identifiers front-loaded; no padding. It is efficient, but the brevity comes at the cost of the missing usage and parameter context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter read tool with four required parameters and no output schema, the description leaves the mandatory time-range requirement and pagination semantics to the schema. It is minimally viable but not complete enough to call correctly from the description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters and the baseline of 3 applies. The description names only eventId and ruleId, omitting the equally required startTime/endTime, so it adds no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Get detailed information about a specific monitoring event') and the key identifiers (event ID, rule ID). It distinguishes itself implicitly from the list-oriented sibling ncloud_search_events by promising detail for a single event, but it never names that sibling or otherwise explicitly boundary itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance. The presence of ncloud_search_events and ncloud_search_event_count as siblings makes a routing statement ('use this after search_events returns an event ID') genuinely valuable, and it is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_search_event_countBRead-only
Get the count of monitoring events from Cloud Insight within a specified time range.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | Yes | End time in Unix epoch milliseconds | |
| startTime | Yes | Start time in Unix epoch milliseconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already covers the safety profile, and the description adds only that the operation targets Cloud Insight monitoring events over a time range. It does not disclose rate limits, whether the count is exact or approximate, or what the returned value represents beyond 'count'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence front-loads the verb and resource and contains no filler. It is appropriately sized for a simple count tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, read-only count query, the description plus schema gives enough to invoke correctly. The main minor gap is that it does not explicitly state the return is a total event count, though 'Get the count' strongly implies it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only two parameters are fully documented in the schema with Unix epoch millisecond descriptions, and the description reinforces that they define a time range. It adds no extra semantics beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('Get the count of monitoring events') and scopes it to Cloud Insight and a time range. It is clear enough to separate from event-detail siblings by the 'count' operation, but it never explicitly names an alternative tool such as ncloud_search_events or ncloud_search_event_by_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives no when-to-use or when-not-to-use guidance and does not mention alternatives; the time range is part of the tool's scope, not a routing guideline. An agent must infer the usage from the name and purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_search_eventsCRead-only
Search and get monitoring events from Cloud Insight with filtering options.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Search by rule name, metric name or resource name | |
| ruleId | No | Event Rule ID to filter events | |
| endTime | Yes | End time in Unix epoch milliseconds | |
| eventId | No | Event ID to filter | |
| pageNum | No | Page number (default: 1) | |
| pageSize | No | Number of results per page (default: 20) | |
| startTime | Yes | Start time in Unix epoch milliseconds | |
| onlyFetchUnCloseEvent | No | Only return events that are not closed yet (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds almost no behavioral context beyond that: no mention of a mandatory time range, pagination defaults, ordering, or result scope, all of which matter for a paged search. It does not contradict the annotations, but it contributes little.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the resource and filtering capability are stated immediately. It could use a few more words of routing context, but it wastes nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter paged search over events with no output schema, the description is minimal. It omits pagination behavior, the fact that a time range is required, and how results differ from ncloud_search_event_count or ncloud_search_event_by_id, so an agent has just enough to attempt a call but not to choose confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (query, ruleId, eventId, pageNum, pageSize, startTime, endTime, onlyFetchUnCloseEvent) is already documented in the schema. The description adds no syntax, default, or interaction detail beyond that, matching the baseline 3 for high-coverage schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search/get) and resource (monitoring events from Cloud Insight), so the agent understands the core operation. However, it does not distinguish itself from close siblings such as ncloud_search_event_by_id, ncloud_search_event_count, or the family of ncloud_list_*_events tools, leaving ambiguity about which event-search tool applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'with filtering options' hints at usage but gives no explicit when-to-use context, no prerequisites, and no routing to alternatives like ncloud_search_event_by_id (single event) or ncloud_search_event_count (counts only). The agent must infer the correct tool from names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_search_logsCRead-only
Search collected logs in Cloud Log Analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-100, default 1) | |
| keyword | No | Search keyword (default: all) | |
| interval | No | Time interval, e.g. 5m/1h/1d (default 5m) | |
| logTypes | No | Log type filter, e.g. SYSLOG, security_log | |
| pageSize | No | Page size (10-100, default 10) | |
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region | |
| timestampTo | No | End Unix timestamp | |
| timestampFrom | No | Start Unix timestamp |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes the safety profile, and the description adds no further behavioral context. It does not disclose pagination behavior, authentication requirements, rate limits, default time-window semantics, or what the search returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It is efficient, though extremely minimal for an eight-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema fully covers the parameters and the readOnlyHint covers safety, so the core invocation information is available. However, with no output schema and no usage guidance, the single sentence leaves the agent without context about when to choose this tool or what the search results contain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the eight parameters are fully documented in the input schema itself. The description adds no parameter-level meaning beyond what the schema provides, making the baseline of 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb (Search), resource (collected logs), and product context (Cloud Log Analytics), so an agent can tell what the tool does. However, it does not distinguish this tool from the many sibling log-related tools such as ncloud_get_log_count_total, ncloud_export_logs, or ncloud_list_postgresql_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention count tools, export tools, database-specific log tools, or any conditions or prerequisites for selecting this search operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_search_metric_listCRead-only
Search available monitoring metrics for a specific product in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Keyword to search metric names | |
| prodKey | Yes | Product key (cw_key) to search metrics for | |
| dimValues | No | Dimension filters ([{name, value}]) | |
| idDimensions | No | idDimension names to query | |
| dimensionsSelectedList | No | Search by specific dimension values ([{name, values[]}]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, and the description adds almost nothing beyond that: no result limits, pagination, or whether the search is name-keyword-only versus dimension-based. For a 5-parameter search over a large metric catalog, more behavioral context is warranted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single well-formed sentence with the resource and the product scope front-loaded; nothing is wasted, though there is also very little substance to compress.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search tool with full schema coverage and annotations covering safety, the description is minimally sufficient. It leaves gaps on routing between monitoring siblings and on result volume/limits, which an agent would want before calling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters (query, prodKey, dimValues, idDimensions, dimensionsSelectedList) are documented in the schema itself. The description adds no format or semantic detail beyond that, making baseline 3 the correct score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Search), resource (monitoring metrics), and scope (for a specific product in Cloud Insight), so the agent knows exactly what the call does. It stops short of distinguishing itself from adjacent monitoring siblings such as ncloud_list_metrics_groups or ncloud_query_monitoring_data, which a large tool ecosystem makes valuable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use/when-not-to-use guidance and no mention of alternatives, despite many sibling tools touching monitoring metrics and rule groups. Product-scoping is implied by the required prodKey in the schema rather than stated as a usage rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_cancel_deletionBIdempotent
Cancel a pending deletion request of a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the useful framing that a deletion request must be pending, but does not say what state the secret returns to or that it becomes permanently undeletable/active again.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. It is efficient, though perhaps too lean given the tool's precondition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple 2-parameter tool: annotations carry safety, schema carries params, and no output schema exists. The missing piece is the precondition that a deletion request must already be pending, which the description only hints at.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; secretId even points to ncloud_secret_list_secrets and keyIsolation thoroughly documents the host-selection enum. The description adds nothing beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Cancel') and resource ('pending deletion request of a secret'), so the operation is unambiguous. It does not, however, distinguish itself from near siblings like ncloud_secret_request_deletion or ncloud_secret_cancel_rotation, which share the secret/deletion domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance and no alternatives named. The 'pending' qualifier weakly implies the precondition (a deletion must have been requested first, via ncloud_secret_request_deletion), but the description never states this or routes the agent to the inverse tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_cancel_rotationAIdempotent
Cancel the rotation job that is currently running for a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds the targeting constraint (only the active job), but says nothing about what happens to partially rotated secret values or whether the cancel is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. The scoping qualifier 'currently running' earns its place by narrowing what gets cancelled.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a narrow cancel operation with complete schema coverage and annotations covering idempotency and safety, the description is sufficient. Minor gaps remain around post-cancellation state, but nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters (secretId and keyIsolation) are fully documented in the schema, including the enum meaning and host differences. The description adds no parameter-level information, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (cancel), resource (rotation job), and scope (currently running for a secret). It cleanly distinguishes from sibling rotate-family tools like execute_rotation, retry_rotation, and rollback_rotation, though it does not call any of them out by name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'that is currently running' implies the precondition for use (a rotation in progress), which is useful context. However, it gives no explicit when-not guidance and does not name alternatives such as rollback_rotation or retry_rotation, leaving the routing decision to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_create_secretB
Create a secret. secretValue is a JSON object string of 1-100 key/value pairs (≤10,000 bytes); rotationTargets names the keys that rotation replaces. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | No | Description (0-1000 bytes) | |
| dryRun | No | If true, returns a preview without creating | |
| kmsKeyTag | No | KMS key tag (see ncloud_secret_list_protection_keys) — required when protectionKeyType=USER_MANAGED_KEY | |
| triggerId | No | Rotation trigger ID (see ncloud_secret_list_triggers) — required when autoRotationYN=Y | |
| secretName | Yes | Secret name (3-15 chars: letters, digits, '-', '_'; starts with a letter) | |
| secretType | No | Secret type (BASIC is the only valid value) | BASIC |
| secretValue | Yes | Secret value as a JSON object string, e.g. '{"password":"..."}' (1-100 key/value pairs, ≤10,000 bytes) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
| autoRotationYN | No | Enable automatic rotation (Y) or not (N, default) | N |
| kmsBoundaryType | No | KMS key isolation: GLOBAL or ISOLATED (new keys support ISOLATED only) | |
| rotationTargets | Yes | Keys of secretValue that rotation replaces (at least one) | |
| protectionKeyType | No | Protection key: DEFAULT (service key) or USER_MANAGED_KEY (your KMS key) | DEFAULT |
| autoRotationPeriod | No | Rotation period in days (1-730, default 90) — required when autoRotationYN=Y |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description must carry most behavioral burden. It adds that dryRun returns a preview without creating and gives value-size limits — useful beyond the annotation — but omits auth/permission needs, whether creation is immediate, and rotation side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short clauses, front-loaded with the operation and followed by the two most consequential parameter notes. No filler sentences; slightly denser would be ideal but it earns its space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 13-parameter create tool with no output schema and conditional requirements (kmsKeyTag when USER_MANAGED_KEY, triggerId/autoRotationPeriod when autoRotationYN=Y), the description is thin. It does not need to restate return values, but it leaves the conditional-parameter and region/keyIsolation story entirely to the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter is richly documented in the schema (including cross-references to list_protection_keys and list_triggers). The description merely restates secretValue and rotationTargets semantics already present in the schema, adding no new meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear specific verb+resource ('Create a secret') and immediately adds two parameter-level clarifications. It does not distinguish itself from the many sibling secret tools (e.g. ncloud_secret_update_secret_value, ncloud_secret_job_start), but the core purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is 'Use dryRun=true to preview', which is a helpful invocation hint but not when-to-use-vs-alternatives guidance. No mention of prerequisites (KMS key, trigger) or when to prefer the job/stage-based creation flow in siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_delete_rotation_triggerADestructiveIdempotent
⚠️ Destructive: Remove the rotation trigger from a secret (automatic rotation can no longer run). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the safety profile is covered. The description adds real value beyond that: it explains the side effect (rotation can no longer run) and the confirm=true gate, which the annotations do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the destructive warning front-loaded, followed by the effect in parentheses and the confirm gate. Every clause earns its place and nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter mutation with no output schema and annotations already covering the safety profile, the description supplies the essential missing context: irreversibility of effect on rotation and the confirm requirement. It could note whether the trigger can be re-added, but it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the confirm parameter is already documented in the schema ('Must be true to actually execute...') along with secretId and keyIsolation. The description only restates confirm=true, adding no semantics beyond the structured data, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (remove) and resource (rotation trigger on a secret) plus the operational consequence ('automatic rotation can no longer run'), which helpfully distinguishes it from disable_auto_rotation. It does not explicitly name sibling alternatives such as ncloud_secret_update_rotation_trigger, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'Set confirm=true to execute' line gives a concrete precondition for invocation, and the destructive framing implies caution. However, there is no explicit statement of when to prefer this over ncloud_secret_disable_auto_rotation or ncloud_secret_update_rotation_trigger.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_delete_secretADestructiveIdempotent
⚠️ Destructive: Permanently delete a secret. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, so the warning label is partly redundant, but the description adds genuinely useful behavior beyond the annotation: the two-step 'confirm=true' gate that must be set to actually execute. It also explicitly states the permanence of the effect, which the annotation flag alone does not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with no waste, warning emoji and the destructive nature front-loaded, and the action requirement second. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-resource destructive delete with destructive/idempotent annotations and a fully documented schema, the description covers the essentials: permanence and the confirm gate. It could still note the soft-delete alternative (request_deletion) to be fully complete against siblings, but no critical calling information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and every parameter (confirm, secretId, keyIsolation) is already documented in the schema, including the confirm gate and the global/regional host distinction. The description's mention of confirm adds nothing beyond what the schema states, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('delete a secret') and adds the crucial qualifier 'Permanently', which implicitly separates it from the sibling ncloud_secret_request_deletion. However, it never names that sibling or any other alternative, so the differentiation is left to inference rather than made explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'Permanently' hints that this is the hard-delete path versus the request_deletion/cancel_deletion siblings, but the description gives no explicit when-to-use or when-not-to-use guidance or prerequisites. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_disable_auto_rotationCIdempotent
Disable automatic rotation of a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond the operation name: it does not say whether disabling is reversible, whether it clears an existing rotation schedule/trigger, or what permissions are required. With annotations doing the safety work, this terse sentence contributes little behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero padding is appropriate for a simple toggle. It is efficient, though its brevity is partly under-specification rather than pure concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema and annotations cover inputs and the safety profile, so an agent can call the tool. What is missing is the operational consequence: whether rotation triggers/schedules are removed and whether the action can be undone via ncloud_secret_enable_auto_rotation. Adequate but with a clear gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself documents secretId's source tool and the keyIsolation enum's host-routing semantics in detail. The description adds no parameter meaning of its own, so the baseline 3 for a fully-documented schema applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource pair ('Disable automatic rotation of a secret') that an agent can map cleanly to the intended operation. It does not, however, differentiate itself from near-identical siblings such as ncloud_secret_enable_auto_rotation or ncloud_kms_disable_auto_rotation, so the distinction must be inferred from the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of the complementary enable_auto_rotation or rotation-period tools. The agent gets only the operation itself, not the condition under which it should pick this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_disable_secretADestructiveIdempotent
⚠️ Destructive: Disable a secret — applications can no longer read its value until it is enabled again. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Though annotations already declare destructiveHint=true, the description adds value the annotations cannot: the exact impact (applications lose read access) and the fact that the change is reversible. The confirm=true gate is also surfaced prominently, a required safeguard not captured by annotation hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the destructive warning front-loaded, followed by the behavioral consequence and the confirm requirement. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no output schema, the description covers impact, reversibility, and the confirmation gate, and annotations carry the safety profile. It is nearly complete; only the lack of an explicit alternative-tool reference keeps it short of perfect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so secretId, confirm, and keyIsolation (including the enum meanings) are already fully documented in the schema. The description only restates the confirm requirement and adds nothing about keyIsolation, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (disable) and resource (secret) and immediately describes the effect on dependent applications. It is clearly distinguishable from its sibling ncloud_secret_enable_secret without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The reversibility note ('until it is enabled again') implicitly points to the enable counterpart and clarifies the consequence of calling it, but the description never states an explicit condition or names the alternative tool. Clear context, no explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_enable_auto_rotationAIdempotent
Enable automatic rotation of a secret. triggerId is required when the secret has no trigger yet or you want to change it.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| triggerId | No | Rotation trigger ID (see ncloud_secret_list_triggers) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
| rotationPeriod | No | Rotation period in days (1-730, default 90) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (idempotentHint=true, destructiveHint=false), so the description's burden is lighter. It usefully discloses the conditional requirement on triggerId, which is real behavioral context, but it does not describe resulting state changes or side effects on an existing rotation configuration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, action first and the conditional requiredness second. No filler, no repetition of the schema, and the most important invocation rule is front-loaded after the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 100% schema description coverage, no output schema, and annotations carrying safety and idempotency, the description only needs to add the behavioral nuance it does (triggerId conditionality). It is nearly complete; minor omissions are that it doesn't mention keyIsolation/regional endpoint caveats or confirm what happens when rotation is already enabled.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the 3 baseline applies for the documented parameters. The description goes beyond baseline by explaining the condition under which triggerId becomes required — a semantic rule the schema text ('Rotation trigger ID') does not convey — earning above-baseline credit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (enable) and resource (automatic rotation of a secret), which clearly separates it from sibling operations like 'disable_auto_rotation' or 'update_rotation_period'. It stops short of explicitly naming which sibling to use when the agent instead wants to change only the trigger, so it is clear but not fully sibling-differentiating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives one conditional usage hint — that triggerId is needed when no trigger exists or when changing it — which implies how to invoke the tool. However, it never addresses when to prefer this over 'ncloud_secret_update_rotation_trigger', 'update_rotation_period', or 'disable_auto_rotation', so the routing guidance is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_enable_secretBIdempotent
Enable a disabled secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered structurally, but the description adds nothing beyond that: no preconditions, no mention of whether enabling affects secret versions or stage values, and no auth/permission notes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; nothing redundant is included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity two-parameter mutation with full schema coverage and annotations covering idempotency and destructiveness, the definition is minimally viable. It stops short of describing the observable effect of enabling (e.g., what happens to versions/stages) and provides no output expectations, but nothing required to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (secretId points to ncloud_secret_list_secrets, keyIsolation fully explains host selection and the JPN constraint), so the baseline of 3 applies. The description contributes no additional parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (enable) and resource (secret) plus the precondition that the secret is disabled. The inverse relationship to sibling ncloud_secret_disable_secret is inferable from the verb, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to enable versus alternatives such as cancelling deletion, restoring versions, or simply leaving the secret disabled. Usage has to be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_execute_rotationB
Start a rotation job for a secret now (runs the rotation trigger).
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden and it only restates that a job starts. It does not say that the secret value will change, whether a rotation trigger must already be configured, whether the job runs asynchronously against a pending stage, or how it relates to rollback/retry. For a mutation on secret material this is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence, front-loaded with the action and resource, with the parenthetical adding useful clarification rather than filler. No waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, no output schema, and a mutation of secret material, the description should at minimum state prerequisites (existing trigger) and the effect on the current secret value. Those are absent, leaving the agent unable to predict consequences or dependencies.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the keyIsolation enum is documented in detail (global vs regional hosts, JPN caveat), so the schema does the heavy lifting. The description adds nothing about secretId or keyIsolation, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Start a rotation job for a secret') with a timing adverb ('now') and parenthetical clarification that it runs the rotation trigger. That is clearer than a bare mutation name, but it never names the closely related siblings (ncloud_secret_retry_rotation, ncloud_secret_cancel_rotation, ncloud_secret_rollback_rotation), leaving the distinction to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Now' implies an immediate/manual rotation as opposed to the scheduled auto-rotation controlled by enable_auto_rotation, so usage is implied rather than stated. There is no explicit when-to-use/when-not or pointer to sibling commands like retry_rotation or cancel_rotation, so an agent must infer the routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_get_secretARead-only
Get the details of a secret (metadata, rotation settings, protection key) — not the value.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true already declaring the safe-read profile, the description adds genuinely useful behavior: it enumerates what comes back (metadata, rotation settings, protection key) and, crucially, rules out the secret value itself, which is the first thing an agent might wrongly assume. It doesn't cover auth or error behavior, but that is minor against the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler, front-loaded with the core action and ending on the disambiguating clause that matters most.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read tool with a readOnly annotation and a fully documented schema, the description is nearly complete: it summarizes the return content even though no output schema exists. Only the absence of any note on permissions or failure modes keeps it from a full 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both secretId and the keyIsolation enum (global vs regional host selection) are fully documented in the schema. The description adds no parameter-level meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (secret details) and explicitly scopes it with 'not the value', which cleanly distinguishes it from the sibling ncloud_secret_get_secret_value and ncloud_secret_get_secret_stage_value. An agent can pick this tool without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'not the value' clause tells the agent when NOT to use this tool, implying the value-fetching siblings for that case, and the schema's reference to ncloud_secret_list_secrets shows how to obtain the ID first. It stops short of naming the alternative tool explicitly, so it is clear context rather than a full when/when-not routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_get_secret_logsBRead-only
Get the usage / rotation logs of a secret (includes rotation job tokens).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-N, default 1) | |
| keyword | No | Search keyword | |
| pageSize | No | Page size (default 100) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| timestampTo | No | End of the range (Unix timestamp, ms) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
| timestampFrom | No | Start of the range (Unix timestamp, ms) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the bar is lower. The description does add one useful piece of content context — that the output includes rotation job tokens — but says nothing about ordering, retention window, or pagination behavior of the log results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler; the parenthetical adds content scope efficiently. Slightly terse given the tool's 7-parameter surface, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only log fetch with a fully documented schema and annotations covering safety, the description is adequate but thin: it doesn't clarify the log entry shape or whether pagination must be driven manually, which is the main remaining ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and every parameter (pageNo, pageSize, keyword, timestamps, keyIsolation) is documented in the schema itself. The description adds no parameter-level meaning, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and resource ('usage / rotation logs of a secret'), so an agent immediately knows what is returned. It does not, however, distinguish itself from the many neighboring ncloud_secret_* tools (get_secret, list_triggers, etc.), so sibling differentiation is left to the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives, nor any prerequisites (e.g., that the secret must exist or be rotation-enabled). Usage must be inferred from the name and the phrase 'usage / rotation logs'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_get_secret_stage_valueARead-only
Get the secret value of one stage: previous (value used before the current one), active (value in use) or pending (new value awaiting rotation completion). ⚠️ The response contains the secret value in plain text.
| Name | Required | Description | Default |
|---|---|---|---|
| stage | Yes | Secret value stage: previous | active | pending | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true, so the description carries the rest of the burden, and it does add a genuinely important trait: the response contains the secret in plain text. That sensitivity disclosure is valuable for an agent handling the output. It stops short of mentioning permission or rotation-state prerequisites, so it is not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences: the core operation and stage semantics come first, and the security warning is placed prominently at the end. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description appropriately flags the return content (plaintext secret), and it fully covers the stage parameter. It is slightly thin on any permission or precondition context for reading a live/pending secret, but it is otherwise complete for a 3-parameter read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, giving a baseline of 3, but the description adds real meaning: the schema only lists 'previous | active | pending' whereas the description explains what each stage represents, which materially aids correct parameter selection. keyIsolation is left entirely to the schema, which already documents it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource ('Get the secret value of one stage') and defines the three stage options, so the agent knows exactly what is retrieved. It does not explicitly distinguish itself from the close sibling ncloud_secret_get_secret_value, which is the only thing keeping it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied through the stage definitions: previous, active, and pending are each explained, which lets an agent infer when a given stage is relevant. However, there is no explicit when-to-use guidance, no exclusion, and no reference to the sibling get_secret_value tool for the non-staged case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_get_secret_valueARead-only
Get the secret values of every stage (previous / active / pending). ⚠️ The response contains the secret value in plain text.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this is a safe read (readOnlyHint=true), so the description's job is lighter. It earns credit by disclosing the non-obvious consequence that the response returns the secret in plain text — a genuine sensitivity warning that no annotation conveys. It omits auth/permission requirements and any masking or logging caveats, keeping it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, with the scope statement front-loaded and the security warning isolated with a symbol so it cannot be skimmed past. Every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-output-schema read tool, the description covers the essential return characteristic (plain-text secret across all stages) and the schema fully documents inputs. It could note which stage is which in the response or any rate/permission constraint, but nothing an agent needs to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: secretId points to ncloud_secret_list_secrets and keyIsolation carries a detailed enum explanation of global vs regional KMS hosts. The description adds nothing about either parameter, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get the secret values') and pins the scope precisely to 'every stage (previous / active / pending)', which implicitly separates it from ncloud_secret_get_secret_stage_value (single stage). It never names a sibling explicitly, so an agent must infer the boundary rather than being told it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'every stage' phrasing implies usage context, but there is no stated when-to-use, when-not-to-use, or named alternative for the closely related ncloud_secret_get_secret and ncloud_secret_get_secret_stage_value tools. Guidance is present only by inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_job_add_pending_stageA
Create the PENDING stage for a rotation job. Rotation-function API (Secret Rotate Process Control): meant to be called by the rotation trigger's function with the job token it receives, not during normal administration.
| Name | Required | Description | Default |
|---|---|---|---|
| jobToken | Yes | Rotation job token (injected into the rotation function's environment; also in ncloud_secret_get_secret_logs) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry destructiveHint=false, so the description must supply the behavioral contract, and it does: this is a rotation-function API tied to the trigger's job token, not a normal admin operation. That calling-context requirement is meaningful transparency for a niche write tool. It does not explain reversibility or downstream effects on the secret, so not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, with the core action stated first and the operational constraint immediately after. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and minimal annotations, the description carries the burden and adequately explains the tool's place in the rotation flow. It stops short of describing sequencing relative to the sibling job tools (job_start, job_complete), which would help an agent drive the lifecycle correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the jobToken/keyIsolation descriptions already document origin, default, and host selection. The description adds no parameter-level meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Create the PENDING stage for a rotation job.' An agent can tell what the tool does. It does not, however, explicitly distinguish itself from the very close sibling ncloud_secret_job_update_pending_stage, which appears designed for a related but different step, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear when-to-use and when-not-to-use guidance: it is meant to be called by the rotation trigger's function with the job token it receives, 'not during normal administration.' That is strong routing context. No sibling alternative is named by name, keeping it below a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_job_completeA
Report a rotation job as completed (the PENDING value becomes ACTIVE). Rotation-function API (Secret Rotate Process Control): meant to be called by the rotation trigger's function with the job token it receives, not during normal administration.
| Name | Required | Description | Default |
|---|---|---|---|
| jobToken | Yes | Rotation job token (injected into the rotation function's environment; also in ncloud_secret_get_secret_logs) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden. It discloses the state transition (PENDING to ACTIVE) and the intended calling context, which is meaningful, but it does not address idempotency, error/failure behavior, or what completing an already-completed job does.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences that front-load the primary action and state change before the caller-context caveat. The parenthetical naming is a little heavy but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-output-schema, no-annotation control operation with three well-documented params, the description supplies purpose, caller context, and effect. It is nearly complete; only return/error semantics are unaddressed, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so jobToken, secretId, and keyIsolation are already fully documented. The description reinforces that the token comes from the rotation function's environment but adds no new syntax or format detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Report a rotation job as completed') and adds the concrete state transition (PENDING becomes ACTIVE), so the effect is unambiguous. It distinguishes itself from normal administration but does not explicitly position against adjacent job siblings like job_start or job_fail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly scopes the caller: the rotation trigger's function using the injected job token, and explicitly says it is 'not during normal administration.' This is a strong when-to-use and when-not-to-use signal, though no named alternative tool is offered for the admin-path case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_job_failA
Report a rotation job as failed. Rotation-function API (Secret Rotate Process Control): meant to be called by the rotation trigger's function with the job token it receives, not during normal administration.
| Name | Required | Description | Default |
|---|---|---|---|
| jobToken | Yes | Rotation job token (injected into the rotation function's environment; also in ncloud_secret_get_secret_logs) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the caller identity and the token requirement, which is valuable, but says nothing about downstream consequences of a failure report (e.g., whether it aborts the rotation, triggers a retry, or is terminal). Adequate but incomplete for a mutation/control tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action, then the calling context. No filler and no repetition of name or title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema or annotations, so the description must stand alone; it covers action, caller, prerequisite token, and scope exclusion. It is nearly complete, only missing what happens to the overall rotation after a failure is reported.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents secretId, jobToken, and keyIsolation fully, including the enum values. The description only restates that the job token is received by the function; it adds no format or syntax detail beyond the schema. Baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a precise verb+resource ('Report a rotation job as failed') and immediately scopes it as a 'Rotation-function API (Secret Rotate Process Control)', clearly separating it from the administration siblings like ncloud_secret_execute_rotation or ncloud_secret_cancel_rotation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states who calls it ('the rotation trigger's function with the job token it receives') and the exclusion ('not during normal administration'). An agent knows both the correct context and when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_job_generate_random_secretA
Generate a random secret string for a rotation job. Rotation-function API (Secret Rotate Process Control): meant to be called by the rotation trigger's function with the job token it receives, not during normal administration. ⚠️ The response contains the secret value in plain text.
| Name | Required | Description | Default |
|---|---|---|---|
| length | Yes | Length of the random string (5-32, default 12) | |
| jobToken | Yes | Rotation job token (injected into the rotation function's environment; also in ncloud_secret_get_secret_logs) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| includeSpace | No | Include spaces (default true) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
| excludeNumbers | No | Exclude digits (default false) | |
| excludeLowercase | No | Exclude lowercase letters (default false) | |
| excludeUppercase | No | Exclude uppercase letters (default false) | |
| excludeCharacters | No | Characters to exclude (one string, no separator) | |
| excludePunctuation | No | Exclude punctuation (default false) | |
| requireEachIncludedType | No | Require every non-excluded character type to appear (default true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses the non-obvious behavioral traits: this is an internal rotation-process API, requires the injected job token, and returns the secret value in plain text (flagged with a warning). It does not cover auth scope beyond the token, rate limits, or whether the generated value is persisted, keeping it from a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short, front-loaded sentences: purpose, calling context, and a high-value warning. No filler, and the security-relevant plaintext warning is given prominence with a ⚠️ marker.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 11 parameters, no annotations, and no output schema, the description adequately covers purpose, invocation context, and the sensitive nature of the response. The schema covers parameter semantics fully, so the remaining gap is minor: no detail on the returned value's format or lifetime.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and documents all 11 parameters including ranges, defaults, and the keyIsolation host semantics, so the schema does the heavy lifting. The description adds no parameter-level detail (e.g., constraints on length or how exclusion flags interact), leaving this at the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (generate a random secret string) and scopes it to a rotation job, distinguishing it from the sibling ncloud_secret_job_* lifecycle tools and from administration-time secret tools. An agent can identify exactly what this tool produces without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the calling context (rotation trigger's function using its job token) and an exclusion ('not during normal administration'), which is strong when-to-use guidance. It stops short of naming the alternative tool an administrator should use instead, so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_job_startAIdempotent
Report the start of a rotation job. Rotation-function API (Secret Rotate Process Control): meant to be called by the rotation trigger's function with the job token it receives, not during normal administration.
| Name | Required | Description | Default |
|---|---|---|---|
| jobToken | Yes | Rotation job token (injected into the rotation function's environment; also in ncloud_secret_get_secret_logs) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds meaningful context beyond that: it is a control-plane call made by the rotation function itself, using the injected job token, which explains its behavioral role in the rotation lifecycle.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the core action and followed by the scoping constraint. No filler; every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a 3-parameter tool with full schema coverage, no output schema, and covering annotations, the description supplies the essential lifecycle and caller context an agent needs. It does not describe return values, but with no output schema that is not required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents secretId, jobToken, and the keyIsolation enum in detail. The description reinforces that the token is one the function "receives," but adds little parameter meaning beyond the structured fields. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Report the start of a rotation job") and situates it within the "Rotation-function API" so it is distinguishable from sibling job tools like ncloud_secret_job_complete or ncloud_secret_job_fail. It does not explicitly name a sibling, but the scope is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states both when and when-not to use it: it is "meant to be called by the rotation trigger's function with the job token it receives, not during normal administration." This is a clear usage boundary that routes an agent away from calling it in ordinary admin flows.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_job_update_pending_stageAIdempotent
Set the PENDING stage value (JSON object string) of a rotation job. Rotation-function API (Secret Rotate Process Control): meant to be called by the rotation trigger's function with the job token it receives, not during normal administration.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | New pending value as a JSON object string | |
| jobToken | Yes | Rotation job token (injected into the rotation function's environment; also in ncloud_secret_get_secret_logs) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover idempotency and non-destructiveness, and the description adds the crucial operational context that this is a rotation-function API invoked with an injected job token. It does not state whether an existing pending value is overwritten, which is a minor gap given the annotations carry the safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly-packed sentences with the core action front-loaded and the operational caveat immediately after. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given four parameters, an enum, and no output schema, the description supplies the contextual framing needed to place this unusual process-control tool. Return behavior is not covered but no output schema exists and the operation is a value-set call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented, and the description largely restates the 'JSON object string' format already in the schema. The added value over the structured fields is limited, matching the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Set') and resource ('the PENDING stage value of a rotation job'), giving an agent a clear picture of the operation. It does not explicitly contrast with the closely-named sibling ncloud_secret_job_add_pending_stage, so the distinction rests on the reader's inference, but the purpose itself is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly routes the caller: 'meant to be called by the rotation trigger's function with the job token it receives, not during normal administration.' This states both the intended caller and an explicit exclusion, which is exactly what an agent needs to avoid misusing an unusual internal API.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_list_protection_keysBRead-only
List the KMS keys that can protect (encrypt) secrets (kmsKeyTag values for USER_MANAGED_KEY).
| Name | Required | Description | Default |
|---|---|---|---|
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already covers the safety profile, so the bar is lower. The description adds that the listed values are kmsKeyTag values usable for USER_MANAGED_KEY protection, which is useful context, but says nothing about scoping effects of keyIsolation, result size, or whether the list is account-wide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no padding; the parenthetical is terse. It is efficient but slightly cryptic, so not quite exemplary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A one-parameter read-only list tool with a fully documented schema and annotations is largely self-sufficient. Still, with no output schema and no description of the returned structure or pagination, the definition leaves some gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the keyIsolation enum is documented in detail in the schema itself (host endpoints, JPN caveat). The description adds no parameter meaning beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb (List) plus a precise resource (KMS keys that can protect/encrypt secrets), and it even names the returned field shape (kmsKeyTag values for USER_MANAGED_KEY). It does not, however, explicitly distinguish itself from close siblings like ncloud_kms_get_key_list or ncloud_secret_update_protection_key, so an agent must infer the relationship.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is given: the description never says this should be called before ncloud_secret_update_protection_key, nor how it differs from ncloud_kms_get_key_list. The only hint of usage is the implicit 'list' semantics in the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_list_secretsBRead-only
List Secret Manager secrets (name, id, type, status, rotation settings).
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-N, default 1) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read profile is covered; the description adds the useful fact that rotation settings and status are included in listings. However, it says nothing about pagination behavior or result limits despite the pageNo parameter, so it only marginally exceeds the annotation's coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that enumerates the return payload without a wasted word. It is appropriately sized for a simple list tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with safety covered by annotations and fully documented parameters, the description is largely complete, and enumerating return fields compensates for the absence of an output schema. It falls short only on pagination/result-size behavior, which an agent would want for a list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with pageNo and keyIsolation fully documented (including the enum and host-routing semantics), so the schema carries the parameter burden. The description adds no parameter detail beyond what the schema already provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (Secret Manager secrets) and enumerates the returned fields (name, id, type, status, rotation settings), so an agent understands exactly what it retrieves. It does not explicitly name or differentiate itself from sibling readers like ncloud_secret_get_secret or ncloud_secret_get_secret_value, but the listing scope is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no when-to-use guidance, no prerequisites, and no mention of alternative tools. An agent is left to infer that this enumerates secrets rather than fetching a single value, with nothing steering it toward get_secret/get_secret_value.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_list_triggersBRead-only
List the rotation triggers (Cloud Functions triggers) that can run automatic secret rotation.
| Name | Required | Description | Default |
|---|---|---|---|
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint=true annotation already establishes this is a safe read, lowering the descriptive burden. The description usefully defines the trigger concept (Cloud Functions triggers driving rotation) but adds nothing about pagination, result shape, or scoping constraints beyond what the schema parameter implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with no waste, and the key disambiguating detail (Cloud Functions triggers for rotation) is front-loaded. It earns its place, though it could carry a bit more routing information at the same length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list with no output schema, the description is sufficient to call correctly. However, given the dense family of ncloud_secret trigger siblings, it omits any hint about when this list is needed in a rotation workflow, leaving a gap an agent must infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single keyIsolation parameter is fully documented with enum values and host implications, so the baseline is 3. The description does not reference keyIsolation at all, adding no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (list rotation triggers) and clarifies what a trigger is here ('Cloud Functions triggers that can run automatic secret rotation'). An agent can tell it apart from generic trigger tools on the surface, but it does not explicitly distinguish itself from adjacent siblings like ncloud_secret_update_rotation_trigger or ncloud_functions_list_triggers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, prerequisites, or alternatives are given. The agent learns the domain (secret rotation) but nothing about when this list tool is the right call versus the related trigger-management siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_request_deletionADestructive
⚠️ Destructive: Request deletion of a secret (it is scheduled for deletion; cancel with ncloud_secret_cancel_deletion before it is removed). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=true; the description adds substantial context beyond that — the operation schedules deletion rather than removing immediately, it can be reversed via ncloud_secret_cancel_deletion, and execution requires confirm=true. This is exactly the behavioral detail needed for a destructive mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the destructive warning, then the reversibility path, then the confirm requirement. Every clause earns its place with zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, no-output-schema tool, the description covers what gets destroyed, that it is recoverable, how to recover, and the safety gate. Nothing essential to correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents secretId, keyIsolation, and the confirm gate. The description only reinforces confirm=true, adding no syntax or meaning beyond the structured fields — baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Request deletion of a secret') and immediately clarifies the mechanism (scheduled deletion, not immediate removal), which distinguishes it from the sibling ncloud_secret_delete_secret and explicitly names ncloud_secret_cancel_deletion as the alternative. An agent can route correctly without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear context for use and names the cancel path with the sibling tool, effectively telling the agent this is a soft, reversible request. It does not explicitly state when to prefer this over the hard-delete sibling, so it stops short of full when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_retry_rotationC
Retry a failed rotation job of a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden and falls short. It does not say whether the retry reuses the original pending stage, whether secrets are modified during retry, what permissions are needed, or whether the operation is safe to invoke repeatedly. The only behavioral hint is the implicit 'failed' precondition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler and the key qualifier ('failed') front and center. It is efficient, though its brevity contributes to the disclosure gaps noted elsewhere rather than compensating for them.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is too thin. It omits prerequisites (job must be failed), effects on the secret, permission requirements, and what the caller gets back, leaving the agent with little to act on beyond a plausible guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the keyIsolation enum is documented in detail in the schema (global vs regional endpoints, including the JPN caveat), which is more than the description offers. The description adds nothing about parameters, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Retry') and a specific resource ('rotation job of a secret') qualified by the precondition that the job failed. That is much sharper than a generic 'retry rotation'. However, it never distinguishes itself from the adjacent siblings ncloud_secret_execute_rotation, ncloud_secret_cancel_rotation, and ncloud_secret_rollback_rotation, which an agent must choose between.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to call this versus executing a fresh rotation or rolling back a rotation. The word 'failed' implies a precondition (the job must already be in a failed state) but this is inferred, not stated. No alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_rollback_rotationADestructive
⚠️ Destructive: Roll back the last rotation of a secret (the previous value becomes active again). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description adds substantive context beyond that: it states the warning, explains that the previous value is restored, and reveals the mandatory confirm flag. It does not state irreversibility limits, permission requirements, or timing/state prerequisites, but the added context is meaningful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, with the destructive warning front-loaded ahead of the execution instruction. No filler, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter mutation tool with no output schema and an annotation already covering destructiveness, the description supplies the key operational facts (what it does, the confirm gate, the effect on the active value). It falls short only on state prerequisites and error/edge behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (secretId, keyIsolation, confirm) are fully documented downstream; this sets the baseline at 3. The description only restates confirm=true, adding no syntax or value semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Roll back the last rotation of a secret') and clarifies the observable effect ('the previous value becomes active again'). It is clearly distinguishable in intent, but does not explicitly contrast itself with closely named siblings like ncloud_secret_retry_rotation or ncloud_secret_cancel_rotation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is the invocation gate 'Set confirm=true to execute'. There is no when-to-use vs when-not, and no routing to sibling rotation tools (retry, cancel, execute), leaving the agent to infer the selection criterion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_update_memoCIdempotent
Update the description (memo) of a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | Yes | New description (0-1000 bytes) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond the bare operation: it does not state that only metadata changes, whether permissions are required, or what the call returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. Efficient, though it is so terse that it borders on under-specification rather than ideal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple metadata mutation with no output schema, the description plus annotations and full schema coverage cover the essentials. It lacks any note on effects or preconditions, but nothing critical for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents secretId, memo, and the keyIsolation host selector. The parenthetical "(memo)" reinforces that memo is the human-readable description, but adds no syntax or format detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and target ("Update the description (memo) of a secret"), making the operation unambiguous without opening the schema. It does not name or distinguish itself from near neighbors such as the value-update or memo tools elsewhere, but the resource+verb pairing is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use context, no prerequisites, and no mention of alternatives. An agent must infer that this edits only the human-readable memo rather than the secret value, and there is no routing to siblings like ncloud_secret_update_secret_value.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_update_protection_keyAIdempotent
Change the KMS protection key of a secret (DEFAULT service key or a USER_MANAGED_KEY by kmsKeyTag). kmsBoundaryType is required in the KR region (JPN is always ISOLATED).
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| kmsKeyTag | No | KMS key tag — required when protectionKeyType=USER_MANAGED_KEY | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
| kmsBoundaryType | No | KMS key isolation: GLOBAL or ISOLATED (required in KR) | |
| protectionKeyType | Yes | DEFAULT or USER_MANAGED_KEY |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile, and the description adds region-specific requirements (KR needs kmsBoundaryType; JPN is ISOLATED). It does not disclose what happens to already-encrypted secret versions, whether the operation is reversible, or permission requirements for a mutation that rebinds a secret's encryption key.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with zero filler, and the core action is front-loaded ahead of the region constraint. Every clause carries operational information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and annotations that omit readOnlyHint, the description covers region/config prerequisites but is silent on side effects and whether existing secret data is re-encrypted or inaccessible. Adequate to invoke correctly, but thin on impact for a key-rebinding operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all five parameters are already documented in the schema, including the conditional requirement of kmsKeyTag and the region-scoped keyIsolation behavior. The description restates the protectionKeyType/kmsKeyTag relationship but adds no syntax or semantic detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Change the KMS protection key of a secret') and immediately names the two target modes (DEFAULT vs USER_MANAGED_KEY via kmsKeyTag). An agent can distinguish this from siblings like ncloud_secret_list_protection_keys or the ncloud_kms_* tools without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit preconditions: kmsBoundaryType is required in the KR region and JPN is always ISOLATED, and it ties kmsKeyTag to USER_MANAGED_KEY. However it names no alternative tool and states no when-not-to-use condition, so routing among siblings is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_update_rotation_periodCIdempotent
Change the automatic rotation period (days) of a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
| rotationPeriod | Yes | Rotation period in days (1-730) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover idempotency and non-destructiveness, so the safety profile is partially answered. The description adds nothing beyond intent: it does not say whether rotation must be enabled first, what happens to the current rotation schedule, or whether permissions/KMS isolation affect behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler and no redundancy. It is efficient, though for a mutation tool the extreme brevity edges toward under-specification rather than pure conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no output schema, the description leaves important context unstated: the precondition that auto-rotation must be active, the effect on existing schedules, and any required auth. Annotations cover part of the safety profile but the agent is left to infer the operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so secretId, rotationPeriod, and keyIsolation are already fully documented including the 1-730 range and host selection. The description's '(days)' reiterates what the schema already states, adding no new meaning, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Change the automatic rotation period of a secret') and clarifies the unit in days, so the agent knows exactly what mutation occurs. It does not, however, distinguish this from nearby siblings such as ncloud_kms_update_rotation_period or the enable/disable auto-rotation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of preconditions (e.g. that auto-rotation must already be enabled), and no routing to alternatives like ncloud_secret_enable_auto_rotation or ncloud_secret_update_rotation_trigger. Usage is only implied by the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_update_rotation_triggerCIdempotent
Set or change the rotation trigger of a secret.
| Name | Required | Description | Default |
|---|---|---|---|
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| triggerId | Yes | Rotation trigger ID (see ncloud_secret_list_triggers) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that: it does not say whether replacing a trigger has side effects on pending rotations, whether it requires auto-rotation to be enabled, or what the operation returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. It is appropriately sized for a simple setter, though its brevity reflects under-specification rather than earned economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and multiple similar secret-rotation siblings, the description should at minimum state prerequisites and clarify that this sets the trigger association rather than creating, deleting, or executing one. As written it leaves those gaps open.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself is unusually informative (it points to ncloud_secret_list_secrets and ncloud_secret_list_triggers and fully explains the keyIsolation enum). The description contributes no additional parameter meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Set or change the rotation trigger of a secret" gives a specific verb plus resource, so an agent knows this mutates a secret's rotation trigger. It does not, however, distinguish itself from close siblings such as ncloud_secret_list_triggers, ncloud_secret_delete_rotation_trigger, or ncloud_secret_enable_auto_rotation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no preconditions, and no routing to alternatives. An agent cannot tell from the text whether it must first call ncloud_secret_list_triggers to obtain a triggerId, or how this differs from enabling auto-rotation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_update_secret_stage_valueAIdempotent
Replace the secret value of one stage (previous / active / pending) with a JSON object string (1-100 key/value pairs, ≤10,000 bytes).
| Name | Required | Description | Default |
|---|---|---|---|
| stage | Yes | Secret value stage: previous | active | pending | |
| value | Yes | New value as a JSON object string | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered; the description's added value is the payload limits, which are behavioral constraints not present in structured data. It does not say whether replacement overwrites the prior value irrecoverably or how it interacts with in-flight rotation, leaving some behavior opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the action and resource, then appends the quantitative limits. No filler, no restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, annotations covering mutation safety, and a fully documented input schema, the description is nearly sufficient for correct invocation. The remaining gap is operational context (overwrite semantics, whether it is safe mid-rotation), which keeps it short of a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds real constraints beyond the schema's terse 'New value as a JSON object string' by quantifying the allowed key/value count and byte ceiling. It still says nothing extra about stage or keyIsolation semantics, so it is above baseline rather than exemplary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Replace) and resource (the secret value of one stage) and enumerates the three stages inline, which helps separate it from ncloud_secret_update_secret_value and the ncloud_secret_job_* pending-stage tools. However, it never names or contrasts those siblings, so the agent must still infer the boundary itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The size/format constraints (JSON object string, 1-100 key/value pairs, <=10,000 bytes) imply how to call it, but there is no explicit when-to-use guidance, no mention of when to prefer ncloud_secret_update_secret_value or the job-based pending-stage tools, and no prerequisites (e.g. whether a secret must be enabled or a rotation job active).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_secret_update_secret_valueBIdempotent
Replace the secret values of the stages you pass (previous / active / pending), each a JSON object string. At least one stage is required.
| Name | Required | Description | Default |
|---|---|---|---|
| active | No | New ACTIVE stage value (JSON object string) | |
| pending | No | New PENDING stage value (JSON object string) | |
| previous | No | New PREVIOUS stage value (JSON object string) | |
| secretId | Yes | Secret ID (see ncloud_secret_list_secrets) | |
| keyIsolation | No | Which Secret Manager host to call: 'global' (default) for secrets encrypted with a KMS global key (secretmanager.apigw.ntruss.com); 'regional' for secrets encrypted with a KMS region-isolated key (ocapi-kr.ncloud.com/secretmanager — the only option in the JPN region) | global |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, lowering the bar. The description adds that each stage value is a JSON object string and that at least one stage must be supplied, which is useful. It does not state whether values are overwritten in place or how prior stages behave, so it adds moderate but not rich context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no waste, and the core behavior is front-loaded before the constraint. Efficient and readable, though slightly terse relative to the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 100% schema coverage, annotations present, and no output schema, the description covers the essentials for a simple mutation tool. Its main gap is failing to differentiate from the sibling stage-value tool and omitting any note on the keyIsolation host choice, leaving routing ambiguous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters including the keyIsolation enum. The description only restates the stage parameters at a high level and adds nothing about keyIsolation or the required secretId, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Replace) and resource (secret values of the previous/active/pending stages), so an agent knows exactly what mutation is performed. It does not, however, distinguish itself from the near-identical sibling ncloud_secret_update_secret_stage_value, which is a genuine routing risk.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'At least one stage is required' communicates a precondition, and passing stages implies the use case. There is no explicit when-to-use guidance and no mention of the sibling stage-value tool or when to prefer this one over get_secret_stage_value / update_secret_stage_value.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_send_monitoring_dataB
Send custom JSON monitoring data to Cloud Insight for a user-defined schema (cw_key). Each record holds the schema's metric and dimension fields as key-value pairs. (SGN region additionally requires header X-NCP-REGION_NO=7.)
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Data record (object) or records (array) with the schema's metric/dimension fields, e.g. {"cpu": 1.5, "instanceId": "i-1"} | |
| cw_key | Yes | Product key (cw_key) of the custom schema |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It helpfully discloses a non-obvious behavioral trait (the SGN region requires header X-NCP-REGION_NO=7), which is genuine added context. However, it omits auth requirements, any limits on batch size, idempotency, and error behavior for what is clearly a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the core action, followed by the data-structure clarification and the region-specific caveat. The parenthetical region note earns its place as a non-obvious operational detail; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so an agent might want more: return/acknowledgement behavior, error conditions, and auth expectations are absent. It does cover purpose, payload shape, and a region constraint, which is enough to attempt a call but not enough to handle failure modes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters, including an example payload for 'data'. The description restates the record structure ('metric and dimension fields as key-value pairs') without adding syntax, ordering, or size guidance beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Send custom JSON monitoring data to Cloud Insight for a user-defined schema (cw_key).' An agent immediately understands this is an ingestion/write operation scoped to a custom schema. It does not, however, differentiate itself from siblings like ncloud_query_monitoring_data or ncloud_create_custom_schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The reference to a 'user-defined schema (cw_key)' implies a prerequisite schema must already exist, and the data-format sentence implies the caller must know the schema's fields. But there is no explicit when-to-use vs. alternatives, no mention of a companion schema-creation tool, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_cancel_alimtalk_reservationADestructiveIdempotent
⚠️ Destructive: Cancel a scheduled Alim Talk request before it is sent (DELETE /alimtalk/v2/services/{serviceId}/reservations/{reserveId} → 204). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| reserveId | Yes | Reservation ID (requestId of the scheduled send) | |
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, and the description adds crucial behavior beyond that: the confirm=true guard, the destructive warning, and the HTTP DELETE method with 204 response. This tells the agent the operation is destructive, requires explicit confirmation, and succeeds silently.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, information-dense sentence with the destructive warning front-loaded, followed by the endpoint and execution requirement. Every word earns its place; there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential operational details: the destructive nature, the confirm flag needed to execute, the HTTP endpoint, the 204 status, and how to locate serviceId via a named sibling tool. With annotations covering safety/idempotency and no output schema, nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description repeats the confirm=true requirement already in the schema but does not add extra meaning beyond what the parameter descriptions already provide. No additional parameter semantics are introduced in the prose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Cancel a scheduled Alim Talk request before it is sent', which clearly distinguishes this from related SENS tools like ncloud_sens_get_alimtalk_reservation_status and ncloud_sens_cancel_sms_reservation. The HTTP endpoint and 204 response further pin down exactly what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: cancel before sending, and warns that confirm=true is required to actually execute. It also tells the agent to find serviceId via ncloud_sens_list_projects. However, it does not explicitly contrast with alternatives (e.g., status-checking or SMS cancellation), leaving some routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_cancel_sms_reservationADestructiveIdempotent
⚠️ Destructive: Cancel a scheduled SMS request before it is sent (DELETE /sms/v2/services/{serviceId}/reservations/{reserveId} → 204). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| reserveId | Yes | Reservation ID (requestId of the scheduled send) | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint: true, idempotentHint: true), the description adds the critical confirm=true requirement to execute, and discloses the 204 success response. This is exactly the behavioral context an agent needs and is not present in annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the destructive warning front-loaded, then the action, endpoint, and execution requirement. No wasted words; every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive cancel operation, the description covers the action, the confirm gate, and the response code. No output schema exists, but the 204 is mentioned. The agent has everything needed to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter already has a descriptive comment. The description adds minimal extra parameter insight beyond reiterating the confirm requirement. Baseline 3 is appropriate since the schema carries the semantic weight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Cancel') and specific resource ('scheduled SMS request') with the HTTP endpoint. It clearly distinguishes from the sibling ncloud_sens_cancel_alimtalk_reservation by specifying SMS. The 'before it is sent' qualifier adds precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: cancel a scheduled SMS that hasn't been sent. It doesn't explicitly name alternatives or exclusions, but the tool name and 'before it is sent' make the context clear. No explicit 'when not to use' guidance, but sufficient for a single-purpose cancel action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_create_projectA
Create a SENS project (POST /common/v2/projects). projectName: lowercase letters, digits, '-' and '_', ≤24 chars. Enable at least one of useSms / useKkoBizMsg (the API rejects a project with no service). The account must already have accepted the SENS Terms of Service and Privacy Policy in the console — the API has no agreement field and returns 'You must agree to both the Terms of Service and the Privacy Policy' otherwise. Returns the created channel service IDs (NRN).
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without creating | |
| useSms | No | Enable the SMS service (default false) | |
| projectDesc | No | Description (0-128 chars) | |
| projectName | Yes | Project name (lowercase letters, digits, '-', '_'; ≤24 chars) | |
| useKkoBizMsg | No | Enable the Biz Message (Kakao) service (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial behavior beyond the lone destructiveHint:false annotation — the validation rule that a service-less project is rejected, the required prior ToS acceptance with the exact error text, and the fact that created channel service IDs are returned. Error semantics and prerequisites are disclosed, which annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the action and endpoint, then naming rules, then prerequisites, then return value. Dense but every sentence carries information; only the final prerequisite clause is somewhat long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with no output schema, the description covers the key risk: the ToS prerequisite that will otherwise cause failure, the validation constraint on services, and the return payload. An agent has everything needed to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the projectName pattern is already documented, but the description adds a cross-parameter constraint (enable at least one of useSms/useKkoBizMsg) that the schema does not express. That is genuine added meaning over the structured fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create a SENS project') and even names the underlying endpoint (POST /common/v2/projects). This is unambiguous against siblings like ncloud_sens_update_project or ncloud_sens_list_projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage conditions: at least one of useSms/useKkoBizMsg must be enabled or the API rejects the call, and the account must have already accepted the SENS ToS/Privacy Policy in the console. It never explicitly routes to an alternative sibling, but the prerequisites make the when-to-use context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_delete_brandmessage_imageADestructiveIdempotent
⚠️ Destructive: Delete an uploaded Brand Message image (DELETE /brandmessage/v2/services/{serviceId}/images/{imageId} → 204). Messages referencing the imageId can no longer be sent. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| imageId | Yes | Image ID to delete | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds significant behavioral context: it explicitly warns 'Destructive', explains the irreversible effect on message sending, and discloses the confirmation requirement (confirm=true). It also specifies the HTTP method and response code (204), which is beyond the annotations. No contradiction with annotations; the description complements them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the most critical information: the destructive warning, the action, the endpoint, and the confirmation requirement. Every part adds value, and there is no fluff or repetition. The structure makes it easy for an agent to quickly grasp the essential behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete operation with annotations (destructiveHint, idempotentHint) and a complete schema, the description covers the key aspects: what it deletes, the HTTP method and response, the effect on messages, and the confirmation flag. It does not explicitly mention how to obtain the imageId (e.g., via list_brandmessage_images) but that is a minor omission given the schema and surrounding sibling tools. Overall, it is sufficiently complete for an agent to call correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all three parameters (imageId, confirm, serviceId) have descriptions in the schema. The tool description does not add additional parameter semantics beyond the schema—it only references the endpoint path that includes serviceId and imageId. Since the schema already documents each parameter adequately, a baseline of 3 is appropriate; the description adds no extra clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Delete an uploaded Brand Message image' with a specific HTTP endpoint and effect. It distinguishes from siblings like ncloud_sens_list_brandmessage_images and ncloud_sens_get_brandmessage_image by focusing on deletion. The warning and consequence ('Messages referencing the imageId can no longer be sent') reinforce the specific resource and operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (deleting an image) but does not explicitly state when to use this tool versus alternatives or when not to use it. It mentions the destructive nature and the need for confirm=true, but lacks explicit guidance on prerequisites or conditions. There is no mention of alternative tools for listing or retrieving images, though the purpose is clear enough for an agent to infer the usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_delete_projectADestructiveIdempotent
⚠️ Destructive: Delete a SENS project and its channel services (DELETE /common/v2/projects/{projectId}, 204 on success). Message history and service IDs under the project become unusable. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| projectId | Yes | Project ID to delete (from ncloud_sens_list_projects) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the annotations by detailing concrete consequences: channel services, message history, and service IDs become unusable. It also discloses the HTTP endpoint and success code, and confirms the need to use 'confirm' to execute. This explicitly surfaces all critical side effects and the safety gate, with no contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three, compact sentences that immediately front-load a destructive warning, then the resource, the endpoint, the consequences, and the confirm requirement. No wasted words, and useful signals such as the warning symbol and the HTTP code are included. Keep it concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-step tool with two parameters, the description covers all necessary information: the object being deleted, the side effects, the confirmation flag, and the success code (204). It is no output schema to explain, but the gap around prerequisites like permissions is not explicitly stated. This description is nearly complete for a simple tool, so a 4 is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description only repeats that already in the schema: 'projectId' is sourced from the list and 'confirm' must be true. There is no added semantic context beyond the schema, so the baseline is not exceeded.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Delete'), a resource ('a SENS project'), and a side effect ('its channel services'), which is a clear from the sibling list. The tool name distinguishes it from other SENS project tools (list, get, create, update), and the endpoint is included. This is a highly expressive purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates that is a 'delete' operation and provides context about the destructive action occurs. However, it does not explicitly mention 'use this when you need to delete permanently' or compare-and-give warnings about alternatives. This is clear context without exclusions, but the lack of a 'when' or another action leaves this is a 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_delete_sms_unsubscribesADestructiveIdempotent
⚠️ Destructive: Remove numbers from the SMS unsubscribe list so they can receive messages again (DELETE /sms/v2/services/{serviceId}/unsubscribes with a JSON array body → 204). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| clientTelNos | Yes | Numbers to remove from the list (≤1,000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already set destructiveHint=true and idempotentHint=true. The description emphasizes 'Destructive' and requires a confirm flag, which adds critical safety context for destructive operations. However, it does not mention what happens to the existing unsubscribe list or whether other settings are affected, but the annotations cover the destruction risk. The idempotentHint is not contradicted since removing numbers is idempotent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense sentence that front-loads the destructive warning and the core effect. Every element (endpoint, confirm requirement) earns its place. It is concise yet information-rich.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive operation with a confirm flag, the description is complete: it explains the endpoint, the required confirm, and the param details. There is no output schema, but the 204 status is mentioned. The only minor gap is that it doesn't state that the operation is irreversible, but the 'Destructive' warning and confirm requirement imply this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already documents all parameters. The description adds value for the confirm parameter (explicitly noting it must be true to execute) and for serviceId (provides fallback env var names and how to find it). This exceeds the baseline of 3 set for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Remove'), the resource ('numbers from the SMS unsubscribe list'), and the effect ('so they can receive messages again'). It also includes the HTTP method and endpoint, which disambiguates it from related tools like ncloud_sens_register_sms_unsubscribes and ncloud_sens_list_sms_unsubscribes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly begins with 'Destructive:' and instructs to 'Set confirm=true to execute.' This tells the agent exactly when to use this tool (to remove numbers) and implies it should only be used when the user explicitly wants to send messages to previously unsubscribed numbers. The warning and confirm requirement serve as strong usage guidance, though it does not name alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_alimtalk_reservation_statusARead-only
Get the status of a scheduled Alim Talk request (GET /alimtalk/v2/services/{serviceId}/reservations/{reserveId}/reserve-status): READY|PROCESSING|CANCELED|FAIL|DONE|STALE|SKIP.
| Name | Required | Description | Default |
|---|---|---|---|
| reserveId | Yes | Reservation ID = requestId of the scheduled send | |
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description adds the GET endpoint and the full set of possible statuses, which is useful since there is no output schema. It does not explain the semantics of statuses like STALE or SKIP, but it goes beyond what the annotation provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence that front-loads the action and resource, then adds the endpoint and status vocabulary. There is no filler or redundant restatement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only status tool, the description plus the schema is sufficient: the required reserveId, optional serviceId discovery, and status values are all covered. It could be more complete by explaining status transitions or polling behavior, but nothing essential is missing for invoking it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and both parameters have detailed schema descriptions, including the reserveId-to-requestId mapping and serviceId NRN/default/lookup guidance. The description itself adds no additional parameter detail, so it meets the baseline without exceeding it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific operation—getting the status of a scheduled AlimTalk reservation—and includes the exact endpoint and possible status values. This clearly distinguishes it from sibling tools like ncloud_sens_get_alimtalk_status and ncloud_sens_cancel_alimtalk_reservation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly establishes the use case: checking the status of a scheduled AlimTalk request, which is distinct from listing, sending, or canceling reservations. It does not explicitly name alternatives or provide when-not-to-use exclusions, but the intended context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_alimtalk_statusARead-only
Get one Alim Talk delivery result (GET /alimtalk/v2/services/{serviceId}/messages/{messageId}): requestStatusCode (A000 = accepted), messageStatusCode (0000 = delivered; 3019 not a KakaoTalk user, 3020 blocked), failover details.
| Name | Required | Description | Default |
|---|---|---|---|
| messageId | Yes | Message ID | |
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description is consistent with that (a GET request). The description adds value beyond annotations by explaining the meaning of status codes (A000, 0000, 3019, 3020) and mentioning failover details, which helps the agent interpret the response. It doesn't describe the full response structure, but for a read-only status check, the key behavioral context is covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and information-dense. It front-loads the core purpose and endpoint, then packs status codes and parameter guidance into a few clauses. Every sentence earns its place. Slightly dense with the parenthetical status codes, but not bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only status lookup with 2 params and no output schema, the description covers the essential context: what it does, the endpoint, key status codes, and how to resolve the serviceId. The only minor gap is that it doesn't describe the full response structure, but the status code explanations partially compensate. The readOnlyHint annotation covers the safety profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters. The description adds value by explaining the serviceId format (NRN form), the default fallback to environment variables, and how to find it via ncloud_sens_list_projects. It also explains the 'Forbidden' error meaning, which is beyond the schema. This is a good complement to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a specific resource ('one AlimTalk delivery result'), and the exact API endpoint. It also includes the key status codes and their meanings, which makes the tool's purpose unmistakable. It clearly distinguishes from sibling tools like ncloud_sens_list_alimtalk_requests (list vs get single).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: it's for checking a single delivery result, and the status code meanings tell the agent when to use it (e.g., to check if a message was delivered). It doesn't explicitly state when NOT to use it or name alternatives, but the 'Get one' phrasing and the presence of sibling list tools make the context clear. The serviceId guidance about finding it via ncloud_sens_list_projects is a useful usage hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_brandmessage_imageARead-only
Get one Brand Message image (GET /brandmessage/v2/services/{serviceId}/images/{imageId}).
| Name | Required | Description | Default |
|---|---|---|---|
| imageId | Yes | Image ID | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the GET endpoint is consistent but adds no new behavioral detail beyond that. The description does not disclose the response format (e.g., binary image data vs JSON metadata), error cases, or any side effects, so the agent gains little beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that leads with the action and resource, then provides the exact endpoint. There is no filler, repetition, or extraneous information—every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given only two parameters and a read-only annotation, the definition is minimally viable, but it leaves gaps: there is no output schema and the description does not say how the image is returned, nor does it point to ncloud_sens_list_brandmessage_images as the source for obtaining imageId. The serviceId default and error hint are helpful but live in the schema, not the tool description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema description coverage is 100%: imageId is minimally described and serviceId explains default environment variables, how to find it via ncloud_sens_list_projects, and the meaning of a 'Forbidden' reply. The description itself adds no parameter-level meaning, but with the schema so thorough, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Get one Brand Message image', and it includes the exact REST endpoint path with both serviceId and imageId placeholders. The singular 'one' clearly differentiates it from the sibling list tool (ncloud_sens_list_brandmessage_images).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies via 'one' that this tool is for retrieving a single existing image, but it does not explicitly say when to use it versus alternatives like listing images or deleting one. It also does not tell the agent to obtain imageId from the list operation. The serviceId schema mentions list_projects for finding the service ID, but that is not about tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_brandmessage_statusARead-only
Get one Brand Message delivery result with its full payload (GET /brandmessage/v2/services/{serviceId}/messages/{messageId}). messageStatusCode 0000 = delivered, 3022 = outside 08:00-20:50, 3050 = N targeting without 080 unsubscribe, B004 = quota exceeded.
| Name | Required | Description | Default |
|---|---|---|---|
| messageId | Yes | Message ID | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which is consistent with the description's 'Get' action. The description adds value by explaining the meaning of several status codes (0000, 3022, 3050, B004), providing useful context beyond the read-only hint. It does not contradict annotations and adds behavioral context about response interpretation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded: a single sentence stating the purpose and endpoint, followed by a compact list of status codes. Every part adds value without redundancy. It is well-structured and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple GET operation. It specifies the endpoint, status code meanings, and implies the full payload is returned. It does not describe the response schema, but given no output schema is defined, the description provides enough to understand the outcome. Minor gaps include lack of explicit return format, but this is not critical for a read-only status fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters have descriptions. The description adds extra value for serviceId by explaining the default value, how to find it via ncloud_sens_list_projects, and the 'Forbidden' error scenario. This goes beyond the schema description, enriching the agent's understanding of the parameter's semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves a single Brand Message delivery result with its full payload, and includes the specific API endpoint. This distinguishes it from sibling tools like ncloud_sens_list_brandmessage_requests (list) and ncloud_sens_send_brandmessage (send).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives, but the purpose is clear enough that an agent can infer it for fetching a specific message status. There is no explicit 'when not to use' or mention of alternative tools, so it falls short of a 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_mailARead-only
Get one SENS mail in detail (GET /mail/v2/services/{serviceId}/requests/{requestId}/mails/{mailId}): substituted title/body, attachFiles[], and per-recipient status / sendResultCode / received / retryCount.
| Name | Required | Description | Default |
|---|---|---|---|
| mailId | Yes | Mail ID (from ncloud_sens_list_mails) | |
| requestId | Yes | Request ID | |
| serviceId | No | Mail service ID in NRN form (e.g. ncp:mail:kr:1********2:main). Defaults to NCLOUD_SENS_MAIL_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (mailService.serviceId). A 'Forbidden' reply means that project's Mail channel is not enabled (useMail=false) — pick a project with useMail=true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint: true, and the description does not contradict this. The description emphasizes that this is a 'what' of the response (GET endpoint, detail with specific fields), which is accurate for a read-only lookup. Since the annotation covers the safety profile, the description adds sufficient value for a read tool without adding it adds the detail fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and endpoint, followed by a compact list of included. No wasted words. Slightly more than necessary, but is a concise, well-structured summary highly useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a simple read-only action, 3 parameters, and full schema coverage, the description plus schema is sufficient. The output schema isn't provided but the description summarizes the main fields. No further detail is needed for an agent to call correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining the return content and connecting mailId to 'from ncloud_sens_list_mails'. It does not add much more about the params themselves, but the high schema coverage means the description doesn't need to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get one SENS mail in detail'), includes the full API endpoint, and enumerates the key returned fields (substituted title/body, attachFiles[], per-recipient status/sendResultCode/received/retryCount). This clearly distinguishes it from sibling listers like ncloud_sens_list_mails and ncloud_sens_get_mail_request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is the detail step after listing mails and the mailId parameter is referenced as coming from ncloud_sens_list_mails, which gives useful context. However, it does not explicitly state when to use this tool versus alternatives, such as ncloud_sens_get_mail_request, and no when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_mail_requestARead-only
Get one SENS mail send request with status counts (GET /mail/v2/services/{serviceId}/requests/{requestId}): status, requestCount, sentCount, finishCount, countsByStatus[].
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes | Request ID returned by ncloud_sens_send_mail | |
| serviceId | No | Mail service ID in NRN form (e.g. ncp:mail:kr:1********2:main). Defaults to NCLOUD_SENS_MAIL_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (mailService.serviceId). A 'Forbidden' reply means that project's Mail channel is not enabled (useMail=false) — pick a project with useMail=true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already declares this as a read-only operation, which covers the safety profile. The description adds the endpoint and the specific returned fields, which is useful context beyond the annotation, but does not disclose additional behavioral aspects such as error handling or rate limits. Since the annotation covers the main behavioral trait, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main action, includes the API path, and lists the returned fields. There is no filler or redundancy; every part earns its place. It is concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, but the description lists the returned fields, giving an agent a sense of the response. The schema descriptions for parameters cover how to obtain requestId and serviceId, including troubleshooting for Forbidden errors. For a simple read operation, this is mostly complete, though it does not explain the meaning or structure of countsByStatus[] in detail, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage for both parameters with detailed descriptions, especially for serviceId which explains defaults, discovery, and troubleshooting. The tool description itself does not add parameter meaning beyond repeating the purpose. With high schema coverage, the baseline is 3, and the description does not compensate with extra details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the resource (one SENS mail send request), and lists the specific status counts returned (status, requestCount, sentCount, finishCount, countsByStatus[]). It also includes the API endpoint, which adds precision. This distinguishes it from list operations and the send operation by focusing on a single request with a requestId.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly mention when to use this tool versus alternatives like ncloud_sens_list_mail_requests or ncloud_sens_get_mail. However, the required requestId parameter implies it is used when you have a specific request ID from sending, but this is implicit rather than stated. No explicit exclusions or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_projectARead-only
Get one SENS project with its channel service IDs (GET /common/v2/projects/{projectId}).
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Project ID (from ncloud_sens_list_projects) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description's 'Get' is consistent with that. It adds minimal behavioral context, such as mentioning channel service IDs in the response, but does not describe return structure or any edge cases. Given the annotation coverage, this is adequate but not enriched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the action and includes the API endpoint. No wasted words; it is appropriately concise for a simple GET operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read operation with readOnlyHint annotation and full schema coverage, the description is nearly complete. It mentions the key response detail (channel service IDs) and the endpoint. The lack of an output schema is acceptable given the tool's simplicity, though a bit more on expected fields would be ideal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema already documents projectId with a helpful source hint. The description does not add extra parameter semantics beyond what the schema provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'one SENS project', with an added detail about channel service IDs. It is distinguishable from list operations like ncloud_sens_list_projects by its singular scope, though it does not explicitly contrast with siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it is for fetching a single project, and the parameter description indicates the ID comes from ncloud_sens_list_projects, but it does not explicitly state when to prefer this over alternatives or provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_sms_reservation_statusARead-only
Get the status of a scheduled SMS request (GET /sms/v2/services/{serviceId}/reservations/{reserveId}/reserve-status): READY|PROCESSING|CANCELED|FAIL|DONE|STALE|SKIP.
| Name | Required | Description | Default |
|---|---|---|---|
| reserveId | Yes | Reservation ID = the requestId returned by a send with reserveTime | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so side-effect disclosure is not needed. The description adds the HTTP path and enumerates the exact possible status values (READY|PROCESSING|CANCELED|FAIL|DONE|STALE|SKIP), giving concrete expectations about the result. It does not describe the response structure or error details, but for a read-only status endpoint this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the verb and resource, then provides the endpoint and the full status enum. No filler or repetition; every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only status query, the description plus schema cover the essentials: how to get reserveId, how to determine/find serviceId, default behavior, and the statuses to expect. The lack of an output schema is partly mitigated by listing the status values, though the exact response field structure is not spelled out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with rich parameter documentation (how reserveId is obtained, serviceId defaults via environment variables, discovery through ncloud_sens_list_projects, and the Forbidden interpretation). The description itself contributes no additional parameter semantics, so the baseline 3 for high coverage applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the specific verb 'Get', the resource 'status of a scheduled SMS request', and includes the exact REST endpoint. The word 'scheduled' together with 'reservation' clearly distinguishes it from ncloud_sens_get_sms_status and ncloud_sens_list_sms_requests even without reading the siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The wording gives clear context: use this when you have a reservation ID from a scheduled SMS send and need its status. However, it does not explicitly contrast with alternatives such as ncloud_sens_get_sms_status for non-scheduled sends or ncloud_sens_cancel_sms_reservation for cancellation, so it stops short of full comparative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_get_sms_statusARead-only
Get one SMS delivery result (GET /sms/v2/services/{serviceId}/messages/{messageId}): status READY|PROCESSING|COMPLETED, statusCode (carrier result code), statusName success|fail, telcoCode, completeTime.
| Name | Required | Description | Default |
|---|---|---|---|
| messageId | Yes | Message ID (from the send response or ncloud_sens_list_sms_requests) | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint: true, so the read-only nature is covered, but the description adds value by detailing response fields and status codes (e.g., READY|PROCESSING|COMPLETED, success|fail). It does not disclose other behavioral aspects like rate limits or that the status may change over time, but it provides useful context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, one sentence, but packed with essential information: endpoint, response fields, and status values. It front-loads the purpose and avoids any redundant phrasing. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description enumerates the response fields, which compensates. It covers the query parameters and provides hints on how to obtain them. The only minor gap is absence of typical error scenarios (beyond the Forbidden hint) and polling guidance, but overall it's sufficient for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters described in the schema. However, the description adds meaning by referencing 'from the send response or ncloud_sens_list_sms_requests' for messageId and providing NRN format and environment variable defaults for serviceId, plus the 'Forbidden' hint. This enriches parameter understanding beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves one SMS delivery result via a specific GET endpoint, and enumerates the key response fields (status, statusCode, statusName, telcoCode, completeTime). The verb 'Get' combined with the resource 'SMS status' and the explicit endpoint distinguishes it from related tools like ncloud_sens_list_sms_requests and ncloud_sens_send_sms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a direct API path and indicates it returns delivery results, implying it should be used to check individual message status. It does not explicitly state when to use it versus listing requests or checking reservations, but the context of 'one SMS delivery result' and the sibling names (list_sms_requests, get_sms_reservation_status) provide clear differentiation without needing explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_alimtalk_channelsARead-only
List KakaoTalk channels registered to the Biz Message service (GET /alimtalk/v2/services/{serviceId}/channels): channelId (@…), channelStatus, useSmsFailover, failoverServiceId.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds the endpoint and the returned fields, which is useful context. However, it does not describe pagination, response format, or any rate-limit considerations. With annotations covering the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that front-loads the action and resource, includes the endpoint, and lists the key returned fields. The parameter description is also concise and informative. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter, the description covers the essential information: what it lists, the endpoint, the returned fields, and how to obtain the serviceId. The only minor gap is the lack of explicit pagination or response structure details, but given the tool's simplicity and the readOnlyHint annotation, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the serviceId parameter. The description adds value by explaining the NRN format, the default environment variable fallback, how to find the serviceId via ncloud_sens_list_projects, and the 'Forbidden' error meaning. This goes beyond the schema's basic description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a specific resource ('KakaoTalk channels registered to the Biz Message service'), and includes the API endpoint. It also enumerates the returned fields (channelId, channelStatus, useSmsFailover, failoverServiceId), which clearly distinguishes it from sibling SENS tools like ncloud_sens_list_alimtalk_templates or ncloud_sens_list_alimtalk_requests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: it lists channels for a given ALIMTALK serviceId, and the parameter description explains how to find the serviceId via ncloud_sens_list_projects. It also provides a troubleshooting hint ('Forbidden' reply means the project does not have this channel enabled). However, it does not explicitly state when to use this tool versus alternatives like ncloud_sens_list_alimtalk_templates or ncloud_sens_list_alimtalk_requests.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_alimtalk_requestsARead-only
List Alim Talk delivery requests (GET /alimtalk/v2/services/{serviceId}/messages). Requires requestId, or requestStartTime+requestEndTime (≤31 days), or completeStartTime+completeEndTime (≤24 h); plusFriendId is required unless requestId is given. An empty HTTP 404 reply means no matching records (observed live with an unknown requestId).
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Filter by recipient number (digits only) | |
| pageSize | No | Items per page (1-100, default 20) | |
| messageId | No | Filter by message ID | |
| nextToken | No | Page token from the previous response | |
| requestId | No | Request ID from the send response. One of requestId, requestStartTime+requestEndTime, completeStartTime+completeEndTime is required | |
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| plusFriendId | No | Channel ID (required when requestId is not given) | |
| templateCode | No | Filter by template code | |
| requestEndTime | No | Window end by request time (SMS: within 30 days, Alimtalk/Brand: within 31 days of start) | |
| completeEndTime | No | Window end by completion time (within 24 hours of start) | |
| requestStartTime | No | Window start by request time 'YYYY-MM-DD HH:mm:ss' | |
| completeStartTime | No | Window start by completion time 'YYYY-MM-DD HH:mm:ss' | |
| messageStatusName | No | Filter by delivery result | |
| requestStatusName | No | Filter by request result |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover readOnlyHint=true, so the safety profile is already known; the description adds genuine behavioral context beyond that: an empty HTTP 404 means no matching records, noted as observed live with an unknown requestId. This non-obvious quirk is valuable because a naive agent might interpret 404 as an error. It also discloses the time-window length limits, even if those are repeated in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three tight sentences: the first declares the operation and endpoint, the second lays out required parameter combinations, and the third captures a live-observed edge case. Every sentence earns its place and there is zero filler. It is front-loaded with the core purpose before the constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is complex (14 parameters, no output schema), but the schema carries detailed parameter semantics, so the description only needs to add combination rules and behavioral quirks, which it does. It covers the mandatory selectors, the 404 edge case, and the default serviceId resolution hints are still in the schema. The only notable omission is an explicit mention of pagination flow via nextToken, but the parameter description already implies that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all 14 parameters documented including required-combination logic (e.g., plusFriendId is required when requestId is not given). The description restates those combinations but adds little new parameter-level information beyond what the schema already provides. Thus the score sits at the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb-resource pair (List AlimTalk delivery requests) plus the explicit REST endpoint, so an agent can tell this is the list operation for AlimTalk requests. It doesn't explicitly name sibling alternatives like ncloud_sens_list_alimtalk_channels, so it doesn't earn a 5, but the resource and endpoint are clear enough. The meaning is unambiguous and not a tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear invocation guidance: requestId alone, or requestStartTime+requestEndTime (≤31 days), or completeStartTime+completeEndTime (≤24 h), with plusFriendId required unless requestId is given. This tells the agent how to call the tool correctly, but it doesn't discuss when to use this over a sibling status check or channel list. The context is implied rather than explicitly contrasting alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_alimtalk_templatesARead-only
List Alim Talk templates of a channel (GET /alimtalk/v2/services/{serviceId}/templates). channelId is required; giving templateCode returns that template's full detail including inspection comments.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | Items per page (1-100, default 100) | |
| channelId | Yes | KakaoTalk channel ID (e.g. @channelname, from ncloud_sens_list_alimtalk_channels) | |
| pageIndex | No | Page index (0-based, default 0) | |
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| templateCode | No | Template code → detailed view | |
| templateName | No | Filter by name (full or partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation, so the burden on the description is lower. The description adds useful behavioral context beyond the annotation: it names the HTTP method (GET), requires channelId, and discloses that providing templateCode returns full detail including inspection comments. No contradictions or hidden side effects are suggested.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tight sentences that front-load the core purpose and endpoint, then add the key behavioral distinction for templateCode. Every clause earns its place and there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with a 100%-documented schema, the description plus schema cover what an agent needs: the channel scope, the detail mode, pagination parameters, and even hints for resolving channelId and serviceId. There is no output schema, so return shape is not spelled out, but this is a minor gap for a simple list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all six parameters thoroughly. The description's parameter-related statements ('channelId is required', 'templateCode returns full detail') mostly restate what the schema already says. It adds no significant parameter semantics beyond the input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('List Alim Talk templates of a channel') and includes the exact REST endpoint, making the tool's purpose unambiguous. It clearly distinguishes this from sibling tools like ncloud_sens_list_alimtalk_channels and ncloud_sens_list_alimtalk_requests. The added note about templateCode providing full detail further sharpens what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: this tool lists templates for a channel, and the condition 'giving templateCode returns that template's full detail' provides actionable usage guidance. It does not explicitly name alternatives or state when not to use it, but the endpoint and required channelId make the intended scenario clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_brandmessage_imagesARead-only
List images uploaded for Brand Messages (GET /brandmessage/v2/services/{serviceId}/images): imageId, imageUrl, imageType (BASIC|WIDE|WIDE_ITEM_LIST_MAIN|WIDE_ITEM_LIST_SUB|CAROUSEL_FEED|CAROUSEL_COMMERCE). Images are kept for 1 year. Upload itself is multipart and must be done in the console.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | Items per page (1-200, default 20) | |
| pageIndex | No | Page index (0-based, default 0) | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds useful supplementary context: images are retained for 1 year, and uploads are multipart and must be done in the console. This exceeds annotation coverage and informs the agent of operational constraints, though it does not discuss pagination or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences: the first states the purpose and lists returned fields, the second adds retention and upload constraints. It is front-loaded with the core action and avoids unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description, combined with the schema and annotations, covers the essential aspects for an agent to call the tool: it lists the action, fields, parameters (in schema), and adds operational context (retention, upload method). It does not explicitly state the response structure, but the listed fields imply a list, and pagination is handled via schema parameters. It is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with detailed descriptions for pageSize, pageIndex, and serviceId. The description does not add further parameter-level semantics beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a clear resource ('images uploaded for Brand Messages'), and provides the endpoint and returned fields. It also lists the enum values for imageType, which helps distinguish this from other Sens tools that deal with requests or templates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by being a listing operation, but it does not explicitly mention alternative tools like get_brandmessage_image or delete_brandmessage_image, nor when to choose this over them. It does provide context about image retention and that uploads must be done in the console, which partially guides usage, but lacks explicit when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_brandmessage_requestsARead-only
List Brand Message delivery requests (GET /brandmessage/v2/services/{serviceId}/messages). Requires requestId, or requestStartTime+requestEndTime (≤31 days), or completeStartTime+completeEndTime (≤24 h); plusFriendId is required unless requestId is given. An empty HTTP 404 reply means no matching records (observed live with an unknown requestId).
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Filter by recipient number (digits only) | |
| pageSize | No | Items per page (1-100, default 20) | |
| messageId | No | Filter by message ID | |
| nextToken | No | Page token from the previous response | |
| requestId | No | Request ID from the send response. One of requestId, requestStartTime+requestEndTime, completeStartTime+completeEndTime is required | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| plusFriendId | No | Channel ID (required when requestId is not given) | |
| templateCode | No | Filter by template code | |
| requestEndTime | No | Window end by request time (SMS: within 30 days, Alimtalk/Brand: within 31 days of start) | |
| completeEndTime | No | Window end by completion time (within 24 hours of start) | |
| requestStartTime | No | Window start by request time 'YYYY-MM-DD HH:mm:ss' | |
| completeStartTime | No | Window start by completion time 'YYYY-MM-DD HH:mm:ss' | |
| messageStatusName | No | Filter by delivery result | |
| requestStatusName | No | Filter by request result |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the single readOnlyHint annotation by disclosing a genuinely surprising behavior: 'An empty HTTP 404 reply means no matching records (observed live with an unknown requestId).' This prevents an agent from misdiagnosing a 404 as an endpoint failure, and the time-window constraints are behavioral limitations an agent must respect. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences each earn their place: the action+endpoint, the required selector constraints, and the 404 edge case. The verb is front-loaded and the total is roughly 45 words for a 14-parameter tool. The 'observed live' parenthetical adds practical credibility without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 14 parameters, zero required fields, conditional requirements, and no output schema, the description covers the essentials: what it does, all valid filter modes, companion-parameter rules, and the non-obvious 404 semantics. Minor gaps: it doesn't clarify how the additive filters (messageId, to, templateCode, statuses) combine with the three selector modes, nor mention pagination iteration with nextToken — leaving an agent to infer those interactions from the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description earns a 4 by synthesizing cross-parameter constraints that individual field descriptions only hint at: which selectors are mutually exclusive, the ≤31-day vs ≤24h windows, and the plusFriendId-unless-requestId rule. It organizes 14 loose parameters into a small number of valid call patterns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') + resource ('Brand Message delivery requests') plus the exact HTTP endpoint, which distinguishes it from siblings like ncloud_sens_send_brandmessage (send vs list), ncloud_sens_get_brandmessage_status (status of one vs list of requests), and ncloud_sens_list_brandmessage_templates/images (different resources). An agent can select it correctly from the large sibling set without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides exceptionally clear usage context: the three mutually-exclusive selection modes (requestId, or requestStartTime+requestEndTime ≤31 days, or completeStartTime+completeEndTime ≤24h) and the plusFriendId dependency. What it lacks is explicit routing against alternatives — it never says 'use get_brandmessage_status for a single message status' — so no exclusions are stated, though the tool name and resource description make the intended use unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_brandmessage_templatesARead-only
List Brand Message templates of a channel (GET /brandmessage/v2/services/{serviceId}/templates). Note the channel parameter is plusFriendId here (Alim Talk uses channelId). Returns { items[], totalCount, hasNext }.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | Items per page (1-100, default 100) | |
| pageIndex | No | Page index (0-based, default 0) | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| messageType | No | Filter by message type | |
| plusFriendId | Yes | KakaoTalk channel ID (e.g. @channelname) | |
| templateCode | No | Filter by template code | |
| templateName | No | Filter by name (full or partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint; the description adds the GET endpoint and the response structure, which is a clear context for the caller.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a concise 2-sentence structure with a clear first sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The context is complete for a typical read-only list operation. The response shape is already described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter descriptions are present. The note about plusFriendId vs channelId appears to the schema's role. The description doesn't add much new.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('List Brand Message templates of a channel'), adds the HTTP endpoint path, and the plusFriendId/channelId distinction makes it easy to tell apart from the AlimTalk template resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives the context that the channel parameter is plusFriendId here and AlimTalk uses channelId, which implicitly signals which is correct list to use. It does not explicitly name an alternative tool or state conditions for when this tool is preferred overused for the rest.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_mail_requestsARead-only
List SENS mail send requests in a period (GET /mail/v2/services/{serviceId}/requests). fromDateTime and toDateTime are required (ISO 8601 with offset).
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort as '{field},{direction}' (default 'createDateTime,desc') | |
| title | No | Subject (partial match) | |
| mailId | No | Mail ID | |
| pageNo | No | Page number (0-based, default 0) | |
| status | No | Request status | |
| pageSize | No | Items per page (1-1000, default 10) | |
| requestId | No | Exact request ID | |
| serviceId | No | Mail service ID in NRN form (e.g. ncp:mail:kr:1********2:main). Defaults to NCLOUD_SENS_MAIL_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (mailService.serviceId). A 'Forbidden' reply means that project's Mail channel is not enabled (useMail=false) — pick a project with useMail=true. | |
| templateNo | No | Template number | |
| toDateTime | Yes | Period end, ISO 8601 with offset | |
| dispatchType | No | How the request was made | |
| fromDateTime | Yes | Period start, ISO 8601 with offset (e.g. 2026-09-01T00:00:00+09:00) | |
| senderAddress | No | Sender address | |
| recipientAddress | No | Recipient address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals this is a read-only operation, so the description doesn't need to repeat that. It adds the requirement of a time period and the ISO 8601 format, which is useful context. However, it doesn't disclose any other behavior like pagination limits or response shape beyond what the schema already covers.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the main purpose, then a key constraint. It is concise and well-structured without any redundant information. It could be slightly longer to include alternative tool guidance, but it's not overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with 14 parameters fully documented in the schema, the description is adequate. It covers the core action and required parameters. The schema provides detailed descriptions for serviceId and other filters, so the description doesn't need to repeat them. No output schema exists, but that's not a gap given the tool's nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are documented in the schema. The description repeats the fact that fromDateTime and toDateTime are required and in ISO 8601, which is already in the schema. It adds no additional meaning beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('List') and resource ('SENS mail send requests') and includes the endpoint. It distinguishes itself as being specifically about mail, but doesn't explicitly differentiate from sibling list tools like ncloud_sens_list_sms_requests or ncloud_sens_list_alimtalk_requests, though the name makes that implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It mentions that fromDateTime and toDateTime are required, which is a usage constraint, but it doesn't provide any guidance on when to use this tool versus alternatives (e.g., other SENS list request tools). No when-not-to-use information is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_mailsARead-only
List the individual mails of a SENS mail send request (GET /mail/v2/services/{serviceId}/requests/{requestId}/mails). Mails whose only recipients were unsubscribed/blocked are counted as FAILED.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort as '{field},{direction}' (default 'createDateTime,desc') | |
| title | No | Subject (partial match) | |
| mailId | No | Exact mail ID | |
| pageNo | No | Page number (0-based, default 0) | |
| status | No | Mail statuses to include (repeatable) | |
| pageSize | No | Items per page (1-1000, default 10) | |
| requestId | Yes | Request ID | |
| serviceId | No | Mail service ID in NRN form (e.g. ncp:mail:kr:1********2:main). Defaults to NCLOUD_SENS_MAIL_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (mailService.serviceId). A 'Forbidden' reply means that project's Mail channel is not enabled (useMail=false) — pick a project with useMail=true. | |
| recipientAddress | No | Exact recipient address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint: true, so the description doesn't need to restate that. It adds a valuable behavioral note that mails with only unsubscribed/blocked recipients are counted as FAILED, which is not obvious from the schema and helps the agent interpret results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The primary purpose is stated first, followed by a single caveat. Everything earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list operation with a fully-described schema, the description is adequate. It includes the crucial edge case about FAILED status. While it doesn't specify the output structure, no output schema exists and the tool's purpose is clear. Slight gap in not mentioning pagination defaults, but those are covered by parameter descriptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for all 9 parameters, so the baseline is 3. The description does not add any additional parameter semantics beyond what the schema already provides. It relies on the schema's thorough descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List), the resource (individual mails of a SENS mail send request), and gives the API path. It distinguishes from sibling tools like list_mail_requests (which lists requests) and get_mail (which fetches a single mail) by specifying the granularity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool: when you need the individual mails for a given send request, identified by requestId. It does not explicitly compare with alternatives, but the context is clear from the verb 'List' and the resource. It doesn't mention exclusions, but for a list operation it's straightforward.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_projectsARead-only
List SENS projects (GET /common/v2/projects). Each project carries the per-channel service IDs in NRN form — smsService.serviceId, kkoBizMsgService.serviceId and mailService.serviceId (ncp:mail:kr:…) — which the SMS/Alimtalk/Mail tools take as serviceId; useMail marks projects with the Mail channel. Projects migrated from Cloud Outbound Mailer are named 'mail-'.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | Items per page (1-100, default 100) | |
| pageIndex | No | Page index (0-based, default 0) | |
| projectName | No | Filter by project name (full or partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint:true, so the read-only nature is known. The description adds valuable context beyond annotations: the structure of service IDs (NRN form), the useMail flag, and the 'mail-<UUID>' naming for migrated projects. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the main action, then adds relevant contextual details about the output fields and naming conventions. Every sentence contributes useful information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with no output schema, the description provides a solid picture of what to expect: per-channel service IDs, the useMail marker, and naming for migrated projects. It also ties to downstream tools. Minor gap: it does not describe pagination behavior, but that is covered by the parameter schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all three parameters (pageSize, pageIndex, projectName), including ranges and defaults. The description does not add any parameter-specific details beyond what the schema already provides, so it stays at the baseline for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List SENS projects' with the API endpoint, and explains the purpose of the output (service IDs used by other tools). It distinguishes itself from sibling tools like ncloud_sens_list_alimtalk_channels by focusing on projects, not channels, and by linking to downstream tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it: when you need project-level service IDs for SMS/Alimtalk/Mail tools. It mentions the useMail flag and naming convention for migrated projects, which helps agents decide if this is the right tool. However, it does not explicitly state when not to use it or name alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_sms_requestsARead-only
List SMS delivery requests of the last 90 days (GET /sms/v2/services/{serviceId}/messages). Requires requestId, or requestStartTime+requestEndTime (≤30 days), or completeStartTime+completeEndTime (≤24 h). Paginate with nextToken. An empty HTTP 404 reply means no matching records for this service (observed live 2026-09), not a wrong path.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Filter by recipient number (digits only) | |
| from | No | Filter by sender number (digits only) | |
| type | No | Filter by message type | |
| status | No | Filter by request status | |
| pageSize | No | Items per page (1-100, default 20) | |
| messageId | No | Filter by message ID | |
| nextToken | No | Page token from the previous response | |
| requestId | No | Request ID from the send response. One of requestId, requestStartTime+requestEndTime, completeStartTime+completeEndTime is required | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| statusName | No | Filter by delivery result | |
| contentType | No | Filter by content type | |
| countryCode | No | Filter by country code | |
| requestEndTime | No | Window end by request time (SMS: within 30 days, Alimtalk/Brand: within 31 days of start) | |
| completeEndTime | No | Window end by completion time (within 24 hours of start) | |
| requestStartTime | No | Window start by request time 'YYYY-MM-DD HH:mm:ss' | |
| completeStartTime | No | Window start by completion time 'YYYY-MM-DD HH:mm:ss' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true, so the description carries the burden of behavioral context. It adds valuable, non-obvious behavior: the empty-404 response means no matching records rather than a wrong path, and it documents the 90-day retention window. This goes well beyond what the schema or annotation already provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with no filler. The main action is front-loaded, followed by the required parameter logic, pagination, and the 404 edge case. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 16-parameter tool with no output schema, the description covers the most critical invocation requirements, pagination, and an important error-behavior gotcha. It does not describe the response shape, but that is not strictly needed to select and invoke the tool correctly; the missing piece is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by specifying which mutually exclusive parameter groups actually need to be supplied, and by clarifying the time-window constraints in the same sentence. This helps an agent choose the right parameter combination without having to infer it from scattered field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), resource ('SMS delivery requests'), and time scope ('last 90 days'), while also giving the exact REST endpoint. This clearly distinguishes it from sibling tools like ncloud_sens_list_alimtalk_requests and ncloud_sens_list_brandmessage_requests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear invocation context: which parameter combinations are required (requestId, request time range, or completion time range) and their limits (30 days / 24 hours), plus nextToken pagination. It does not explicitly name alternatives or state when not to use this tool, but the resource-specific wording makes the usage context unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_list_sms_unsubscribesARead-only
List SMS unsubscribe (수신 거부) numbers (GET /sms/v2/services/{serviceId}/unsubscribes). startTime/endTime are epoch milliseconds. registerType C = ARS, M = manual. An empty HTTP 404 reply was observed live when the service has no records.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | Registered-before, epoch milliseconds | |
| pageSize | No | Items per page (1-100) | |
| pageIndex | No | Page index (0-based) | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| startTime | No | Registered-after, epoch milliseconds | |
| clientTelNo | No | Filter by number (digits only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds several behavioral details beyond the readOnlyHint annotation: it specifies that startTime/endTime are epoch milliseconds, explains registerType value mapping (C=ARS, M=manual), and notes that an empty HTTP 404 reply was observed live when the service has no records. This 404 quirk is especially valuable for distinguishing an empty result from an error, exceeding the annotation's scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the primary purpose, followed by key parameter semantics and a notable edge case. It avoids filler, though it slightly duplicates schema information about epoch milliseconds. Overall it is efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a read-only list operation but omits any explanation of the response shape (no output schema) and provides no usage guidance relative to siblings. It does include the 404 edge case, which is critical for correct handling. The lack of response structure and alternative routing leaves gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all six parameters with 100% description coverage, including the epoch milliseconds format and numeric ranges. The description repeats the epoch ms note and mentions registerType, which is not a parameter in the schema, adding little meaningful parameter value beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists SMS unsubscribe numbers and gives the exact HTTP endpoint. The verb 'List' plus resource 'SMS unsubscribe numbers' is unambiguous, and including the endpoint further disambiguates it from the register/delete sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no when-to-use guidance relative to sibling tools like ncloud_sens_register_sms_unsubscribes or ncloud_sens_delete_sms_unsubscribes. It does not state under what circumstances an agent should select this tool over others, leaving usage decisions to the name and schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_register_sms_unsubscribesA
Register phone numbers on the SMS unsubscribe (수신 거부) list (POST /sms/v2/services/{serviceId}/unsubscribes; body is a JSON array, ≤1,000 numbers).
| Name | Required | Description | Default |
|---|---|---|---|
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| clientTelNos | Yes | Numbers to block (digits only, ≤1,000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=false, and the description adds the HTTP method, endpoint, and the ≤1,000 number batch limit. It does not disclose idempotency, duplicate handling, or reversibility, but given the annotation coverage and the simple add-to-list nature, the added context is adequate though not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence immediately states the action, resource, endpoint, and key limit. The inclusion of the Korean term adds clarity without bloat, and there is no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with 100% schema coverage and no output schema, the description plus parameter docs cover purpose, constraints, limits, and error hints. The only notable gap is the lack of guidance on choosing between register/list/delete siblings, but that is a usage-guideline gap rather than a completion gap for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: serviceId is thoroughly documented with NRN format, defaults, discovery method, and error interpretation, while clientTelNos has pattern, min/max, and a short description. The description's mention of '≤1,000 numbers' reinforces the schema, so it adds little beyond what structured fields already say.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Register') and resource ('phone numbers on the SMS unsubscribe list'), clearly distinguishing it from sibling operations like ncloud_sens_list_sms_unsubscribes and ncloud_sens_delete_sms_unsubscribes. It also adds the exact HTTP endpoint and body format, making the operation unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description and parameter docs provide clear context: it registers numbers onto a blocklist via a specific endpoint, and the serviceId schema explains how to find the service ID and what a 'Forbidden' response means. However, it does not explicitly state when to prefer this over listing or deleting unsubscribes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_send_alimtalkA
Send Alim Talk (KakaoTalk notification) messages through SENS (POST /alimtalk/v2/services/{serviceId}/messages → 202). Every field must match the approved template (content, buttons, item list). Optional SMS failover per message. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns the request preview without sending | |
| messages | Yes | Recipients (1-100) | |
| serviceId | No | ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| reserveTime | No | Scheduled send time 'YYYY-MM-DD HH:mm' (no seconds; must be at least 10 minutes from now) | |
| plusFriendId | Yes | KakaoTalk channel ID (e.g. @channelname) | |
| templateCode | Yes | Approved template code | |
| reserveTimeZone | No | tz database name for reserveTime (default Asia/Seoul) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The descriptions are not provide any annotations, so it carries the full burden. It states clearly that this is a send operation (sends AlimTalk messages), a mutating action, and it mentions key constraints like this template matching and optional SMS failover. However, it doesn't discuss side effects (e.g., messages cannot be recalled), permission requirements, or error handling beyond the 202 status code; it gives a basic awareness but not extensive context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each with a distinctive purpose: the first states the action and endpoint, the second highlights the critical template constraint, and the third gives a safe-premature tip. There is no filler or redundancy, is effectively front-loaded, and every sentence adds information. This is confusing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (highly detailed schema, many choices, no output schema), the description is mostly complete. It mentions the most critical user-facing constraints (template match, failover, dryRun preview) and the API format. Although it does not a detailed prerequisite step-by-step notes the schema covers service ID resolution and other nuances. The description is sufficient for a coherent pass when paired with the schema, which has already filled with a source of the rest of the minimal.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% description coverage for all parameters, so the baseline is 3. The description adds marginal semantics by pointing out the template-matching rule for content, buttons, and item list, and indicates that failover is optional per message. These are valuable but are not enough to significantly improve the semantics given how detailed the schema already is.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Send'), the resource ('Alim Talk messages through SENS'), and the exact HTTP endpoint with expected 202 response. It also immediately distinguishes this from related send tools like SMS or brand message siblings, leaving no ambiguity about what this specifically delivers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives practical guidance: template-matching is mandatory and dryRun can be used for previewing, which suggests a safe way to test. However, it does not explicitly mention when to use this over alternatives or when not to use it, nor does it reference sibling tools (e.g., ncloud_sens_send_sms) for this scenario. The guidance is contextually useful but not enough to avoid ambiguity for an agent unfamiliar with the domain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_send_brandmessageA
Send KakaoTalk Brand Messages through SENS (POST /brandmessage/v2/services/{serviceId}/messages → 202). Free-form: set messageType and type-specific fields per message; template-based: set templateCode (+ messageType of the template) and messages[].templateParameters. Not deliverable 20:50-08:00 (code 3022). targeting I (default) = ad-consented channel friends, M = all ad-consented, N = ad-consented non-friends (M/N need an 080 number). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns the request preview without sending | |
| isAdult | No | Adult-only content (default false) | |
| messages | Yes | Recipients with type-specific payload (1-100) | |
| serviceId | No | Biz Message service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_BRANDMESSAGE_SERVICE_ID (or NCLOUD_SENS_ALIMTALK_SERVICE_ID) / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| targeting | No | Audience: M | N | I (default I) | |
| messageType | Yes | Message layout type | |
| reserveTime | No | Scheduled send time 'YYYY-MM-DD HH:mm' (no seconds; must be at least 10 minutes from now) | |
| plusFriendId | Yes | KakaoTalk channel ID (e.g. @channelname) | |
| templateCode | No | Template code for template-based (기본형) sending | |
| reserveTimeZone | No | tz database name for reserveTime (default Asia/Seoul) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses the delivery time restriction (20:50-08:00, code 3022), the meaning of targeting values, and the dryRun preview behavior. It doesn't mention authentication or rate limits, but the critical operational constraints are covered. No contradiction with annotations (which are empty).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a dense, well-structured paragraph. It front-loads the main purpose, then covers the two modes, delivery restrictions, targeting, and dryRun in a logical flow. No redundant sentences; every sentence contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (10 parameters, nested message objects), the description covers the key decision points: free-form vs template, targeting options, delivery time limits, and preview. It relies on the schema for parameter-level details, which is appropriate. It could mention the 202 response meaning, but the overall guidance is sufficient for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the two sending modes (free-form vs template-based) and the semantic distinction between targeting values, which goes beyond the schema's simple enum. It also mentions dryRun's purpose. This is meaningful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (send KakaoTalk Brand Messages), the specific API endpoint, and the two distinct modes (free-form and template-based). It is unambiguous and distinguishes this tool from the many other SENS tools (send_sms, send_alimtalk) by name and explicit endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear guidance on when to use free-form vs template-based sending, explains the targeting options (I, M, N) and their prerequisites, and mentions dryRun for preview. It doesn't explicitly contrast with sibling SENS send tools, but the tool name and context make the distinction obvious, and the in-tool choices are well covered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_send_mailA
Send email through SENS Mail (POST /mail/v2/services/{serviceId}/requests — the unified API that replaced Cloud Outbound Mailer on 2026-09-17). Either templateNo, or all of senderAddress/title/body, is required; either recipients or recipientGroupFilter is required. Returns HTTP 202 with requestId (track with ncloud_sens_get_mail_request). Use dryRun=true to preview the request body without sending.
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | Body (≤500 KB UTF-8, HTML allowed, supports ${key} substitution). Required unless templateNo is given | |
| title | No | Subject (≤500 bytes UTF-8, supports ${key} substitution). Required unless templateNo is given | |
| dryRun | No | If true, returns the request preview without sending | |
| serviceId | No | Mail service ID in NRN form (e.g. ncp:mail:kr:1********2:main). Defaults to NCLOUD_SENS_MAIL_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (mailService.serviceId). A 'Forbidden' reply means that project's Mail channel is not enabled (useMail=false) — pick a project with useMail=true. | |
| individual | No | true (default) = one mail per recipient; false = grouped mail (enables CC/BCC, disables advertising) | |
| parameters | No | Shared ${key} substitution values | |
| recipients | No | Recipients (≤100,000; at least one TO). Required unless recipientGroupFilter is given | |
| senderName | No | Sender display name (≤69 bytes UTF-8) | |
| templateNo | No | Template number — when set, sender/title/body come from the template | |
| advertising | No | true = advertising mail (adds the (광고) notice and unsubscribe text; not allowed with individual=false) | |
| attachFileIds | No | Attachment file IDs (≤10 MB each, ≤20 MB total) | |
| senderAddress | No | Sender address (≤254 bytes). Required unless templateNo is given | |
| confirmAndSend | No | true = send only after console approval (default false) | |
| unsubscribeMessage | No | Custom unsubscribe text (when useBasicUnsubscribeMessage=false) | |
| reservationDateTime | No | Scheduled send time, ISO 8601 with offset (e.g. 2026-10-01T09:00:00+09:00), at most 30 days ahead | |
| recipientGroupFilter | No | Send to address groups instead of explicit recipients (individual=true only) | |
| useBasicUnsubscribeMessage | No | Use the default unsubscribe text for advertising mail (default true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden, and it delivers: HTTP 202 with requestId (async acceptance), migration context (unified API that replaced Cloud Outbound Mailer on 2026-09-17), and the dryRun=true preview-without-sending escape hatch. It omits auth requirements, rate limits, and cost implications of dispatching mail, but the core operational behavior of a mail-send tool is well disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the verb-resource pair, followed by endpoint, constraints, response contract, and the dry-run hint. Every sentence earns its place; there is zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 17-parameter tool with nested objects and no output schema, the description covers the critical decision paths, the response contract (202 + requestId), and the safe-preview path. Remaining details live in a fully described schema, so nothing needed to invoke the tool correctly is missing — though auth and quota behavior would round it out.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so per-parameter meaning is fully handled by the schema — the baseline of 3 applies. The description adds value beyond the schema by encoding the conditional requirements (templateNo XOR direct content; recipients XOR recipientGroupFilter) that the schema cannot express, since it declares zero required fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Send email through SENS Mail') and pins it to the exact endpoint (POST /mail/v2/services/{serviceId}/requests). The explicit SENS Mail channel plus the reference to the tracking sibling ncloud_sens_get_mail_request clearly separates it from send_sms, send_alimtalk, and send_brandmessage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides concrete operational guidance: the conditional parameter groupings (templateNo OR senderAddress/title/body; recipients OR recipientGroupFilter) and the dryRun preview switch — exactly the decision knowledge an agent needs. It names the follow-up tracking tool but does not explicitly state when to prefer this over sibling SENS channels, though the channel distinction is largely self-evident from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_send_smsA
Send SMS/LMS/MMS through SENS (POST /sms/v2/services/{serviceId}/messages → 202). Byte limits: SMS content 90, LMS/MMS content 2000, subject 40 (EUC-KR; unsupported emoji fail; oversize is truncated). MMS needs files[] with fileId from ncloud_sens_upload_sms_attachment — an MMS without files is sent as LMS. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes | Sender number registered in the console (digits only) | |
| type | Yes | SMS (short) | LMS (long) | MMS (image attachment) | |
| files | No | MMS attachments (MMS only) | |
| dryRun | No | If true, returns the request preview without sending | |
| content | Yes | Default content (SMS ≤90 bytes, LMS/MMS ≤2000 bytes) | |
| subject | No | Default subject (LMS/MMS only, ≤40 bytes) | |
| messages | Yes | Recipients (1-100) | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. | |
| contentType | No | COMM (default) | AD (advertising) | |
| countryCode | No | Country code (default 82) | |
| reserveTime | No | Scheduled send time 'YYYY-MM-DD HH:mm' (no seconds; must be at least 10 minutes from now) | |
| reserveTimeZone | No | tz database name for reserveTime (default Asia/Seoul) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full disclosure burden and does so well. It discloses encoding (EUC-KR), failure behavior (unsupported emoji fail, oversize truncated), MMS downgrade behavior, and the dryRun preview mode, all beyond the operation itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with no filler. The purpose, endpoint, constraints, encoding rules, attachment requirement, fallback behavior, and preview capability are all packed efficiently, with the core action placed first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex 12-parameter tool with no annotations and no output schema, the combination of a rich description and full schema coverage leaves no critical gap for invocation. The remaining details like serviceId resolution, reserveTime constraints, and contentType defaults already live in the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3 because the input schema already documents every parameter. The description adds value beyond the schema by linking files[] to ncloud_sens_upload_sms_attachment and clarifying the LMS fallback and dryRun semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource: 'Send SMS/LMS/MMS through SENS' plus the exact endpoint and expected 202 response. The message types distinguish it from other SENS send tools such as ncloud_sens_send_alimtalk and ncloud_sens_send_brandmessage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear operational context: MMS requires files from ncloud_sens_upload_sms_attachment, an MMS without files is sent as LMS, and dryRun=true gives a preview. It lacks an explicit exclusion statement naming the alternative SENS send tools, so it stops short of a full when-to-use vs alternatives directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_update_projectAIdempotent
Update a SENS project's description or enabled channels (PUT /common/v2/projects/{projectId}). At least one field must be given.
| Name | Required | Description | Default |
|---|---|---|---|
| useSms | No | Enable/disable the SMS service | |
| projectId | Yes | Project ID | |
| projectDesc | No | Description (0-128 chars) | |
| useKkoBizMsg | No | Enable/disable the Biz Message service |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds the HTTP method and the 'at least one field' validation rule, but does not disclose other behavioral aspects such as partial-update semantics or permissions. It adds some value beyond annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The main purpose is front-loaded, and the essential constraint is stated in the second sentence. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 4-parameter update with full schema descriptions and safety annotations, the description covers the purpose, the constraint, and the relevant fields. It does not describe the response, but no output schema exists and return values are not necessary for invocation. A note mapping 'enabled channels' to useSms/useKkoBizMsg would make it slightly more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents each parameter. The description adds one meaningful piece of semantics not in the schema: that at least one mutable field (besides projectId) must be provided, which is critical for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Update'), a specific resource ('SENS project'), and the exact mutable fields ('description or enabled channels'), plus the HTTP method. It clearly distinguishes this from siblings like create_project, delete_project, list_projects, and get_project.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for modifying an existing SENS project's settings and adds a validation constraint ('At least one field must be given'), but it does not explicitly state when to use this tool versus alternatives or mention prerequisites like the project needing to exist. Usage context is clear but implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sens_upload_sms_attachmentA
Upload a JPG/JPEG image for MMS (POST /sms/v2/services/{serviceId}/files; JSON with Base64 body, not multipart). ≤300 KB, ≤1500x1440, kept 6 days. Returns fileId for ncloud_sens_send_sms files[]. A file with the same name and size is reused.
| Name | Required | Description | Default |
|---|---|---|---|
| fileBody | Yes | Base64-encoded image (a 'data:image/...;base64,' prefix is stripped automatically) | |
| fileName | Yes | File name ending in .jpg/.jpeg (≤40 chars) | |
| serviceId | No | SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (only destructiveHint=false), the description discloses several behavioral traits: constraints (≤300 KB, ≤1500x1440, 6-day retention), JSON-with-Base64 not multipart, reuse of same name/size files, and the Forbidden error meaning the service lacks the channel. The only minor gap is not stating the file ID persistence/cleanup explicitly, but 6-day retention is stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact 4-sentence block with all key info: endpoint, format, size limits, retention, return value, and reuse behavior. Every sentence carries operational meaning. Slight structural improvement would be separating the 'what it does' from constraints, but it's efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description correctly identifies the returned fileId and how it's used. It also provides capacity/size constraints and error semantics. Missing details are minor, such as whether the fileId is returned in the body or as a header, but the description covers the key operational needs for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented in the schema. The description adds meaning by stating the fileBody is a Base64-encoded image with optional prefix stripping (already in schema) and that fileId is the return value. It also enriches serviceId semantics by pointing to ncloud_sens_list_projects and the channel-enabled requirement, which goes beyond the schema's NRN-form explanation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool uploads a JPG/JPEG image for MMS, names the exact endpoint, and specifies the return value (fileId for ncloud_sens_send_sms files[]). The verb 'upload' plus the resource and purpose distinguish it from the very large sibling list, including other SENS tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly ties the output to ncloud_sens_send_sms files[], which implies the main usage flow: upload attachment then reference fileId in send SMS. It also explains the reuse behavior for same name/size. However, it doesn't explicitly contrast with alternative attachment-upload or image tools in the SENS family (e.g., ncloud_sens_list_brandmessage_images), so the when/alternative guidance is present but not fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_batch_create_databasesA
Create 1-10 databases atomically (POST /mysql/v1/clusters/{clusterName}/databases/batch-create → 202 Operation).
| Name | Required | Description | Default |
|---|---|---|---|
| names | Yes | Database names (1-10) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses atomicity and the asynchronous nature via '202 Operation', which goes beyond the sparse annotations (destructiveHint: false). However, it does not clarify the meaning of 'atomically' (e.g., rollback on failure) or anything about operation tracking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler. The purpose is front-loaded, and the endpoint/response suffix is valuable rather than redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 2-parameter tool with no output schema, the description covers core behavior and response type. It lacks an explicit note on operation polling or prerequisites, but these are minor given the clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are described in the schema. The tool description adds no parameter-level detail beyond restating the count range already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Create' with the resource 'databases', scopes it to '1-10', and adds the defining trait 'atomically'. The endpoint and response code further anchor the operation, distinguishing it from single create (ncloud_serverless_create_database) and batch delete (ncloud_serverless_batch_delete_databases).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (batch creation of 1-10 databases) but does not explicitly state when to prefer it over ncloud_serverless_create_database or mention exclusions. Since the range includes 1, the boundary between single and batch creation is left ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_batch_create_usersA
Create 1-10 DB users atomically (POST /mysql/v1/clusters/{clusterName}/users/batch-create → 202 Operation). Validation failures come back as 400 partialFailure with per-index failures; an existing name fails the whole batch (409). Use dryRun=true to preview (passwords masked).
| Name | Required | Description | Default |
|---|---|---|---|
| users | Yes | Users to create (1-10) | |
| dryRun | No | ||
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavior beyond the single destructiveHint annotation: atomicity, 202 async operation, 400 partialFailure with per-index errors, 409 whole-batch failure on existing names, and masked passwords in dry-run. This is exactly the kind of failure-mode and side-effect context an agent needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences deliver the essential facts in order: what it does, how failures behave, and how to preview safely. No filler or repetition of schema details that are already documented.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with no output schema, the description covers the essential return status (202), the main error modes, and the safety preview. It does not mention how to follow up on the async operation, but the endpoint reference and 'Operation' wording are likely sufficient for an agent to infer next steps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers clusterName and users well, and the description adds meaning to dryRun ('preview, passwords masked') that the schema lacks. It also clarifies the batch size range in prose. A minor gap is that dryRun's exact relationship to validation failures is implied rather than explicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb-resource pair ('Create 1-10 DB users') and names the exact endpoint, which clearly distinguishes it from single-user or delete-user sibling tools. The batch scope and atomicity are front-loaded with no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear invocation context: batch creation of 1-10 users, atomic behavior, validation errors, and a dry-run preview mode. It does not explicitly name alternatives or say 'use single create_user for one user,' but the batch purpose and count range make the intended use clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_batch_delete_databasesADestructiveIdempotent
⚠️ Destructive: Drop 1-10 databases and all their data atomically (POST /mysql/v1/clusters/{clusterName}/databases/batch-delete → 202 Operation). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| names | Yes | Database names to drop (1-10) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal destructiveHint=true and idempotentHint=true, and the description adds valuable context: all data is dropped, the operation is atomic, the request is accepted asynchronously (202 Operation), and execution requires confirm=true. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence front-loads the warning, then states scope, atomicity, the endpoint, the async response, and the confirmation requirement with no wasted words. Every element contributes to correct and safe invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter destructive tool with no output schema, the description covers the essential operational facts: what is dropped, how many, the atomic guarantee, the async 202 response, and the confirmation gate. It could mention what to poll for completion or explicitly route single deletes elsewhere, but the provided context is sufficient for safe use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds the confirm=true execution gate in prose, but names, clusterName, and confirm are already well documented in the input schema. The description does not significantly extend parameter meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Drop'), a specific resource ('1-10 databases'), and a critical consequence ('and all their data'), with an explicit HTTP endpoint. This distinguishes it from single-database delete siblings via the batch scope and count range.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly frames when this tool is appropriate: dropping 1-10 databases in one operation atomically. It does not name sibling alternatives or explicitly state when not to use it, but the scope and destructive warning make the intended usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_batch_delete_logsADestructiveIdempotent
⚠️ Destructive: Delete 1-10 log files of an instance atomically (POST …/logs/batch-delete → 202 Operation). BIN logs cannot be deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| logs | Yes | Log files to delete (1-10) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| instanceName | Yes | Instance name ({clusterName}-{suffix}, from ncloud_serverless_list_instances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, it opens with a destructive warning, states atomic deletion, notes that BIN logs are excluded, and requires confirm=true. It adds meaningful behavioral context not inferable from the annotations alone, and nothing contradicts the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One efficient sentence front-loads the destructive warning and packs endpoint, scope, atomicity, a key exclusion, and the execution gate. There is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description supplies the essential 202 Operation response and the destructive/confirmation context, while the input schema covers cluster, instance, and log details. It could add how to track the resulting operation, but for a destructive tool with rich annotations this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents ranges, regexes, and confirm, so the baseline is 3. The description adds important semantics by flagging that the BIN logType, though in the enum, cannot be deleted, and reinforces the 1-10 batch boundary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Delete'), a resource ('log files of an instance'), a count range (1-10), and an exact API endpoint with its 202 response. It clearly differentiates the tool from sibling operations such as ncloud_serverless_list_logs and ncloud_serverless_export_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear context for the operation and key restrictions ('BIN logs cannot be deleted' and confirm=true), but it never explicitly states when to choose this tool over alternatives. Usage context is implied by purpose rather than stated as routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_batch_delete_usersADestructiveIdempotent
⚠️ Destructive: Delete 1-10 DB users atomically (POST /mysql/v1/clusters/{clusterName}/users/batch-delete → 202 Operation). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| names | Yes | User names to delete (1-10) | |
| confirm | No | Must be true to actually execute the destructive operation | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint and idempotentHint. The description adds critical behavior: it requires confirm=true to actually execute, and notes the operation is atomic and asynchronous (202 Operation). This goes beyond the annotations by explaining the confirmation gate and atomicity, which are not conveyed by hints alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tight sentence with a warning emoji front-loaded. It packs the destructive nature, the operation scope, the endpoint, and the confirm requirement into minimal words. Slightly more than necessary (endpoint and response code) but not bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive batch delete, the description covers the key aspects: it is destructive, requires confirmation, is atomic, and is asynchronous. It does not explain what happens if confirm is false (e.g., no-op) or any rollback, but given the annotations and schema, these are minor gaps. No output schema is present, so the 202 reference gives a hint of the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with descriptions, including the confirm requirement and the names array constraints. The description restates 'Set confirm=true to execute' but adds no new parameter semantics beyond what the schema already provides. Baseline of 3 applies given high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Delete'), a specific resource ('DB users'), and a clear scope (1-10, atomically). It distinguishes from the sibling ncloud_serverless_delete_user by explicitly noting the batch nature. The endpoint and response code add precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for batch deletion (the word 'batch' is in the name and it states 1-10), but it does not explicitly say when to use this over the singular delete_user or mention any alternative. No 'use when' or 'instead of' guidance is given, so the agent must infer from the name and scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_create_clusterA
Create a Cloud DB Serverless (MySQL) cluster (POST /mysql/v1/clusters → 202 Operation). Without autoScale the cluster is pinned to unit.max. engineVersion from ncloud_serverless_list_engine_versions. Use dryRun=true to preview (password is masked).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| unit | Yes | ||
| dryRun | No | If true, returns a preview without creating | |
| network | Yes | ||
| autoScale | No | ||
| multiZone | Yes | true = place replicas in the backup zone | |
| storageType | No | Storage type (only CB2) | CB2 |
| backupConfig | Yes | ||
| engineVersion | Yes | Engine version (e.g. 8.4.5) | |
| initialDatabase | Yes | ||
| highAvailability | Yes | Automatic failover |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, so the description carries most of the behavioral disclosure. It reveals that the call is asynchronous (202 Operation), that without autoScale the cluster is pinned to unit.max, and that dryRun masks the password. These are non-obvious traits beyond what the schema conveys.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each adding distinct value: core purpose with endpoint, a behavioral caveat about autoScale, and a pointer to the version source plus dryRun option. No filler or redundant restatement of the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 11 parameters and 8 required nested objects, the description offers the most important cross-cutting context (async behavior, engineVersion sourcing, dryRun, pinning). The schema covers the mandatory fields thoroughly, and with no output schema, the 202 reference is an acceptable hint about the asynchronous result. A note on how to poll the operation would make it complete, but this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 55%, so the description has room to compensate but only partially does. It clarifies that unit.max acts as a pin when autoScale is off and that engineVersion should come from a specific sibling tool. Most parameter semantics remain in the schema, which already documents unit, autoScale, backupConfig, and initialDatabase in detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Create') and resource ('Cloud DB Serverless (MySQL) cluster'), and adds the API endpoint and operation code. It distinguishes this from the many sibling cluster-creation tools (SES, CDSS, Hadoop) by naming the specific service and resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context on when to use the tool: to create a Serverless MySQL cluster. It also provides actionable usage guidance by pointing to ncloud_serverless_list_engine_versions for engineVersion and recommending dryRun=true for preview. It doesn't explicitly name alternative tools or exclusions, but the resource type and cross-references are sufficient for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_create_databaseB
Create a database (POST /mysql/v1/clusters/{clusterName}/databases → 202 Operation). Reserved schema names are rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Database name | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations only provide destructiveHint=false, which the description does not contradict. The description adds useful behavioral context: the API returns a 202 Operation (asynchronous acceptance) and reserved schema names are rejected. However, it does not disclose what a 202 means for follow-up (e.g., polling an operation status) or any side effects beyond creation. With the annotation covering destructiveness, the description adds some but not rich behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences clearly stating the action, endpoint, response code, and a key constraint. It is front-loaded with the primary action and endpoint. The only minor inefficiency is that the endpoint details could be considered redundant with the tool's purpose, but they add precision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter create operation with a full schema and a non-destructive annotation, the description covers the essentials. However, it lacks guidance on post-creation behavior (e.g., polling the 202 operation), what 'reserved schema names' specifically are, or any prerequisites like cluster existence. These gaps prevent it from being fully complete, but the simplicity of the tool and schema limits the severity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters (name and clusterName) with patterns and descriptions, achieving 100% schema coverage. The description adds minimal parameter-specific information beyond schema, except the implicit constraint that 'name' may be subject to reserved schema name rejection. Per the calibration baseline, 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a database') and the resource (MySQL cluster database), along with the specific HTTP endpoint. It is distinct from siblings like ncloud_serverless_list_databases and ncloud_serverless_delete_database based on the verb and resource. However, it lacks explicit differentiation from ncloud_serverless_batch_create_databases, leaving slight ambiguity about when to use single vs. batch creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by naming the API endpoint and noting that reserved schema names are rejected, but it does not explicitly state when to use this tool versus alternatives like ncloud_serverless_batch_create_databases or ncloud_datacatalog_create_database. No exclusions or alternative routing are provided, so an agent must infer the appropriate context from the name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_create_imported_backupA
Import a backup file from Object Storage as an imported backup (POST /mysql/v1/imported-backups → 202 Operation; up to 16 TiB). Then restore it with ncloud_serverless_restore_cluster (source.type=IMPORTED_BACKUP). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Imported backup name (3-30 chars, unique) | |
| dryRun | No | If true, returns a preview without importing | |
| zoneCode | No | Zone to store it in (default: first available zone, e.g. KR-2) | |
| bucketName | Yes | Source Object Storage bucket | |
| objectPath | Yes | Backup file path inside the bucket (e.g. exports/backup.tar.gz) | |
| engineVersion | Yes | Engine version the backup was created with |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With only destructiveHint=false in annotations, the description carries most of the behavioral burden. It discloses that the call is asynchronous (202 Operation), supports up to 16 TiB, and offers a dryRun preview mode—useful behavioral context beyond what the annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the first front-loads the core action, endpoint, async behavior, and size limit; the second adds the restore workflow and dryRun preview. Every sentence earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an async create operation with no output schema, the description covers what it does, the endpoint, the size cap, the downstream restore step, and the preview mode. It doesn't describe response shape or polling, but the 202 status and sibling operation tools mitigate that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline of 3 applies. The description reiterates dryRun=true for previewing, but this largely duplicates the schema's own parameter description and adds no significant new semantics for bucketName, objectPath, or engineVersion.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (import a backup file from Object Storage as an imported backup), names the resource, and includes the API endpoint. The follow-up reference to ncloud_serverless_restore_cluster clearly differentiates this import operation from related serverless backup tools such as export, list, get, and delete imported backups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides concrete workflow guidance: after importing, restore using ncloud_serverless_restore_cluster with source.type=IMPORTED_BACKUP, and use dryRun=true to preview. This tells the agent when this tool fits into the backup/restore flow, though it doesn't explicitly enumerate when not to use it versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_create_userA
Create a DB user (POST /mysql/v1/clusters/{clusterName}/users → 202 Operation). 409 if the name exists.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| password | Yes | 8-20 chars with a letter, a digit and a special character; ` & + \ " ' / and spaces are not allowed. Never returned by the API | |
| permission | Yes | READ (select) | CRUD (select/insert/update/delete) | DDL (CRUD + schema changes) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
在仅有 destructiveHint=false 的注解下,描述额外披露了 POST 异步语义(202 Operation)以及重名冲突会返回 409,这些对创建类工具很有价值。但没有提及权限要求、认证方式或返回的 Operation 如何进一步查询,仍有一些行为空白。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
一句话包含操作、端点和关键状态码,没有冗余信息,信息密度高且便于 agent 快速解析。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
对于无输出 schema、注解较少的创建工具,描述给出了异步接受(202)和冲突处理(409),配合 schema 参数说明基本支持一次正确调用。缺少对 Operation 轮询或集群不存在错误的提示,但整体没有重大缺失。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
参数语义主要依赖 schema,而 schema 已覆盖 password、permission、clusterName 三个参数;描述本身没有补充参数含义,只在端点中重复了 {clusterName}。name 参数缺乏说明,描述也没有为此弥补,因此价值有限。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述以明确的动词“Create”和资源“DB user”开头,并给出具体端点 POST /mysql/v1/clusters/{clusterName}/users,能够与同组的 list/get/update/delete_user 清晰区分。工具名和描述一致,agent 可以准确判断这是单用户创建操作。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
通过“Create a DB user”可以推断应在新建数据库用户时调用,409 提示也隐含了“重名不可创建”的边界,但描述没有显式说明与 ncloud_serverless_batch_create_users、update_user、delete_user 等替代工具的选择关系,也没有给出集群必须存在等前置条件。属于隐含用法而非明确的路由指导。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_delete_clusterADestructiveIdempotent
⚠️ Destructive: Delete a Cloud DB Serverless cluster (DELETE /mysql/v1/clusters/{clusterName} → 202 Operation). With cascading=false (default) the call fails with 409 while users/databases remain; cascading=true deletes them too. 409 ResourceInUse while a restore is running. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| cascading | No | true = also delete the cluster's users and databases (default false) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, the description discloses the destructive consequence, the confirmation guard, the cascading deletion semantics, the default behavior, and the specific 409 failure scenarios. This is far richer behavioral context than the annotation alone provides.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, front-loads the destructive warning, and packs essential operational details into three sentences with no filler. Every sentence adds meaningful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no output schema, the description covers the confirmation requirement, cascading behavior, error conditions, and async operation result (202). An agent has enough context to call the tool correctly and anticipate consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although the schema already documents all three parameters with 100% coverage, the description adds crucial semantics not in the schema: cascading=false causes 409 while users/databases remain, cascading=true deletes them, and confirm must be true to execute. These details materially change how an agent should set the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete a Cloud DB Serverless cluster'), identifies the exact API endpoint, and names the resource type. It is unambiguous and distinct from sibling deletion tools by specifying the Cloud DB Serverless cluster context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains key operational usage details: cascading behavior, the default value, the required confirm=true to execute, and the 409 error when users/databases remain or when a restore is running. It does not explicitly name alternatives or state 'use this instead of X,' but the resource and behavior are specific enough to guide correct invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_delete_databaseADestructiveIdempotent
⚠️ Destructive: Drop a database and ALL its data (DELETE /mysql/v1/clusters/{clusterName}/databases/{databaseName} → 202 Operation). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| databaseName | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint annotation, the description adds crucial behavior: it warns that ALL data is dropped, reveals the exact DELETE endpoint, notes the 202 Operation async response, and explains the confirm=true safety gate. This substantially exceeds what annotations alone provide and does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence that front-loads the destructive warning, then gives the endpoint, the async response, and the confirmation requirement. There is no filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive single-delete tool, the description covers the essential operational facts: what is deleted, the required confirm flag, the HTTP endpoint, and the 202 Operation response. It does not mention how to poll the resulting operation, but that is a minor omission given the clarity of the core call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes confirm and clusterName, covering 67% of parameters. The description adds that clusterName and databaseName identify the resource in the URL path and that confirm must be true to execute, but it does not add meaning for the undocumented databaseName parameter beyond what the pattern suggests.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Drop a database and ALL its data', and includes the exact HTTP DELETE path. It clearly distinguishes this from sibling tools like ncloud_serverless_delete_cluster or ncloud_serverless_delete_user by naming the database resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly establishes that this tool is for deleting a single database and that confirm=true is required to execute. It provides clear context for when to call it, though it does not explicitly mention alternatives like ncloud_serverless_batch_delete_databases or state exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_delete_imported_backupADestructiveIdempotent
⚠️ Destructive: Delete an imported backup (DELETE /mysql/v1/imported-backups/{backupName} → 202 Operation). 409 while a restore is using it. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| backupName | Yes | Imported backup name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds value by explicitly warning 'Destructive', requiring confirm=true, noting the 202 async operation, and disclosing the 409 conflict condition. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the most important warning ('Destructive'), followed by the action, endpoint, and key behavioral notes. Every sentence earns its place; no filler or repetition of schema details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter destructive tool with no output schema, the description covers the essential context: what it does, the endpoint, the async nature, the conflict condition, and the confirmation requirement. It doesn't explain what the 202 Operation response contains, but that's minor given the absence of an output schema and the simplicity of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters. The description adds the critical semantic that confirm must be true to actually execute the destructive operation, which is not fully captured by the schema's default false. This is meaningful added value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Delete'), a specific resource ('imported backup'), and the exact API endpoint (DELETE /mysql/v1/imported-backups/{backupName}). It also notes the async 202 Operation response, which distinguishes it from other serverless backup tools like ncloud_serverless_list_imported_backups or ncloud_serverless_create_imported_backup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates this is a destructive operation and that confirm=true is required to execute. It also mentions a 409 conflict while a restore is using the backup, which is a useful when-not-to-use signal. However, it doesn't explicitly name alternative tools or state when to prefer them, so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_delete_userADestructiveIdempotent
⚠️ Destructive: Delete a DB user (DELETE /mysql/v1/clusters/{clusterName}/users/{userName} → 202 Operation). The reserved admin user cannot be deleted (400). Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| userName | Yes | ||
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes beyond annotations by specifying the HTTP method (DELETE), the async 202 Operation response, and the admin-user 400 restriction. The warning and confirm requirement reinforce destructiveHint. No contradiction with idempotentHint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences, front-loaded with the destructive warning, then endpoint, constraint, and execution requirement. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive delete with 3 params and no output schema, it covers the endpoint, async operation, required confirmation, and a key error condition. Could add a note on polling the returned operation, but the sibling get_operation_status exists and the 202 mention is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already describes clusterName and confirm with descriptions; description adds the admin-user restriction on userName and reinforces confirm, but adds no per-parameter detail beyond that. Baseline 3 with a small increment from the admin constraint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Delete a DB user' with the exact HTTP DELETE endpoint and path parameters. Clearly distinguishes from sibling serverless user tools (list/get/create/update/batch_delete) by naming the resource and API scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear context: this is a destructive single-user deletion requiring confirm=true, and the reserved admin user cannot be deleted. However, it does not explicitly mention when to prefer this over the sibling batch_delete_users, leaving exclusion guidance to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_export_backupBRead-only
Export a cluster backup to Object Storage (POST …/backups/{backupName}/export → 202 Operation). Requires an Object Storage subscription. 409 if the same backup is already being exported or is IN_USE.
| Name | Required | Description | Default |
|---|---|---|---|
| backupName | Yes | Backup name (from ncloud_serverless_list_backups) | |
| bucketName | Yes | Destination Object Storage bucket | |
| uploadPath | No | Path inside the bucket (default root, e.g. backups/2026) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states that the tool exports a backup to Object Storage, which implies a side effect (creating an export), yet the annotations declare readOnlyHint: true. This is a direct contradiction: the tool is not read-only if it performs an export. The description fails to reconcile or correct the annotation, making the behavioral profile misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and efficiently packed: it states the core action, the HTTP endpoint and response code, a required subscription, and a potential error condition—all in two sentences. Every element earns its place, and the most crucial information (what it does) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description covers the action, endpoint, response code, subscription requirement, and a specific conflict, it omits what the operation returns (though output schema is absent, it might be expected) and does not address the contradiction with the readOnlyHint annotation. The missing clarification on the annotation's accuracy diminishes completeness, as the description is otherwise fairly thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for all four parameters (100% coverage). The description does not add meaningful parameter-level details beyond what the schema states; it references backupName in the endpoint but does not explain uploadPath beyond the schema's 'Path inside the bucket'. Given the schema's completeness, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation: 'Export a cluster backup to Object Storage' with a specific resource (cluster backup) and destination. It includes the HTTP method, endpoint, and expected response code (202), which disambiguates it from other export tools (e.g., ncloud_export_cache_backup, ncloud_export_mysql_backup). The purpose is specific and unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a necessary precondition ('Requires an Object Storage subscription') and hints at a conflict condition (409 if already being exported or IN_USE), but it does not explicitly state when to prefer this tool over alternatives, nor does it mention any sibling tools for comparison. The prerequisite is useful, but the lack of explicit usage guidance limits the score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_export_logsARead-only
Export 1-10 log files of an instance to Object Storage (POST …/logs/export → 202 Operation). Requires an Object Storage subscription.
| Name | Required | Description | Default |
|---|---|---|---|
| logs | Yes | Log files to export (1-10) | |
| bucketName | Yes | Destination bucket | |
| uploadPath | No | Path inside the bucket (default root, e.g. logs/2026) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| instanceName | Yes | Instance name ({clusterName}-{suffix}, from ncloud_serverless_list_instances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description describes a POST export operation that writes logs to Object Storage and returns a 202 Operation, which implies a side-effecting, non-read-only action. This directly contradicts the annotations declaring readOnlyHint=true. The async status detail is useful, but the contradiction is disqualifying.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one compact sentence that front-loads the action and scope, then adds the endpoint, expected response code, and prerequisite. Every element earns its place and no filler is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description conveys the core action and async nature via '202 Operation', but with no output schema it does not explain what the operation returns or how to track its progress. The annotation contradiction also undermines the overall operational context, leaving the definition incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already describes all parameters including logs, bucketName, uploadPath, clusterName, and instanceName. The description adds little beyond restating the 1-10 count and destination, so it does not meaningfully improve on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Export'), the resource ('log files of an instance'), the destination ('Object Storage'), and even the count range (1-10). It also identifies the endpoint and success response, making the tool's purpose unambiguous and distinct from related log-listing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear usage context: exporting 1-10 instance log files to Object Storage, and a key precondition ('Requires an Object Storage subscription'). It does not explicitly name alternative tools such as ncloud_serverless_list_logs or ncloud_get_log_export_history, so it stops short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_backupARead-only
Get one automatic backup (GET /mysql/v1/clusters/{clusterName}/backups/{backupName}).
| Name | Required | Description | Default |
|---|---|---|---|
| backupName | Yes | Backup name (from ncloud_serverless_list_backups) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description doesn't need to repeat that. However, it adds no additional behavioral context, such as what is returned, error cases, or that it retrieves only automatic (not manual) backups. It's a straightforward get, so the description is adequate but doesn't enrich the annotation profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that includes the REST endpoint for clarity. Every word is purposeful; no filler or redundant phrasing. It is appropriately sized for a simple get operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (two well-documented parameters) and the readOnlyHint annotation, the description is sufficient for an agent to understand the basic operation. It does not describe the return format, but for a simple get without an output schema, this is a minor omission. The tool is complete enough for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (clusterName and backupName) have detailed descriptions including constraints. The tool description adds no extra meaning about parameters, so it meets the baseline for full schema coverage without needing to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get one automatic backup') and the specific resource (backup within a cluster). It distinguishes this from listing backups by specifying 'one', and the REST endpoint provides precise identification. The verb+resource is unambiguous and matches the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like ncloud_serverless_list_backups or ncloud_serverless_get_imported_backup. It does not mention prerequisites (e.g., calling list_backups first) or exclusions. The only hint is the endpoint itself, which is insufficient for an agent to decide between this and other backup-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_clusterARead-only
Get a Cloud DB Serverless cluster (GET /mysql/v1/clusters/{clusterName}): status (CREATING|RUNNING|MODIFYING|PAUSED|DELETING|FAILED), endpoints, unit, replica counts, autoScale, backupConfig, engineVersion.
| Name | Required | Description | Default |
|---|---|---|---|
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description complements this by listing the exact fields returned (status, endpoints, unit, replica counts, etc.) and the possible status values. It does not contradict the annotation and provides concrete behavioral detail beyond the read-only flag.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the verb and resource, then followed by the endpoint and returned fields. No wasted words; every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read-only GET tool with full schema coverage and annotations, the description is complete. It lists the key returned fields, satisfying the need without an output schema, and the tool is simple enough that nothing else is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the parameter 'clusterName' is fully documented in the schema (format, length, constraints). The description adds no additional meaning about the parameter beyond referencing it in the endpoint. Per rubric, baseline is 3 when schema covers the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('Cloud DB Serverless cluster'), and the HTTP endpoint, distinguishing it from the sibling list tool by requiring a specific clusterName. It also enumerates the key returned fields, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving a single cluster by name, as evidenced by the endpoint path. However, it does not explicitly contrast with ncloud_serverless_list_clusters or other alternatives, leaving the when-not-to-use case implicit. This is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_configARead-only
Get the DB parameters a user has changed on a cluster (GET /mysql/v1/clusters/{clusterName}/config) — only overrides, as strings. For every parameter with defaults and current values use ncloud_serverless_list_config_parameters.
| Name | Required | Description | Default |
|---|---|---|---|
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds behavioral detail by specifying the return format (overrides as strings) and the scope (only changed parameters), which goes beyond the annotation. It doesn't mention potential empty results or pagination, but for a simple read with one parameter this is sufficient; it adds value without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The first sentence states the purpose, scope, and endpoint; the second sentence provides the alternative. Information is front-loaded and every word earns its place. This is an exemplary model of conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with a single parameter fully described in the schema, a readOnlyHint annotation, and a description that explains what is returned (overrides as strings) and points to the sibling for full parameter data, nothing an agent needs to call it correctly is missing. The absence of an output schema is compensated by the explicit description of the return content. It is complete in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage for the single required parameter clusterName is 100%, with a detailed description including character length, allowed characters, and immutability. The tool description does not add any additional meaning about the parameter beyond what the schema provides (it only references it in the endpoint URL). Baseline 3 is appropriate because the schema already fully documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets DB parameters changed by a user on a cluster, names the exact endpoint (GET /mysql/v1/clusters/{clusterName}/config), and specifies it returns only overrides as strings. It also distinguishes itself from the sibling tool ncloud_serverless_list_config_parameters by explicitly directing to that tool for parameters with defaults and current values, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says 'only overrides, as strings' and provides a clear alternative: 'For every parameter with defaults and current values use ncloud_serverless_list_config_parameters.' This gives an agent precise selection criteria and tells it exactly when to use this tool versus the sibling, with no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_databaseARead-only
Check that a database exists (GET /mysql/v1/clusters/{clusterName}/databases/{databaseName}; 404 if not).
| Name | Required | Description | Default |
|---|---|---|---|
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| databaseName | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses that the operation returns 404 when the database does not exist, which is valuable error-semantic context. It also reveals the underlying REST endpoint and HTTP method, though it stops short of describing successful response bodies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the operation, followed by the exact REST path in parentheses. Every element earns its place and there is no extraneous prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only existence check, the description covers the operation, the 404 behavior, and the endpoint, and the schema supplies the two required parameters. Since the tool only verifies existence, the lack of a success response body description is a minor gap rather than a critical omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents clusterName with a description but leaves databaseName to its pattern only. The description's endpoint path clarifies the role and order of both parameters, but it adds no further semantic detail about the databaseName format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear, specific operation: verifying whether a database exists within a given cluster. The HTTP path and the explicit 404-on-missing behavior precisely define the resource and expected outcome, distinguishing it from list/create/delete database siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a pre-flight existence check but never names alternatives such as ncloud_serverless_list_databases or create/delete tools. There is no explicit when-to-use or when-not-to-use guidance, so the agent must infer the use case from the tool name and the 404 semantics.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_imported_backupARead-only
Get one imported backup with import progress (GET /mysql/v1/imported-backups/{backupName}): importProgress.steps DOWNLOAD→EXTRACT→VERIFY→CREATE_BACKUP→FINALIZE, error when FAILED.
| Name | Required | Description | Default |
|---|---|---|---|
| backupName | Yes | Imported backup name (the `name` given at creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers that this is a safe read operation. The description adds useful behavioral context beyond that: it enumerates the exact progress step order (DOWNLOAD→EXTRACT→VERIFY→CREATE_BACKUP→FINALIZE) and specifies the error condition when FAILED. This is extra behavioral detail not present in annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that front-loads the core action, then packs the endpoint, progress steps, and error condition without redundancy. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with a readOnlyHint annotation and no output schema, the description covers the key operational details: what it retrieves (backup with progress), the step lifecycle, and failure indication. It does not detail the full response structure, but that is not essential for a simple get operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in the schema already explains backupName as the name given at creation. The tool description itself adds minimal semantic value beyond that, essentially confirming the purpose. Baseline 3 is appropriate since the schema carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a specific resource ('one imported backup'), and adds distinguishing detail: it includes import progress. It also names the endpoint and the exact step sequence, which makes it clear this is for fetching a single backup's status, distinct from listing or creating.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (when you need progress for a specific backup) but does not explicitly contrast it with alternatives like ncloud_serverless_list_imported_backups or ncloud_serverless_create_imported_backup. It lacks explicit 'when not to use' or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_instanceARead-only
Get one instance of a Cloud DB Serverless cluster (GET /mysql/v1/clusters/{clusterName}/instances/{instanceName}).
| Name | Required | Description | Default |
|---|---|---|---|
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| instanceName | Yes | Instance name ({clusterName}-{suffix}, from ncloud_serverless_list_instances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, which covers the safety profile, and the description aligns with that by describing a GET operation. The description adds the HTTP endpoint context but does not go further, e.g., no mention of error cases or what the returned instance object contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that states the action, resource, and HTTP endpoint with zero wasted words. The endpoint adds practical value without bloating the description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read operation, the schema documents both parameters fully and the annotation covers read-only safety. The only minor gap is that the return payload is not described, but with no output schema and low complexity, this is a small omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (clusterName, instanceName) already have descriptive text plus validation patterns. The description adds no parameter-level meaning beyond what the schema provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') plus a precise resource ('one instance of a Cloud DB Serverless cluster') and includes the exact HTTP endpoint. The singular 'one instance' clearly distinguishes this from sibling list tools like ncloud_serverless_list_instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as ncloud_serverless_list_instances or ncloud_serverless_get_cluster. The usage is merely implied by the name and description, with no exclusions or selection conditions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_log_configARead-only
Get log rotation settings per log type (GET /mysql/v1/clusters/{clusterName}/log-config): rotations[BIN|SLOW_QUERY|ERROR|GENERAL] → rotationType DAILY|SIZE, fileCount, megaBytes.
| Name | Required | Description | Default |
|---|---|---|---|
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, and the description aligns by saying 'Get'. It adds useful behavioral context beyond the annotation by specifying the supported log types (BIN|SLOW_QUERY|ERROR|GENERAL) and the rotation fields (rotationType DAILY|SIZE, fileCount, megaBytes), which is valuable since no output schema is present. No contradiction exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the action and follows with the endpoint and response structure. There is no filler or repetition, and the compact notation communicates the return shape efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with one fully documented parameter and no output schema, the description is nearly complete: it documents the endpoint, log types, and response fields. It lacks a brief routing note against ncloud_serverless_get_config or update_log_config, but that is a minor gap given the simple parameter surface.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single clusterName parameter is already well documented. The description only reuses {clusterName} as a path placeholder, adding no new semantic detail beyond the schema, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action and resource: 'Get log rotation settings per log type' with the endpoint and the exact config fields returned. The wording is clear enough to be distinguished from generic get_config, but it does not explicitly name sibling tools like ncloud_serverless_get_config or ncloud_serverless_update_log_config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes it clear this tool reads log rotation settings for a given clusterName, so its context is clear. It stops short of explicitly stating when not to use it or naming an alternative such as ncloud_serverless_get_config, so the when-to-use guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_operationARead-only
Get an asynchronous operation (the 16 documented get*Operation endpoints, routed by resourceType): done, metadata.operationType/resourceType/progress, results (cluster operations only), error, failures (batch). Poll until done=true; success = done and no error.
| Name | Required | Description | Default |
|---|---|---|---|
| clusterName | No | Required for backups/users/databases/config/logs/processes | |
| operationId | Yes | Operation ID (the `id` of the 202 response) | |
| instanceName | No | Required for logs/processes | |
| resourceType | Yes | metadata.resourceType of the operation: clusters | imported-backups (no clusterName) | backups | users | databases | config (clusterName) | logs | processes (clusterName + instanceName) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses the response structure (done, metadata, results for clusters only, error, failures for batch) and gives explicit polling semantics. This helps the agent interpret the response and determine completion without opening an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The core action is front-loaded, followed by the response fields and polling rule in a compact, structured format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is complex (16 endpoints) and has no output schema, but the description covers the essential behaviors: what fields to expect, the resourceType routing, and the polling success condition. Combined with the 100% schema coverage, an agent has enough to call and interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters including when clusterName and instanceName are required. The description adds only marginal context about resourceType routing and result availability, which is helpful but not necessary for parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('Get an asynchronous operation') and explains that it aggregates 16 get*Operation endpoints routed by resourceType. This distinguishes it from sibling tools like ncloud_serverless_list_operations, which lists operations rather than fetching a single one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: poll with an operationId until done=true, and states the success condition. It does not name alternative tools or explicitly state when not to use it, but the context is clear that this is the endpoint for checking a single operation's status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_get_userCRead-only
Get one DB user (GET /mysql/v1/clusters/{clusterName}/users/{userName}).
| Name | Required | Description | Default |
|---|---|---|---|
| userName | Yes | ||
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already discloses that this is a read-only operation. The description adds the HTTP method and path, which is some behavioral context, but it does not disclose any additional behaviors like error conditions, response format, or any limitations. Since annotations cover the safety profile, the description adds minimal value beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no extraneous content. It efficiently states the core function and the REST path. There is no waste, making it appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get operation with two parameters and no output schema, the description is incomplete. It does not explain what the tool returns (e.g., user details) or any potential errors, nor does it mention any prerequisites like cluster existence. Given the tool's simplicity, more could be said about expected output or usage context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a description for clusterName, but userName has only a pattern. The description does not add any meaning to either parameter, only repeating them in the endpoint path. With 50% schema description coverage, the description should compensate for the missing userName explanation but does not, leaving userName's purpose implicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get one DB user' with the specific REST endpoint. It differentiates from sibling tools like ncloud_serverless_list_users by emphasizing 'one' versus a list. However, it does not explicitly name the alternative tool, so it's clear but not fully explicit about the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like ncloud_serverless_create_user or ncloud_serverless_list_users. There is no mention of prerequisites, such as requiring an existing cluster, or when to prefer this over other get operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_kill_processesADestructiveIdempotent
⚠️ Destructive: Kill DB sessions on an instance (POST …/processes/batch-kill → 202 Operation). 1-49 sessionNos from ncloud_serverless_list_processes; application connections are cut. Unknown session numbers come back as 400 partialFailure with per-index failures. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| sessionNos | Yes | Session numbers to kill (1-49) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| instanceName | Yes | Instance name ({clusterName}-{suffix}, from ncloud_serverless_list_instances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint and idempotentHint, and the description builds on them with concrete consequences: application connections are cut, unknown session numbers yield 400 partialFailure with per-index failures, and the confirm=true gate must be set. It also discloses the async nature via '202 Operation'. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tight sentences, each earning its place: purpose/endpoint, input provenance and impact, error behavior, and the safety gate. The destructive warning is front-loaded, and no sentence is redundant with the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter destructive tool with no output schema, the description covers purpose, input source, impact, error mode, and the confirm gate. The 202 Operation mention covers the response shape adequately despite the lack of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all four parameters carrying meaningful descriptions (e.g., confirm's 'Must be true to actually execute' and sessionNos' '1-49' bound). The description adds only marginal provenance — sessionNos come from ncloud_serverless_list_processes — which the schema's instanceName description already does for list_instances. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'Kill DB sessions on an instance' — plus the raw endpoint and expected 202 Operation response. The destructive warning is front-loaded, and referencing ncloud_serverless_list_processes as the source of sessionNos helps distinguish this from the listing tool and other serverless management operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear workflow context: sessionNos come from ncloud_serverless_list_processes, and confirm must be true to execute. It does not explicitly enumerate when to prefer this over sibling destructive tools (e.g., ncloud_serverless_delete_database), but the specificity of 'kill DB sessions' plus the input-provenance note makes selection unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_backupsARead-only
List automatic backups of a Cloud DB Serverless cluster (GET /mysql/v1/clusters/{clusterName}/backups): name, zoneCode, status (CREATING|AVAILABLE|IN_USE|DELETING), size. Backups are created automatically only — there is no manual create/delete. Sort fields: name, createdDateTime, size.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, so the description adds value by explaining the backup lifecycle (automatic only, no manual create/delete) and the status values. However, it doesn't disclose other behavioral details like pagination behavior or whether the list is filtered by cluster implicitly via the clusterName parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and information-dense, covering the resource, endpoint, returned fields, backup lifecycle, and sort fields in three sentences. It's slightly dense with the status enum values in parentheses, but each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list operation with a single required parameter and 100% schema coverage, the description is nearly complete. It covers the essential behavioral context (automatic-only backups), return fields, and sort options. The only minor gap is not explicitly describing the response structure, but no output schema exists and the field list partially covers this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters well. The description adds a note about allowed sort fields (name, createdDateTime, size), which is useful since the sort parameter's description says 'allowed fields per tool'—this tool-specific clarification adds value beyond the generic schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists automatic backups of a Cloud DB Serverless cluster, with the specific API endpoint, and enumerates the returned fields (name, zoneCode, status, size). It distinguishes itself from related backup tools by noting these are automatic-only backups, setting it apart from manual backup operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use this tool—when listing automatic backups for a serverless cluster—and explicitly notes there is no manual create/delete for these backups, which helps an agent understand the scope. It doesn't explicitly name alternative tools or exclusions, but the context makes the usage scenario clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_clustersARead-only
List Cloud DB Serverless (MySQL) clusters (GET /mysql/v1/clusters). Sort fields: name, createdDateTime (default createdDateTime,desc). pageNo is 0-based.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description adds useful behavioral context: the default sort order and the fact that pageNo is 0-based. These details go beyond the schema and help the agent understand API behavior without contradicting the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The main action and resource are front-loaded, and each additional clause delivers necessary behavioral or parameter information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list operation with three optional parameters, the description combined with the fully documented schema covers all inputs needed to call the tool correctly. It does not describe the response shape, but there is no output schema and the purpose of a list operation is clear enough for an agent to proceed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description adds extra value by enumerating the allowed sort fields ('name, createdDateTime') and the default ordering, which the schema only references generically as 'allowed fields per tool'. This meaningfully clarifies how to construct the sort parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List'), a precise resource ('Cloud DB Serverless (MySQL) clusters'), and the concrete API path (GET /mysql/v1/clusters). The resource qualifier clearly distinguishes this from sibling tools like ncloud_cdss_list_clusters and ncloud_ses_list_clusters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by naming the exact resource type and documenting the default sort behavior and page numbering semantics. It does not explicitly state when not to use this tool or name alternatives, but the resource-specific naming makes mis-selection unlikely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_config_parametersARead-only
List DB parameters with defaultValue, currentValue (null = unchanged), allowed range/list and whether they are dynamic — changeable without restart (GET /mysql/v1/clusters/{clusterName}/config/parameters).
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Only this parameter | |
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so the read-only nature is covered. The description adds useful behavioral detail beyond annotations: it explains the meaning of 'currentValue (null = unchanged)' and the significance of 'dynamic — changeable without restart', which informs how the returned data should be interpreted. This is valuable context that annotations alone do not provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action and key output fields, and it ends with the endpoint. It is concise, information-dense, and every phrase earns its place. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the lack of an output schema, the description explicitly names the fields returned (defaultValue, currentValue, allowed range/list, dynamic), which is sufficient for an agent to know what to expect. Pagination and filtering are covered by the schema parameter descriptions. For a list tool with readOnlyHint, this is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (name, sort, pageNo, pageSize, clusterName) having detailed descriptions including patterns, defaults, and constraints. The description adds little beyond the schema—it mentions the return fields but not parameter semantics. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list DB parameters), the resource (config parameters for a cluster), and the specific fields returned (defaultValue, currentValue, allowed range/list, dynamic). It also includes the endpoint. It distinguishes itself from generic list tools by naming the exact data structure, making it easy for an agent to know what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does but does not explicitly state when to use it versus alternatives like ncloud_serverless_get_config or update_config. There is no mention of exclusions or related tools. The context is clear enough that an agent could infer usage, but it lacks explicit guidance on when this is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_databasesARead-only
List databases of a Cloud DB Serverless cluster (GET /mysql/v1/clusters/{clusterName}/databases). Up to 1,000 databases per cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, and the description adds useful behavioral context: the operation targets databases of a specific cluster and returns up to 1,000 databases. It does not go into pagination behavior, but the schema already documents pagination parameters, so the added value is reasonable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence containing only essential facts: the action, the resource scope, the API path, and the result cap. There is no filler or repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with a fully described input schema, the description is nearly sufficient for selection and invocation. It could be slightly stronger by naming sortable fields or noting the output item shape, especially since there is no output schema, but those are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters are already documented with type, constraints, and defaults. The description adds no parameter-specific meaning beyond placing clusterName in the endpoint. A baseline of 3 is appropriate when the schema carries the full load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'List databases of a Cloud DB Serverless cluster,' and reinforces it with the exact REST endpoint. This clearly distinguishes it from sibling listing tools like serverless_list_clusters or serverless_get_database.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: this is the per-cluster database listing operation, and it notes a scale limit. However, it does not explicitly contrast with alternatives such as serverless_get_database or the create/delete database tools, so the usage guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_engine_versionsARead-only
List MySQL engine versions available for Cloud DB Serverless (GET /mysql/v1/engine-versions), ascending.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds the 'ascending' ordering and the endpoint path, which are helpful behavioral details. However, it does not describe the return format, pagination, or any other operational characteristics beyond a simple list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that conveys the action, resource, endpoint, and ordering with no redundancy. Every element earns its place and there is no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only listing tool, the description is almost complete. It supplies the resource type and ordering, though it omits any hint of what the returned data looks like (e.g., list of version strings). Given no output schema, this is a minor gap but not a blocker for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (0 parameters), so there is nothing to document. The baseline for 0 parameters is 4, and the endpoint inclusion reinforces that no parameters are needed. No additional param context is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), the exact resource ('MySQL engine versions available for Cloud DB Serverless'), and the associated endpoint. It clearly distinguishes this from siblings like ncloud_ses_get_versions or ncloud_cdss_get_kafka_versions, which serve different engines or products.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The product and resource scoping make the intended use obvious: when an agent needs MySQL engine versions for Cloud DB Serverless. It does not explicitly name alternatives or exclusions, but the description is unambiguous enough that no alternative would be considered for this specific resource.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_eventsARead-only
List cluster events (GET /mysql/v1/clusters/{clusterName}/events). filter: AND-only expressions (≤10 conditions, no parentheses/OR) over eventType (=), clusterDeleted (=), createdDateTime (>=, <=), e.g. eventType = "BACKUP" AND createdDateTime >= "2026-07-01T00:00:00Z". eventType: CLUSTER|DB|BACKUP|FAILOVER|ACCOUNT|SCALING_IN_OUT|SCALING_UP_DOWN.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| filter | No | Filter expression (see description) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description documents non-obvious behavior: AND-only filter expressions, a 10-condition cap, disallowed parentheses/OR, supported operators per field, and the eventType enum. Pagination and sort behavior are not described, though the schema partially covers those.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the verb, resource, and endpoint before the filter grammar. The dense filter sentence is somewhat hard to scan, but every part conveys necessary syntax information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core invocation semantics: required clusterName, filter grammar, allowed operators, and eventType values. The main gap is that no return-value or sort-field details are given even though there is no output schema, though this does not prevent correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3, but the description substantially improves understanding of the filter parameter by giving allowed fields, operators, constraints, and a worked example. It stops short of a 5 because valid sort fields are not enumerated for the sort parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and resource ('List cluster events') and anchors it to the exact API endpoint GET /mysql/v1/clusters/{clusterName}/events. This distinguishes it from the many sibling serverless and event-list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening phrase and endpoint provide clear context for when this tool should be chosen: listing events for a named cluster. It does not explicitly name alternatives or exclusions, but for a straightforward read-only list operation the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_imported_backupsARead-only
List imported backups — backup files brought in from Object Storage, account-level (GET /mysql/v1/imported-backups): name, zoneCode, size, status (IMPORTING|AVAILABLE|FAILED), engineVersion. Sort fields: name, importedDateTime, size.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds useful context beyond that by listing the returned fields (name, zoneCode, size, status, engineVersion), the status values, and sortable fields, giving the agent a better sense of what to expect from the response. It does not mention any side effects, but none are applicable for a read-only list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the core purpose, then efficiently appends the response fields, statuses, and sort fields in a parenthetical style. There is no redundant or filler content; every piece of information earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward list tool with no output schema, the description covers the resource definition, returned fields, status enums, sort fields, and account-level scope. Pagination details are handled by the parameter schemas. It could mention that the list might be large or that no filtering is available, but given the tool's simplicity and the rich schema, it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter already has a description. The description adds value by explicitly listing the allowed sort fields (name, importedDateTime, size), which the schema does not specify beyond the pattern. This supplements the schema and helps the agent construct valid sort parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and the specific resource ('imported backups'), distinguishing it from regular backups by defining them as backup files brought in from Object Storage. It also specifies the account-level scope and the API endpoint, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by defining what imported backups are and noting they are account-level, which helps an agent infer when to use this tool versus related list tools (e.g., regular backups). However, it does not explicitly mention when not to use it or name alternative tools, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_instancesARead-only
List the instances of a Cloud DB Serverless cluster (GET /mysql/v1/clusters/{clusterName}/instances): role PRIMARY|REPLICA, unit, memoryGb, storageUsage, zoneCode, status. Sort fields: name, role, zoneCode, createdDateTime.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes the operation is read-only. The description adds behavioral detail beyond that: it names the HTTP GET endpoint, the returned fields, and the valid sort fields, which helps the agent understand what to expect. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, with the purpose stated first and supporting details (endpoint, return fields, sort fields) immediately following. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward list operation with no output schema, the description covers the essential return fields and sort options. Pagination parameters (pageNo, pageSize) and clusterName are documented in the schema with defaults and constraints. Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all parameters, so the baseline is 3. The description adds value by explicitly enumerating the allowed sort fields (name, role, zoneCode, createdDateTime), which the schema only references generically as 'allowed fields per tool'. This is useful extra information for constructing the sort parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (List) and the resource (instances of a Cloud DB Serverless cluster), and includes the HTTP endpoint. It also lists the returned fields (role, unit, memoryGb, etc.), which makes the tool's purpose unambiguous and distinct from related tools like get_instance (single) or list_clusters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied: it lists instances for a given cluster, and the required clusterName is indicated. However, there is no explicit comparison to alternatives such as ncloud_serverless_get_instance (to fetch a single instance) or ncloud_serverless_list_clusters (to list clusters), nor any when-not-to-use guidance. This leaves selection mostly to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_logsARead-only
List log files of an instance (GET /mysql/v1/clusters/{clusterName}/instances/{instanceName}/logs): name, logType, fileSize, lastModifiedDateTime, lastFile (currently written). Sort fields: name, lastModifiedDateTime, fileSize.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| logType | No | Filter by log type | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| instanceName | Yes | Instance name ({clusterName}-{suffix}, from ncloud_serverless_list_instances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, covering the safety profile. The description adds context about the 'lastFile (currently written)' field, which is a useful behavioral trait, but does not disclose other aspects like pagination behavior or error handling. Since annotations carry the safety burden, a 3 is appropriate for the added context without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence. It front-loads the action, then the endpoint, followed by returned fields and sort fields. No filler or redundancy; every clause contributes to understanding the tool's behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lists the fields returned and sort capabilities, which is sufficient for an agent to understand the response shape and options. Pagination is implied by the schema's pageNo and pageSize, so the description need not repeat it. Minor gaps like error responses or prerequisites are not critical for a read-only list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all parameters documented. The description adds value by enumerating the allowed sort fields (name, lastModifiedDateTime, fileSize), which the schema only specifies via pattern and not explicitly. This compensates for the schema's lack of field enumeration, making the sort parameter clearer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list log files of an instance) with the endpoint and lists the returned fields (name, logType, fileSize, lastModifiedDateTime, lastFile). It distinguishes itself from sibling log tools like export or delete by focusing on enumeration. The verb and resource are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as ncloud_serverless_export_logs or ncloud_serverless_batch_delete_logs. It does not mention typical use cases, prerequisites, or conditions where another tool would be preferred. The agent must infer its purpose from the name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_operationsARead-only
List asynchronous operations of a resource type (the 16 documented list*Operations endpoints, routed by resourceType). clusters and imported-backups are account-wide (filter cluster operations client-side by results["0"].name). Sort fields: startDateTime, endDateTime, operationType.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | No | Required for backups/users/databases/config/logs/processes | |
| instanceName | No | Required for logs/processes | |
| resourceType | Yes | metadata.resourceType of the operation: clusters | imported-backups (no clusterName) | backups | users | databases | config (clusterName) | logs | processes (clusterName + instanceName) | |
| operationType | No | Filter by CREATE | UPDATE | DELETE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given that readOnlyHint=true is already present, the description does not need to restate safety. It adds real value-by-one: it clarifies that account-specific resource types return all items and rely on the client for filtering, and it enumerates the allowed sort fields. It does not mention rate limits or error handling, but these are less necessary for a read-only list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, but does not waste words. It front-loads the purpose, then the account-wide pitfall, and finally provides sort guidance. The only minor issue is the parenthetical 'filter cluster operations client-side by results["0"].name' is a bit cryptic, but the overall structure is functional and neat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the schema already wraps up the parameter descriptions and page-size semantics, the description need not explain the return value. It supplies the missing behavioral flavor (resourceType routing, account-wide behavior) and covers the sort of useful sort fields. It is not a field-by-field tutorial, but for a read-only listing tool it is enough to complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage description, making that not a burden. The description contributes the key insight: 'sort fields: startDateTime, endDateTime, operationType', which the schema leaves unspecified beyond generic pattern. It also mentions the 16 resource types and which are additive filters, which adds practical meaning to the resourceType parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('List'), a resource ('asynchronous operations'), and enforces the scope via 'routed by resourceType', which is not a vague or tiny. It also reveals the secret is a single tool that maps to 16 documented list*Operations endpoints. This is far above a generic 'list operations' statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description is no explicit: mention of when to pick this over sibling tools such as ncloud_serverless_get_operation or ncloud_serverless_list_clusters. The only usage aid is the note about clusters/imported-backups being account-wide and requiring client-side filtering, but that is a behavioral caveat rather than a selector rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_processesARead-only
List DB sessions of an instance, like SHOW PROCESSLIST (GET /mysql/v1/clusters/{clusterName}/instances/{instanceName}/processes): sessionNo, command, state, elapsedSeconds, userName, databaseName. Sort fields: sessionNo, elapsedSeconds, userName, databaseName.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| instanceName | Yes | Instance name ({clusterName}-{suffix}, from ncloud_serverless_list_instances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to cover safety. It adds useful context about the return fields (sessionNo, command, state, etc.) and sortable fields, which are not in the annotations. However, it does not disclose any other behavioral traits like pagination limits or error handling beyond what the schema already provides. With annotations covering the read-only nature, the description contributes some context but remains limited.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and front-loaded with the core purpose. It packs the API endpoint, returned fields, and sort fields without extraneous wording. Every sentence earns its place, and the structure is highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list operation with 5 parameters (2 required) and full schema coverage, the description is complete. It provides the purpose, the API endpoint, the returned fields, and sort semantics. The schema covers parameter details like pageNo/pageSize and naming conventions. No output schema exists, so describing return fields is a plus. Missing are potential error cases or permission notes, but these are minor for such a straightforward listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so all parameters are already documented. The description adds value by specifying the allowed sort fields (sessionNo, elapsedSeconds, userName, databaseName), which the schema only vaguely mentions as 'allowed fields per tool'. This clarifies the sort parameter's possible values beyond the schema. It also lists the returned fields, though those are not parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'DB sessions of an instance', and even provides the exact API endpoint (GET /mysql/v1/clusters/{clusterName}/instances/{instanceName}/processes). It also enumerates the returned fields, making its purpose unambiguous. This clearly distinguishes it from sibling tools like ncloud_serverless_kill_processes, which is a different operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: if you need to list DB sessions, use this tool. However, it does not explicitly mention when not to use it or suggest alternatives such as ncloud_serverless_kill_processes for terminating sessions. There is no exclusion or routing to sibling tools, so guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_list_usersARead-only
List DB users of a Cloud DB Serverless cluster (GET /mysql/v1/clusters/{clusterName}/users): name, permission. Passwords are never returned.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort keys 'field,asc|desc' (repeatable; allowed fields per tool) | |
| pageNo | No | Page number, 0-based (default 0 — note: unlike the legacy Ncloud APIs) | |
| pageSize | No | Items per page (1-100, default 20) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, so the description only needs to add extra behavioral context. It does so meaningfully by noting that passwords are never returned, which is a useful guarantee not present in the schema or annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense, well-structured sentence conveys the action, resource, endpoint, expected output, and a security-relevant caveat. There is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema, the readOnlyHint, and the simplicity of a list operation, the description is sufficiently complete. Mentioning the returned fields and password policy covers the main operational concerns; nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter already has a clear description, including constraints and defaults. The tool description adds no additional parameter-level meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List'), a specific resource ('DB users of a Cloud DB Serverless cluster'), and even names the REST endpoint. It also lists the returned fields ('name, permission'), which distinguishes it from single-user or mutation tools in the sibling set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose is clear enough that an agent can infer when listing users is appropriate, but the description does not explicitly contrast it with alternatives such as ncloud_serverless_get_user or the user creation/deletion tools. Usage guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_restore_clusterA
Create a NEW Cloud DB Serverless cluster from a backup (POST /mysql/v1/clusters/restore → 202 Operation). source.type BACKUP needs originalClusterName + backupName (from ncloud_serverless_list_backups); IMPORTED_BACKUP needs backupName (imported backup name) + adminUserName + adminPassword. No point-in-time restore. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the cluster to create | |
| unit | Yes | ||
| dryRun | No | If true, returns a preview without restoring | |
| source | Yes | ||
| network | Yes | ||
| autoScale | No | ||
| multiZone | Yes | ||
| backupConfig | Yes | ||
| highAvailability | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations completely empty, the description carries the full burden and does substantial work: it discloses that the call creates a new (billable) cluster, is asynchronous (202 Operation), does not support point-in-time restore, and can be safely previewed with dryRun. It omits that the agent should poll the returned operation, but the '202 Operation' marker at least signals asynchronous behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences with no filler, and the core action is front-loaded before the conditional parameter logic. The length is justified by the tool's complexity (two mutually distinct source types plus exclusions), and every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is complex — 9 parameters, 7 required, deep nesting, no output schema, and no annotations — so the description carries a heavy burden. It covers the most critical call-time decisions (source-type requirements, no PITR, dryRun preview), but leaves gaps: the async polling flow after 202 is not explained, nor the cost/billing implication of restoring a cluster, which is material for an agent weighing whether dryRun is worth doing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 22%, so the description must compensate, and it does for the most error-prone part: the source object. The flat required array cannot express that originalClusterName is required only for BACKUP while adminUserName/adminPassword are required only for IMPORTED_BACKUP — only the description conveys this conditional relationship. It also sources backupName from a sibling tool. It does not explain unit/network/backupConfig/autoScale semantics, but the schema partially documents those.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource+mechanism: 'Create a NEW Cloud DB Serverless cluster from a backup,' and even provides the HTTP endpoint and expected 202 response. The 'NEW' emphatically distinguishes this restore-from-backup operation from the sibling ncloud_serverless_create_cluster, so an agent can disambiguate without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives conditional field requirements per source.type (BACKUP needs originalClusterName + backupName; IMPORTED_BACKUP needs backupName + adminUserName + adminPassword), tells the agent where to fetch backup names (ncloud_serverless_list_backups), states an explicit exclusion ('No point-in-time restore'), and instructs the safe path ('Use dryRun=true to preview'). It falls short only of explicitly naming the alternative tool for green-field cluster creation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_update_clusterAIdempotent
Update a Cloud DB Serverless cluster (PATCH /mysql/v1/clusters/{clusterName}, merge-patch → 202 Operation). Only the given fields change: unit (min+max), multiZone, autoScale, backupConfig (retentionDays required when given). Setting scaleOut.enabled=false resets the replica range. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| unit | No | ||
| dryRun | No | If true, returns a preview without changing | |
| autoScale | No | ||
| multiZone | No | Enable/disable backup-zone replicas (enabling provisions and syncs replicas) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| backupConfig | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare idempotentHint and destructiveHint, so the description carries the burden of behavioral detail. It discloses merge-patch semantics, the 202 Operation response, the fact that only listed fields change, that disabling scaleOut resets the replica range, and that dryRun previews changes—substantial context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, no filler. The main action and endpoint are front-loaded, and each subsequent sentence adds distinct value: merge-patch behavior, affected fields, the reset side effect, and the dry-run option. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with nested objects and no output schema, the description is nearly complete: it covers the operation, the merge behavior, the side effect on scaleOut, and the preview mechanism. It stops short of explaining how to interpret the returned 202 Operation or how to poll it, but the mention of '202 Operation' gives a sufficient hint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 50%, the description compensates by explaining key behaviors: unit requires min+max, backupConfig requires retentionDays when given, and setting scaleOut.enabled=false resets the replica range. This adds meaning beyond the schema's field-level descriptions, though not every nested parameter is individually explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear verb+resource: 'Update a Cloud DB Serverless cluster' and specifies the exact endpoint (PATCH /mysql/v1/clusters/{clusterName}). It is unambiguous against siblings like serverless_create_cluster or serverless_delete_cluster, though it does not explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear: it is a merge-patch update where 'Only the given fields change,' and it advises 'Use dryRun=true to preview.' This provides practical when-to-use guidance, though it does not explicitly contrast with create/delete/restore siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_update_configAIdempotent
Change DB parameters (PATCH /mysql/v1/clusters/{clusterName}/config, merge-patch → 202 Operation). applyWithoutRestart defaults to TRUE here (the API default is false = DB restart); with true, non-dynamic parameters are rejected with 400 — set applyWithoutRestart=false to accept a restart. Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | ||
| parameters | Yes | Parameter name → value (strings) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) | |
| applyWithoutRestart | No | true (tool default) = only dynamic parameters, no restart; false = allow non-dynamic parameters, the DB restarts |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses important behaviors beyond annotations: the default override for applyWithoutRestart (differs from API default), the 400 rejection for non-dynamic parameters, and dryRun for preview. Does not contradict the idempotent/destructive hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, dense sentence that front-loads the purpose and packs in essential behavior. No fluff; every clause adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested parameters, two boolean toggles), the description covers the key operational aspects: what it does, the applyWithoutRestart tradeoff, and dryRun. No output schema exists, but the 202 Operation hint is provided. Complete enough for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already documents each parameter well (high coverage). The description adds critical semantics: explains the interaction between applyWithoutRestart and parameter types, and the dryRun preview effect, which goes beyond simple field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action ('Change DB parameters') and the resource (cluster config via PATCH endpoint). It is specific and distinguishable from read-only siblings like ncloud_serverless_get_config or ncloud_serverless_list_config_parameters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear behavioral context (applyWithoutRestart semantics, dryRun preview) but does not explicitly mention alternatives or exclusions. The description implies when to use it (for config changes) without saying when not to.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_update_log_configAIdempotent
Change log rotation for the given log types (PATCH /mysql/v1/clusters/{clusterName}/log-config, merge-patch; the only synchronous write — returns 200 with the new settings).
| Name | Required | Description | Default |
|---|---|---|---|
| rotations | Yes | logType → rotation settings (only the given types change) | |
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the idempotentHint and destructiveHint annotations, the description adds useful behavioral details: it is synchronous, uses merge-patch (partial update), and returns 200 with the new settings. This tells the agent about the response format and update semantics, which are not covered by annotations. This adds clear value beyond the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently packs the action, endpoint, HTTP method, merge-patch semantics, and synchronous behavior. It is front-loaded with the main verb and resource. While dense, it contains no filler and each clause adds meaningful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (nested object with enums and constraints) and full schema coverage, the description is reasonably complete. It covers the essential behavior (synchronous, returns 200, merge-patch) and does not need to repeat schema details. The absence of an output schema means the description's mention of the 200 response partially fills that gap. Enough for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with descriptions for both clusterName and rotations, including constraints and enum values for log types. The description itself adds little parameter-specific meaning beyond the phrase 'given log types', which is already implied in the schema. Baseline 3 is appropriate given the schema's thoroughness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Change log rotation for the given log types' with a specific resource (log-config). It identifies the HTTP method and endpoint, making the purpose unambiguous. It does not explicitly differentiate from sibling tools beyond the name, but it is specific enough to be distinguished from the read counterpart ncloud_serverless_get_log_config.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says it is 'the only synchronous write' and mentions the merge-patch nature, providing some context about when to use it relative to other operations. However, it does not explicitly state when to use this tool over alternatives (e.g., when to update log rotation vs. reading it) nor list exclusions. The usage is implied but not exhaustively guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_serverless_update_userAIdempotent
Change a DB user's password and/or permission (PATCH /mysql/v1/clusters/{clusterName}/users/{userName}, merge-patch → 202 Operation). The name cannot be changed.
| Name | Required | Description | Default |
|---|---|---|---|
| password | No | 8-20 chars with a letter, a digit and a special character; ` & + \ " ' / and spaces are not allowed. Never returned by the API | |
| userName | Yes | ||
| permission | No | ||
| clusterName | Yes | Cluster name (3-30 chars, lowercase letters/digits/'-', no leading or trailing '-'; immutable after creation) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint and destructiveHint. The description adds meaningful behavioral context: the HTTP method (PATCH), merge-patch semantics (partial update), the 202 Operation response, and the immutability of the user name. These details go beyond annotations and inform the agent of API behavior and constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the action and includes essential HTTP details and a key constraint. There is no wasted wording; every phrase carries utility.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update operation with annotations and no output schema, the description covers the action, HTTP method/status, merge-patch behavior, and an important immutability restriction. It lacks explicit mention of asynchrony (implied by '202 Operation') or prerequisites, but these are minor gaps given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (password and clusterName have descriptions; userName and permission do not). The description clarifies that password and permission are the modifiable fields and userName is immutable, adding some value. However, it does not compensate for the missing schema descriptions of userName and permission, leaving their semantics largely to their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Change a DB user's password and/or permission', a specific verb and resource, and distinguishes this update operation from create/delete siblings. It also explicitly notes the name cannot be changed, which disambiguates what is modifiable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the action clear ('change... password and/or permission') and the immutability of the name clarifies a limitation. However, it does not explicitly mention alternative tools (e.g., create_user, delete_user) or when not to use it, though the purpose is unambiguous enough for an agent to infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_add_nodeA
Add data nodes to a Search Engine Service cluster. ⚠️ newDataNodeCount is HOW MANY TO ADD, not the resulting total — a cluster with 3 data nodes given newDataNodeCount=4 ends up with 7. ⚠️ Node count cannot be reduced afterwards: SES has no scale-down operation, so the only way back from adding too many is deleting the cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| newDataNodeCount | Yes | How many data nodes to ADD. This is a delta, not the resulting total | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the destructiveHint=false annotation, the description discloses the operation's irreversible nature, the fact that SES has no scale-down operation, and that recovery requires deleting the entire cluster. This is high-value behavioral context that an agent cannot infer from the schema or annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core action, followed by two essential warnings. Every sentence earns its place, and the warning formatting makes the critical delta semantics and irreversibility impossible to miss.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter mutation tool, the description covers what the tool does, how the parameter should be interpreted, and the most important operational consequence (irreversibility). No output schema is present, but an agent has everything needed to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers both parameters at 100%, including the delta meaning of newDataNodeCount. The description reinforces this with a concrete example (3 + 4 = 7), which adds useful illustrative meaning beyond the schema's plain statement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Add data nodes to a Search Engine Service cluster.' It clearly distinguishes this from sibling operations like creating, deleting, or restarting a cluster, and the 'data nodes' qualifier separates it from Kafka-related node operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context by explaining that newDataNodeCount is a delta and that node count cannot later be reduced, which helps an agent decide when this tool is appropriate. It does not explicitly name alternative tools or state when-not-to-use conditions beyond the irreversibility warning, so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_change_disk_sizeAIdempotent
Change data node disk capacity for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| diskSize | Yes | New storage size in GB (10GB increments; must be larger than the current size) | |
| serviceGroupInstanceNo | Yes | Cluster instance number (sent in the body, as a number) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, which already convey that the operation is safe and repeatable. The description adds no further behavioral context, such as whether the cluster must be stopped, if the operation is asynchronous, or if there is any downtime. It simply restates the tool's function without additional insight beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to the core purpose, making it highly efficient and easy to parse for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple two-parameter tool with no output schema and annotations covering safety, the description is largely complete. It clearly states the action and target. The only minor gap is not explicitly distinguishing from sibling change tools, but the name and description make the purpose unambiguous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage, with detailed descriptions for both parameters (diskSize with GB increments and must be larger than current; serviceGroupInstanceNo as a number). The description does not add any extra meaning beyond what the schema already states, so it meets the baseline without enhancing parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Change data node disk capacity for a Search Engine Service cluster'. It clearly identifies the verb (change), the resource (data node disk capacity), and the context (Search Engine Service cluster). This distinguishes it from sibling tools like ncloud_ses_change_node_spec which alters CPU/memory specs, not disk capacity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its usage context (changing disk capacity for SES data nodes) but does not explicitly mention when to use it versus alternatives. It doesn't state exclusions or refer to sibling tools. However, the action is clear enough for an agent to infer it is the appropriate tool for disk resizing, as opposed to node spec changes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_change_node_specAIdempotent
Change server specifications per node role in a Search Engine Service cluster. Send only the roles you are changing — read the changeable specs with ncloud_ses_get_node_product_for_change (G2) or ncloud_ses_get_node_spec_for_change_g3 (G3) first.
| Name | Required | Description | Default |
|---|---|---|---|
| dataNodeProductCode | No | New data node server type code | |
| masterNodeProductCode | No | New master node server type code | |
| managerNodeProductCode | No | New manager node server type code | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is known. The description adds the behavioral rule to send only changed rolesainer but does not disclose potential side effects like downtime or cost implications. It does not contradict the annotations, and the added prerequisite context is useful but limited.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no waste. The primary action is stated first, followed by a critical usage rule and prerequisite references. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a required parameter and three optional parameters, and the description covers the key prerequisite of reading changeable specs. It lacks explicit mention of the serviceGroupInstanceNo parameter, but the schema documents that. Without an output schema, it need not describe return values at length. Overall, sufficient for an agent to call correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds key semantic value beyond the schema: it instructs that only the roles being changed should be sent, implying that omitted product codes remain unchanged. This clarifies the optional nature of the three node product code parameters in a way the schema alone does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Change' and the resource 'server specifications per node role in a Search Engine Service cluster,' making it distinct from sibling tools like ncloud_ses_change_node_type. It also emphasizes 'Send only the roles you are changing,' which precisely defines the operation's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance on how to use the tool: 'Send only the roles you are changing' and 'read the changeable specs with ... first.' It names the prerequisite read methods. However, it does not explicitly state when not to use this tool versus alternatives, such as changing node type with ncloud_ses_change_node_type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_change_node_typeAIdempotent
Set each data node's storage role (HOT/WARM) in a Search Engine Service cluster. Roles are assigned per node, not by count. Manager and master node types cannot be changed. List the nodes with ncloud_ses_get_node_list first. ⚠️ There is no way to read the result back: no Ncloud API returns a node's HOT/WARM role, so the success response and the cluster's state transition are the only confirmation available.
| Name | Required | Description | Default |
|---|---|---|---|
| nodeSpecList | Yes | Per-node storage role assignments | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false (no contradiction). The description adds high-value behavioral context beyond those annotations: a critical caveat that no Ncloud API returns a node's HOT/WARM role, so the success response and cluster state transition are the only confirmation. This directly prevents an agent from attempting a verification read-back that does not exist — exactly the kind of disclosure that annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with zero waste. The purpose is front-loaded, the per-node clarification and exclusion follow immediately, and the prerequisite plus the no-read-back warning each earn their place. Every sentence conveys a distinct, non-redundant fact needed to invoke the tool correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema, the description covers the essentials: action, node scope, exclusions, prerequisite, and the verification limitation. The only minor gap is that it does not state whether the operation is asynchronous or describe the shape of the success response, though the reference to 'cluster's state transition' gestures at observability and partially compensates.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaning on top of the schema: it explains that roles are assigned per node (mapping expectations for nodeSpecList), tells the agent which node types to exclude from the list (manager/master), and corroborates the schema's pointer to ncloud_ses_get_node_list as the source of computeInstanceNo values. This enriches rather than merely repeats the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource+scope: 'Set each data node's storage role (HOT/WARM) in a Search Engine Service cluster.' It goes beyond a one-liner by clarifying the assignment model ('per node, not by count') and stating an exclusion ('Manager and master node types cannot be changed'), which clearly separates it from siblings like ncloud_ses_change_node_spec. An agent can identify what this tool does and what it is not without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit prerequisite ('List the nodes with ncloud_ses_get_node_list first') and an explicit when-not constraint ('Manager and master node types cannot be changed'). It stops short of naming an alternative tool or stating when to prefer a different operation, but for a role-assignment tool there is no true functional alternative among the siblings, so the guidance present is genuinely actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_create_clusterA
Create a new Search Engine Service cluster (G2). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number | |
| dryRun | No | If true, preview only without creating | |
| clusterName | Yes | Cluster name (3-15 chars, lowercase+numbers+'-') | |
| loginKeyName | Yes | Authentication key name for SSH access | |
| dataNodeCount | Yes | Number of data nodes (3-10) | |
| isDualManager | No | Manager node redundancy (default: true) | |
| masterNodeCount | No | Number of master nodes (3 or 5) | |
| dataNodeSubnetNo | Yes | Data node subnet number | |
| masterNodeSubnetNo | No | Master node subnet (required if master enabled) | |
| dataNodeProductCode | Yes | Data node server type code | |
| dataNodeStorageSize | Yes | Data node storage size in GB (100-2000, 10GB increment) | |
| managerNodeSubnetNo | Yes | Manager node subnet number | |
| softwareProductCode | Yes | OS type code (from getOsProductList) | |
| searchEngineUserName | Yes | Admin account ID (3-15 chars) | |
| masterNodeProductCode | No | Master node server type code | |
| managerNodeProductCode | Yes | Manager node server type code | |
| searchEngineVersionCode | Yes | Search engine version code (from getSearchEngineVersionList) | |
| searchEngineUserPassword | Yes | Admin password (8-20 chars, letters+numbers+special) | |
| isMasterOnlyNodeActivated | No | Enable dedicated master nodes | |
| searchEngineDashboardPort | Yes | Dashboard port (1025-65534, not 9090/9200/9300) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=false, and the description adds the dryRun preview capability, which is a behavioral hint beyond the annotation. However, it does not disclose other important behaviors such as cost implications, requirement for existing VPC/subnet, or that creation may take time. With annotations present, the bar is lower, but the description still lacks meaningful behavioral context beyond the dryRun tip.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that covers the core action and a key usage tip. No wasted words, and the information is front-loaded. It is appropriately concise for the low-level of detail it provides.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool with 20 parameters and 14 required fields, yet the description is extremely sparse. It does not mention prerequisites like fetching product codes via getOsProductList, search engine version codes, or subnet selection. There is no output schema, and the description does not compensate by explaining the overall workflow or expected effects. The dryRun hint is useful but insufficient for such a complex operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's mention of 'dryRun=true' adds no new meaning because the schema already documents the dryRun parameter as 'If true, preview only without creating.' No additional parameter semantics are provided beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Create a new Search Engine Service cluster (G2)'. The verb 'Create' plus the specific resource 'Search Engine Service cluster' and version 'G2' make the purpose unambiguous and distinguish it from the sibling tool ncloud_ses_create_cluster_g3.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives one explicit usage hint: 'Use dryRun=true to preview.' However, it does not explicitly contrast with alternative tools or mention when to use G2 versus G3. Usage context is implied by the 'G2' label, but no exclusions or alternative suggestions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_create_cluster_g3A
Create a new Search Engine Service cluster on 3rd-generation KVM servers (G3). Use dryRun=true to preview.
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_ses_get_vpc_list) | |
| dryRun | No | If true, preview only without creating | |
| clusterName | Yes | Cluster name (3-15 chars: lowercase letters, numbers, '-'; starts with a letter, ends with a letter or number) | |
| loginKeyName | Yes | Authentication key name (from ncloud_ses_get_login_keys) | |
| dataNodeCount | Yes | Number of data nodes (3-10, default: 3) | |
| isDualManager | No | Manager node redundancy (default: true) | |
| generationCode | Yes | Server generation code. G3 for 3rd generation | |
| hypervisorCode | Yes | Hypervisor code. KVM for 3rd generation | |
| serverSpecCode | No | Server spec code. Optional here, unlike the CDSS G3 create where it is required | |
| masterNodeCount | No | Number of master nodes (3 or 5, default: 3). Required when isMasterOnlyNodeActivated=true | |
| dataNodeSubnetNo | Yes | Data node subnet number | |
| masterNodeSubnetNo | No | Master node subnet number. Required when isMasterOnlyNodeActivated=true | |
| dataNodeProductCode | Yes | Data node server type code | |
| dataNodeStorageSize | Yes | Data node storage in GB (100-16000, 10GB increments) | |
| managerNodeSubnetNo | Yes | Manager node subnet number (from ncloud_ses_get_subnet_list_g3) | |
| softwareProductCode | Yes | G3 OS image code (see ncloud_ses_get_cluster_server_images; e.g. SW.VELST.OS.LNX64.ROCKY.08.G003) | |
| searchEngineUserName | Yes | Admin account ID (3-15 chars: lowercase letters, numbers, '-') | |
| masterNodeProductCode | No | Master node server type code. Required when isMasterOnlyNodeActivated=true | |
| managerNodeProductCode | Yes | Manager node server type code (from ncloud_ses_get_server_specs) | |
| searchEngineVersionCode | Yes | Search engine version code (from ncloud_ses_get_versions) | |
| searchEngineUserPassword | Yes | Admin password (8-20 chars, letters+numbers+special; excludes ' " ` ₩ / & and spaces) | |
| isMasterOnlyNodeActivated | No | Enable dedicated master nodes. If true, the three masterNode* parameters below are required | |
| searchEngineDashboardPort | Yes | Dashboard port (1025-65534; 9090, 9200 and 9300 are unavailable) | |
| dataNodeStorageInfraResourceDetailTypeCode | No | Data node storage type code. Documented valid value: CB1 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description clearly states that a new cluster is created and adds a useful dryRun preview hint. However, with only destructiveHint=false in annotations, it does not disclose async provisioning behavior, potential costs, or how to monitor the operation. The description adds some context but not much behavioral depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tight sentences with no filler. The primary action and resource are front-loaded, and the dryRun preview tip is a useful one-line addition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema richly documents all 24 parameters, including source tools for many values, so the tool is callable. However, this is a high-complexity create operation with no output schema and no mention of return values, async behavior, or post-create verification. The description is adequate but not complete for such a heavyweight operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% parameter description coverage, so the description carries little parameter burden. Mentioning dryRun and G3 adds minimal value beyond the schema's existing descriptions. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create'), a clear resource ('Search Engine Service cluster'), and a clear scope ('3rd-generation KVM servers (G3)'). The G3 mention differentiates it from siblings like ncloud_ses_create_cluster and the CDSS cluster-creation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not state when to use this tool versus alternatives such as the non-G3 ncloud_ses_create_cluster or related CDSS cluster tools. The only guidance it offers is 'Use dryRun=true to preview,' which is a parameter-level tip, not a tool-selection guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_create_snapshotA
Create a snapshot of a Search Engine Service cluster. ⚠️ Prerequisite chain: ncloud_ses_set_snapshot_api_key → ncloud_ses_get_snapshot_buckets → this tool. Without the API key the bucket lookup fails with 10115.
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket to store the snapshot in (from ncloud_ses_get_snapshot_buckets) | |
| snapshotName | Yes | Name for the snapshot | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint: false, so the description carries the burden of behavioral disclosure. It does disclose the prerequisite failure condition, but doesn't mention other behaviors like whether the operation is asynchronous, what it returns on success, or any side effects beyond creating a snapshot. This is some value but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the purpose and then the prerequisite warning. Every sentence earns its place with no fluff. The warning is clearly highlighted with ⚠️.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All three parameters are documented, and the prerequisite chain helps the agent know how to prepare. However, the description doesn't explain what happens after creation (e.g., return value, polling for status). Given the low complexity of the operation and no output schema, this is mostly complete but could be slightly richer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters with descriptions, including that bucketName comes from ncloud_ses_get_snapshot_buckets. The description doesn't add extra semantics beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create') and resource ('snapshot of a Search Engine Service cluster'), making the purpose clear. It also mentions the prerequisite chain which adds context. However, it doesn't explicitly distinguish from other snapshot-related tools, though the resource type is unique enough to avoid confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite chain (ncloud_ses_set_snapshot_api_key → ncloud_ses_get_snapshot_buckets → this tool) and warns about the failure if not followed (error 10115). This gives explicit sequential guidance, but doesn't discuss alternative tools or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_delete_clusterADestructiveIdempotent
⚠️ Destructive: Permanently delete a Search Engine Service cluster. All data and indices will be lost. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| serviceGroupInstanceNo | Yes | Cluster instance number to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, but the description adds critical behavioral context: permanent deletion, total data/index loss, and the requirement to set confirm=true for execution. This goes beyond the annotation to disclose consequences and the safety mechanism, with no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short, front-loaded sentences with a warning icon and 'Destructive' label. Every word earns its place, conveying purpose, consequences, and execution requirement without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter destructive operation with annotations, the description fully covers purpose, consequences, and execution requirement. No output schema exists, and return values are not needed for this tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters (serviceGroupInstanceNo and confirm). The description reiterates the confirm=true requirement but adds no new parameter semantics beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: 'Permanently delete a Search Engine Service cluster.' It clearly identifies the resource type (SES cluster) and distinguishes it from sibling delete cluster tools like ncloud_cdss_delete_cluster and ncloud_nks_delete_cluster by naming the service.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: use this tool to permanently delete an SES cluster. The service-specific naming and destructive warning make the usage obvious, though it does not explicitly mention alternatives or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_cluster_acgBRead-only
Get ACG (Access Control Group) rules for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description adds no additional behavioral context such as required permissions, rate limits, or what the response contains. It only restates the tool's purpose without revealing any behavioral traits beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys the essential information without any redundant or filler words. It is well-structured and immediately front-loads the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one required parameter, no output schema, annotations present), the description sufficiently covers the action and resource. While it could mention what the returned rules look like, the low complexity and clarity of 'Get ACG rules' make it adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a clear description for the single parameter ('Cluster instance number'). The tool description adds no extra semantic meaning beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and clearly identifies the resource ('ACG rules') and the target domain ('Search Engine Service cluster'). It expands the acronym ACG and distinguishes this tool from general ACG tools like ncloud_get_acg_rules and sibling cluster tools like ncloud_ses_get_cluster_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention when NOT to use it, nor does it reference any sibling tools or alternative approaches (e.g., using ncloud_get_acg_rules for general ACG rules). The usage context is left entirely to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_cluster_detailARead-only
Get detailed information about a specific Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number (from getClusterInfoList) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description 'Get detailed information' aligns with a read-only operation. The description adds no extra behavioral traits beyond specificity, so the annotation carries the load, making a 3 appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to identifying the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only get-detail tool with one documented parameter and a readOnlyHint, the description is sufficient for an agent to select and invoke it. It does not detail the response contents, but the tool name and description adequately convey its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the sole parameter fully with a clear description, meeting the high schema coverage baseline. The tool description adds no further parameter semantics, so a 3 is warranted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (get) and resource (specific Search Engine Service cluster), clearly distinguishing it from list-type siblings like ncloud_ses_list_clusters and aspect-specific tools like ncloud_ses_get_cluster_acg.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'specific' implies a targeted lookup on a known cluster, and the parameter description ('from getClusterInfoList') hints at a prerequisite. However, it does not explicitly compare to alternatives or state when not to use it, so clear context is present but exclusions are missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_cluster_server_imagesARead-only
Get available OS images for Search Engine Service (G3/KVM only). The returned image code is the softwareProductCode for ncloud_ses_get_server_specs, ncloud_ses_get_subnet_list_g3 and ncloud_ses_create_cluster_g3. For G2 use ncloud_ses_get_os_products.
| Name | Required | Description | Default |
|---|---|---|---|
| generationCode | No | Server generation code. Only G3 (3rd generation) is valid |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so no safety red flags remain. The description adds valuable behavioral context beyond that: the G3/KVM restriction, the semantic relationship of the returned image code to downstream calls, and the G2 alternative. This meaningfully complements the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences, no filler. Purpose is front-loaded, and the downstream-consumer detail and sibling routing each earn their place. Every sentence adds information an agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-optional-parameter read-only lookup with no output schema, the description is nearly complete: it scopes the call, explains the returned value's role, and routes G2 users elsewhere. A minor gap is not describing the overall response shape, but given the annotation safety profile and simple input, this is a strong definition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter generationCode is fully documented with an enum and explanation. The description reinforces the G3-only constraint and adds the KVM-only qualifier, but this is minimal added value beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a clear resource ('available OS images for Search Engine Service'), and an explicit scope ('G3/KVM only'). It also names the G2 alternative, so an agent can immediately distinguish this from ncloud_ses_get_os_products without inspecting schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives actionable routing guidance: use this for G3/KVM, and use ncloud_ses_get_os_products for G2. It also explains how the result will be consumed (as softwareProductCode for three downstream SES tools), which tells the agent when this lookup is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_dashboardBRead-only
Get dashboard information for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description adds no behavioral context beyond that—no mention of pagination behavior, output structure, or what 'dashboard information' includes. It does not contradict the annotations, but it also contributes no additional operational disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, succinct sentence with no filler. The action and resource are front-loaded, and every word contributes to identifying what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter, the description plus schema and annotations are minimally sufficient to invoke the tool correctly. However, with no output schema, the description does not clarify what the returned dashboard information contains or how pagination affects results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so pageNo, pageSize, and serviceGroupInstanceNo are already documented. The description only adds the cluster context and does not clarify relationships between parameters or pagination semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and identifies the resource as a 'Search Engine Service cluster', making the tool's core purpose clear. It does not explicitly differentiate from sibling dashboard tools such as ncloud_list_dashboards or ncloud_ses_get_monitoring, but the SES cluster scoping is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus related SES getters or dashboard-related siblings. The description implies a read-only dashboard retrieval but does not mention prerequisites, alternatives, or a decision context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_import_bucketsARead-only
Get Object Storage bucket list available for data import
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, and the description adds the context of 'data import' availability. However, it does not disclose any additional behavioral traits such as auth requirements, response format, or limitations of the bucket list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with clear front-loading of the verb and resource, containing no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one well-schematized parameter and a readOnlyHint annotation, the description is nearly complete. It could be enhanced by mentioning what constitutes 'available for data import', but the low complexity keeps it adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully covers the parameter with a meaningful description ('Cluster instance number'). The tool description adds no additional parameter semantics beyond what the schema already provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get'), the resource ('Object Storage bucket list'), and the scope ('available for data import'), which distinguishes it from sibling tools like ncloud_ses_get_snapshot_buckets or generic bucket listers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to list Object Storage buckets for data import, but provides no explicit guidance on when to use this tool versus alternatives, nor any exclusions or preconditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_import_historyARead-only
Get data import history for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation, and the description's 'Get' wording is consistent with that. However, the description adds little behavioral detail beyond the annotation, such as pagination behavior or whether history is limited to a time window.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one precise sentence with the verb and resource front-loaded. There is no filler, tautology, or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation, the description, schema, and readOnlyHint together provide enough information to invoke the tool correctly. A note about the exact return fields would be a slight improvement since there is no output schema, but it is not needed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters are fully documented in the input schema, including the required serviceGroupInstanceNo as 'Cluster instance number.' The description adds no new parameter-level meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Get'), a specific resource ('data import history'), and the target scope ('Search Engine Service cluster'). This clearly distinguishes it from sibling SES tools such as ncloud_ses_run_import and ncloud_ses_get_snapshot_history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when the tool applies—viewing data import history for an SES cluster—but it does not explicitly mention when not to use it or name alternatives. Usage is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_login_keysARead-only
Get authentication key list for SSH access to Search Engine Service manager nodes
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint: true, and the description adds context about the keys' purpose (SSH access to manager nodes). However, it does not disclose additional behavioral details such as return format, pagination, or authentication requirements. The safety profile is covered by the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that is immediately understandable. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only retrieval tool with an empty schema and no output schema, the description provides sufficient context. It clearly states what is retrieved (authentication key list) and for which resource (SES manager nodes), making it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description adds no parameter details, but none are needed since the schema is empty. No contradiction or gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get authentication key list') and the specific resource context ('SSH access to Search Engine Service manager nodes'). It distinguishes from generic login key tools by scoping to SES manager nodes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use this tool by specifying the target resource (SES manager nodes), but it does not explicitly mention alternatives or when not to use it. Context is clear, though exclusions are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_monitoringBRead-only
Get search-engine monitoring data for a Search Engine Service cluster or node
| Name | Required | Description | Default |
|---|---|---|---|
| metric | Yes | Metric set to retrieve | |
| timeEnd | Yes | End time as epoch milliseconds | |
| interval | No | Aggregation interval (e.g. Min1, Min30, Hour2, Day1) | |
| timeStart | Yes | Start time as epoch milliseconds (e.g. 1742747874000) — NOT an ISO 8601 string | |
| computeInstanceNo | No | Node instance number. Required for node-level metrics | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already signals this is a safe read operation. The description adds the cluster-or-node scoping context, which is useful, but does not disclose return format, pagination, or any constraints beyond that. With annotations covering safety, the added context is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. It efficiently states the purpose and scope without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with six parameters, four required, and no output schema, this description is too sparse. It does not explain what 'monitoring data' includes, how to specify node-level vs cluster-level (computeInstanceNo requirement), or what the response might look like. An agent would need to rely entirely on the schema, which lacks usage context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is documented. The description itself adds no extra semantic meaning beyond what the schema provides, such as relationships between parameters or usage hints. Baseline 3 applies because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the specific resource ('search-engine monitoring data for a Search Engine Service cluster or node'). It distinguishes itself from siblings like ncloud_ses_get_os_monitoring (OS monitoring) and ncloud_cdss_get_monitoring (Kafka) by naming the SES service and the cluster/node scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor on choosing cluster-level vs node-level metrics. The description does not mention the required computeInstanceNo for node-level queries or how to select the appropriate metric. An agent would have to infer usage from the schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_node_listARead-only
Get node list for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation, and the description aligns with that. However, the description adds no further behavioral context such as whether the list includes all node statuses, pagination behavior, or what node attributes are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler or redundant information. It clearly states the tool's action and target resource in minimal space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has low complexity (one parameter, no output schema) and the read-only annotation covers the safety profile. However, the description does not indicate what the response includes or whether any filtering/pagination exists, which would be helpful for an agent planning to use the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter, which is described as 'Cluster instance number.' The description adds no additional parameter semantics beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('node list for a Search Engine Service cluster'), clearly indicating what the tool returns. It is distinct from sibling tools like get_cluster_detail or get_node_spec_detail, though it doesn't explicitly call out those differences.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context implies usage: when you need the node list for a specific SES cluster. However, there is no explicit guidance on when to use this instead of related tools (e.g., get_cluster_detail) or prerequisites like obtaining the serviceGroupInstanceNo.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_node_product_for_changeARead-only
Get the server types a running Search Engine Service cluster's nodes can be changed to (G2 clusters only). ⚠️ On a G3/KVM cluster this returns G2 products with isChangeSpec: true on every one of them — none of which will actually apply; the server refuses them at change time with 10139. The only hint in the response is that no entry is marked isSelected. Use ncloud_ses_get_node_spec_for_change_g3 there.
| Name | Required | Description | Default |
|---|---|---|---|
| softwareProductCode | Yes | OS product code (from ncloud_ses_get_os_products) | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds substantial behavioral disclosure beyond the readOnlyHint annotation: on G3/KVM it returns unusable products with `isChangeSpec: true`, the server rejects them with error 10139, and the only response hint is that no entry is `isSelected`. This prepares the agent for a failure mode the schema cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but efficient: the first sentence states purpose, the second and third warn about a critical failure mode, and the last routes to the alternative. Every sentence earns its place, and the most important scoping constraint is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description tells the agent what to expect in the response (no `isSelected` entries) and what will happen if used wrongly (error 10139). It also covers cluster-type compatibility and names the correct sibling. Combined with the annotations, an agent has everything needed to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and both parameters already have clear descriptions in the schema. The tool description adds minimal parameter nuance—only referencing the source of 'softwareProductCode' (already in schema) and implying serviceGroupInstanceNo identifies the cluster. No extra meaning beyond structured fields is provided, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), resource ('server types... nodes can be changed to') and scope ('a running Search Engine Service cluster's nodes'), and explicitly limits to G2 clusters. It distinguishes itself from ncloud_ses_get_node_spec_for_change_g3 by naming that sibling in the last sentence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit when-to-use ('G2 clusters only') and a when-not-to-use with a specific alternative: 'Use ncloud_ses_get_node_spec_for_change_g3 there' for G3/KVM. It also warns about the misleading response on G3, leaving no ambiguity about routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_node_productsARead-only
Get available node server types (product codes) for Search Engine Service (G2)
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | Yes | Subnet number (from ncloud_ses_get_subnet_list) | |
| softwareProductCode | Yes | OS product code (from ncloud_ses_get_os_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint: true already flags this as a safe read operation, so the description need not repeat that. It adds modest context by specifying the G2 service scope and that results are product codes, but it does not disclose any further behavioral traits such as response shape or pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the action and resource, with no filler or redundant detail. It earns its place entirely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only lookup with two well-documented parameters and no output schema, the description covers the essential return value ('product codes') and scope (SES G2). It doesn't explain the distinction from ncloud_ses_get_node_product_for_change or response structure, but these are not required for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%; both parameters (subnetNo and softwareProductCode) are documented with source references in the schema. The description adds no additional parameter semantics beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and identifies the exact resource ('node server types (product codes)') scoped to 'Search Engine Service (G2)'. This clearly distinguishes it from sibling CDSS and SES tools like ncloud_cdss_get_node_products and ncloud_ses_get_server_specs by product family and generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or alternative guidance in the description. The use case is implied by the name and phrasing – an agent should call this when it needs the list of node product codes for SES G2, and the parameter descriptions reference companion calls (ncloud_ses_get_subnet_list, ncloud_ses_get_os_products) as upstream dependencies, but no exclusions or workflow context are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_node_spec_detailBRead-only
Get server specifications for each node in a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation. The description adds the scope that it applies to each node in a cluster, but it does not disclose details about the response format, potential errors, or whether pagination or filtering is involved. This is acceptable given the annotation, but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that conveys the essential purpose without any fluff. It is well-structured and front-loaded with the verb 'Get'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only tool with one parameter and no output schema, the description is reasonably complete. It clearly states what is returned (server specifications) and the context (each node in a cluster). A more detailed enumeration of the specifications or potential limitations would improve completeness, but the current level suffices.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage: serviceGroupInstanceNo is described as 'Cluster instance number'. The description adds no additional meaning beyond this, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('server specifications for each node in a Search Engine Service cluster'), making the purpose specific and understandable. It does not explicitly differentiate from sibling tools like ncloud_ses_get_server_specs or ncloud_ses_get_node_list, but the phrase 'for each node' adds useful scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or relationship to sibling tools such as ncloud_ses_get_cluster_detail or ncloud_ses_get_node_list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_node_spec_for_change_g3ARead-only
Get the server specs a running Search Engine Service cluster's nodes can be changed to (G3/KVM only). The G2 equivalent is ncloud_ses_get_node_spec_detail.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment; from ncloud_ses_list_clusters) | |
| computeInstanceProductCode | Yes | Current node server type code (from ncloud_ses_get_node_spec_detail) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already covers the safety profile, and the description adds useful scoping context (G3/KVM, running cluster, changeable specs). However, it does not describe output shape, pagination, or other behavioral details; the annotation carries the main behavioral burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The core action and scope are front-loaded, and the sibling alternative is stated efficiently in the second sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only lookup with 100% parameter coverage and a clear G3/G2 distinction, the description is nearly complete. It does not detail the return shape, but since there is no output schema and the purpose is straightforward, this is a minor gap rather than a blocking one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are already explained, including where their values come from. The description adds no significant parameter-level meaning beyond what the schema provides, so the baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: get the server specs that a running Search Engine Service cluster's nodes can be changed to. It also distinguishes itself from ncloud_ses_get_node_spec_detail by noting the G3/KVM-only scope and naming the G2 equivalent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states exactly when this tool applies (G3/KVM only) and explicitly routes the agent to the G2 alternative, ncloud_ses_get_node_spec_detail. This gives clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_node_storageARead-only
Get the block storage attached to a Search Engine Service cluster node (computeInstanceNo from ncloud_ses_get_node_list). Public zone only.
| Name | Required | Description | Default |
|---|---|---|---|
| computeInstanceNo | Yes | Node server instance number (from ncloud_ses_get_node_list) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read, so the description need not repeat that. It does add one genuinely useful constraint beyond the annotations, the 'Public zone only' scope, but says nothing about the shape of the returned storage data or whether a node can have zero attached volumes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the action and resource, with the prerequisite and the zone constraint following. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only lookup with no output schema, the description supplies the key facts an agent needs: what is returned, where the identifier comes from, and the zone restriction. Only the absence of any return-shape hint keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With a single parameter at 100% schema coverage, the schema already documents computeInstanceNo and even names ncloud_ses_get_node_list as its source. The description repeats that provenance rather than adding format or validation detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Get') plus a precise resource ('block storage attached to a Search Engine Service cluster node'), which is more than a restatement of the name. It implicitly differentiates from the near-identical sibling ncloud_cdss_get_node_storage by naming the SES product, though it never states that distinction explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical pointing to ncloud_ses_get_node_list tells the agent where to obtain computeInstanceNo, and 'Public zone only' scopes when the tool is valid. There is no explicit when-to-use vs. alternative guidance beyond that.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_os_monitoringCRead-only
Get OS-level monitoring data for a Search Engine Service node
| Name | Required | Description | Default |
|---|---|---|---|
| metric | Yes | Metric set to retrieve. OS_ALL_METRICS is the only valid value | |
| timeEnd | Yes | End time as epoch milliseconds | |
| interval | No | Aggregation interval (e.g. Min1, Min30, Hour2, Day1). Default: Min1 | |
| timeStart | Yes | Start time as epoch milliseconds (e.g. 1742520660000) — NOT an ISO 8601 string | |
| computeInstanceNo | Yes | Node instance number | |
| serviceGroupInstanceNo | Yes | Cluster instance number (path segment) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only says 'Get' and adds no behavioral context beyond the readOnlyHint annotation. It does not mention response format, aggregation details, time-range limits, rate limits, or any side effects, leaving the agent without additional behavior insights.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words and is front-loaded with the action and resource. It is appropriately concise, though its brevity omits usage guidance that could have been included without harming clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should at least hint at what the response contains or any special limitations, but it does not. It also fails to clarify how this tool differs from ncloud_ses_get_monitoring, so an agent cannot fully determine when to use it or what data to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all six parameters with descriptions. The tool description adds no extra parameter semantics, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Get OS-level monitoring data for a Search Engine Service node' – a specific verb, resource, and scope. The qualifier 'OS-level' hints at differentiation from generic monitoring tools like ncloud_ses_get_monitoring, but it does not explicitly name an alternative, so there is some sibling differentiation but not explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool instead of alternatives such as ncloud_ses_get_monitoring or ncloud_cdss_get_os_monitoring. There are no prerequisites, exclusions, or context that would help an agent choose between related monitoring tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_os_productsARead-only
Get available OS types for Search Engine Service (G2)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already flags this as a safe read operation. The description adds no behavioral details beyond the service scope and what is retrieved, such as return format, pagination, or authentication requirements. It is consistent with the annotation, so no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence (8 words) that is front-loaded and contains no filler. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool with no output schema, the description is fully adequate. It states exactly what the tool returns and for which service, allowing an agent to correctly select and invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, and the description correctly adds nothing about parameters. The baseline for a zero-parameter tool is 4, and there is nothing more to explain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a specific resource ('available OS types'), and a scope ('Search Engine Service (G2)'). This clearly distinguishes it from sibling tools, including the similar ncloud_cdss_get_os_products for a different service.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: this tool is for retrieving OS types specifically for Search Engine Service G2. It does not explicitly mention alternatives or exclusions, but the service scope makes the use case obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_server_generationsBRead-only
Get available node server generations for Search Engine Service
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with the readOnlyHint annotation (a 'Get' operation), so no contradiction. However, it adds no behavioral insight beyond the annotation—no mention of response format, pagination, or limitations. With annotations covering the read-only aspect, the description is minimally adequate but not enriched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence that is front-loaded with the action ('Get') and resource ('available node server generations'). Every word earns its place; no unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple parameterless lookup, and the description names the exact data returned. However, it does not specify the output structure or when to use it relative to other SES lookup tools. Given the absence of an output schema, more detail on the return value could be expected, but the tool's simplicity mitigates this gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so parameter semantics are trivially covered. The description correctly omits parameter details since none exist, and the baseline for zero parameters is 4. No additional parameter explanation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves 'available node server generations' for 'Search Engine Service', using a specific verb and resource. It is distinguishable from siblings like ncloud_ses_get_server_specs and ncloud_cdss_get_server_generations by the resource term and service scope, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No information is given about when to use this tool versus alternatives like ncloud_ses_get_server_specs or ncloud_ses_get_node_products. There are no exclusions, preconditions, or contextual guidance provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_server_specsARead-only
Get available node server types for Search Engine Service (G3/KVM only). softwareProductCode must be a G3 image code — a G2 code from ncloud_ses_get_os_products is rejected.
| Name | Required | Description | Default |
|---|---|---|---|
| softwareProductCode | Yes | G3 OS image code (from ncloud_ses_get_cluster_server_images) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the call as read-only, and the description adds a meaningful behavioral trait: passing a G2 code will be rejected, not silently accepted. It also conveys the G3/KVM-only hard constraint on the API. No output-format details are given, but that is secondary for a simple read-only list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences carry only essential information: what the tool returns and the critical input constraint. Purpose is front-loaded, and the constraint sentence earns its place by preventing a common mistake.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only list operation with no output schema, the description covers purpose, scope, and validation rule. The schema covers the parameter's provenance, so nothing critical is missing. It could optionally name the G3 image source tool directly, but that is already in the schema description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the parameter as a G3 OS image code and its source. The description adds the rejection behavior for G2 codes, which clarifies the allowed values and failure mode beyond the schema. This extra nuance justifies a small bump above the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Get'), resource ('available node server types'), and scope ('for Search Engine Service (G3/KVM only)'), which separates it from generic compute spec tools and from SES product tools. It also references ncloud_ses_get_os_products to clarify the G3/G2 distinction. It doesn't explicitly differentiate from close siblings like ncloud_ses_get_node_products, so 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit when-not rule: a G2 image code from ncloud_ses_get_os_products is rejected, so an agent should not call this with a G2 product code. It also implies the correct input source by requiring a G3 code. It doesn't spell out a full workflow or alternatives for G2, leaving some inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_snapshot_bucketsARead-only
Get Object Storage bucket list available for storing cluster snapshots. ⚠️ Requires ncloud_ses_set_snapshot_api_key to have been run first — without it the call fails with 10115. (The import counterpart, ncloud_ses_get_import_buckets, does NOT need the key.)
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses a critical prerequisite (must run set_snapshot_api_key first) and the specific error code (10115) when that is violated. It also notes the behavioral difference from the import counterpart, adding significant context for agent decision-making.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no waste. The first sentence states the core purpose, and the second adds the prerequisite and alternative. Information is front-loaded and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one parameter, the description covers purpose, prerequisite, alternative, and error condition. It does not explicitly describe the return format (e.g., list of bucket names), though it is implied by 'bucket list'. Given no output schema, a slightly richer response description could help, but it is adequate as is.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% — the only parameter, serviceGroupInstanceNo, is already described as 'Cluster instance number'. The description adds no additional parameter meaning, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), resource ('Object Storage bucket list'), and scope ('for storing cluster snapshots'). It explicitly names the sibling tool ncloud_ses_get_import_buckets and differentiates by the key requirement, so an agent can distinguish it without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit when-to-use guidance: requires ncloud_ses_set_snapshot_api_key to have been run first, otherwise fails with 10115. It also names the alternative (ncloud_ses_get_import_buckets) and clarifies that one does not need the key, providing clear selection logic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_snapshot_historyARead-only
Get snapshot creation history for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description aligns with that by saying 'Get'. It adds the useful scoping detail that this is about 'creation history', but it does not disclose pagination behavior, response shape, or any other behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence with no filler. It front-loads the verb and resource, then immediately scopes the operation to Search Engine Service clusters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only listing tool with one required parameter and fully described schema fields, the description is mostly sufficient. The main minor gap is that it does not clarify the relationship to ncloud_ses_get_snapshot_schedule_history or describe the return shape, but the absence of an output schema and the simple nature of the tool keep this from being a larger deficiency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters are already documented in the input schema. The tool description adds no additional meaning about pageNo, pageSize, or serviceGroupInstanceNo beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a specific resource ('snapshot creation history'), and a clear scope ('Search Engine Service cluster'). It also distinguishes itself from the closely named sibling ncloud_ses_get_snapshot_schedule_history by focusing on 'creation history' rather than 'schedule history'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when snapshot creation history for a Search Engine Service cluster is needed. However, it does not explicitly give usage versus alternatives, especially the similarly named ncloud_ses_get_snapshot_schedule_history, nor does it state when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_snapshot_schedule_historyCRead-only
Get the snapshot scheduling history for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number | |
| pageSize | No | Page size | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the agent already knows the operation is safe and non-mutating. The description adds no behavioral context beyond that, such as whether the history is paginated, what fields are returned, or how scheduling events are represented. With readOnlyHint covering the main risk, there is no contradiction, but also no added behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no superfluous words. It communicates the core purpose efficiently. It is appropriately concise for a simple get operation, though it sacrifices some useful guidance to stay short.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal and leaves out potentially important context. It does not clarify differences from the very similar sibling ncloud_ses_get_snapshot_history, nor does it mention pagination or the nature of the returned history. With no output schema and no return-value description, an agent may struggle to fully understand what it will receive or how to choose this tool over the close sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage: pageNo, pageSize, and serviceGroupInstanceNo all have descriptions. Since the schema fully documents each parameter, the description does not need to compensate. It provides no additional parameter context, which is acceptable at the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Get the snapshot scheduling history' for a 'Search Engine Service cluster'. This clearly identifies the operation and target resource. It differentiates from some siblings by the word 'scheduling', but it does not explicitly call out the closely related ncloud_ses_get_snapshot_history, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance about when to use this tool versus alternatives, such as when to prefer ncloud_ses_get_snapshot_history or how it relates to snapshot schedule management tools. There is no mention of exclusions or conditions. The usage context is entirely implied by the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_subnet_listARead-only
Get available subnet list for Search Engine Service cluster creation (G2)
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_ses_get_vpc_list) | |
| softwareProductCode | Yes | OS product code (from ncloud_ses_get_os_products) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation, and the description's 'Get' wording is consistent with that. The description adds the G2 cluster-creation context but discloses no additional behavioral details such as response contents or whether results are filtered by VPC/product code. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with no filler. The key information — what is retrieved and for which workflow — is front-loaded and appropriately sized for a simple read-only list operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity read-only list tool with fully documented parameters, the description gives adequate orientation: it returns a subnet list for SES G2 cluster creation. It falls slightly short of fully complete because it does not explicitly name the G3 sibling alternative or describe the return shape, but those are minor given the simplicity and schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters already include useful source references in the schema ('from ncloud_ses_get_vpc_list' and 'from ncloud_ses_get_os_products'). The tool description itself adds no parameter-level meaning, so the schema carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a resource ('available subnet list'), and the workflow context ('Search Engine Service cluster creation (G2)'). The 'G2' marker helps distinguish it from the sibling ncloud_ses_get_subnet_list_g3, though it does not explicitly name that sibling or explain what G2 means.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is used when preparing SES G2 cluster creation, which suggests it should be chosen over the G3 variant. However, it does not explicitly state when to use this tool versus ncloud_ses_get_subnet_list_g3 or provide any exclusions or prerequisite guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_subnet_list_g3ARead-only
Get available subnet list for Search Engine Service cluster creation (G3/KVM only)
| Name | Required | Description | Default |
|---|---|---|---|
| vpcNo | Yes | VPC number (from ncloud_ses_get_vpc_list) | |
| isPrivate | No | true: private subnets only, false: public subnets only | |
| softwareProductCode | Yes | G3 OS image code (from ncloud_ses_get_cluster_server_images) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint=true already covering the safe read-only nature, the description adds the G3/KVM-only scope and its purpose in cluster creation. It does not go further to describe the return format, filtering behavior, or whether the list is scoped to a specific VPC beyond what the schema implies. This is acceptable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the operation, resource, and key constraint without wasted words. Every element earns its place and the length is proportional to the simple tool it documents.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with 100% schema coverage and a readOnlyHint annotation, the description is mostly sufficient to guide invocation. However, there is no output schema and the description does not hint at what the returned subnet list contains or any pagination/ordering behavior, leaving a small but noticeable gap for an agent expecting a complete picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema already documents all three parameters with meaningful descriptions (e.g., source functions for vpcNo and softwareProductCode). The description adds no parameter-level detail, but the schema carries the full burden, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a concrete resource ('available subnet list'), and a clear scope ('for Search Engine Service cluster creation (G3/KVM only)'). The 'G3/KVM only' qualifier distinguishes it from the sibling ncloud_ses_get_subnet_list and other similar list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when preparing SES cluster creation on G3/KVM infrastructure. However, it does not explicitly name alternatives or say when NOT to use it, such as pointing to ncloud_ses_get_subnet_list for non-G3 environments. The usage context is clear but the exclusion/alternative guidance is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_upgrade_progressARead-only
Get version upgrade progress for a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| regionNo | Yes | Region number (from ncloud_get_regions) | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this is a safe read operation, and the description does not contradict it. The description adds that the resource is 'version upgrade progress' for an SES cluster, but it does not describe what the response contains, whether it can be polled, or what happens when no upgrade is in progress. With annotations covering the safety profile, the description adds modest but not rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single focused sentence: 'Get version upgrade progress for a Search Engine Service cluster'. It is front-loaded with the action verb, contains no redundant phrasing, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter getter with a readOnly annotation, the schema and annotation cover the invocation basics. However, with no output schema, the description does not clarify what 'progress' looks like in the response, and it omits any temporal context such as the tool being relevant only after an upgrade has been initiated. These are gaps for an agent trying to use the result correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters already have meaningful descriptions in the input schema: 'Region number (from ncloud_get_regions)' and 'Cluster instance number'. The tool description adds no additional parameter-level context beyond this, so it does not need to compensate. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb+resource: 'Get version upgrade progress for a Search Engine Service cluster'. It is specific enough to know this is a read operation on SES upgrade progress, and the term 'progress' differentiates it from the sibling ncloud_ses_upgrade_version which triggers an upgrade. However, it does not explicitly name or contrast against sibling tools, so it stops just short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied but not stated explicitly. The name and description suggest this is used to monitor an in-progress version upgrade, likely after calling ncloud_ses_upgrade_version, but there is no explicit 'when to use' or 'when not to use' guidance and no mention of alternatives such as ncloud_ses_precheck_upgrade or ncloud_cdss_upgrade_status. An agent must infer the intended call sequence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_versionsARead-only
Get available Search Engine (Elasticsearch/OpenSearch) versions
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation aligns with the 'Get' action, so there is no contradiction. However, the description adds no extra behavioral context, such as the format of the returned versions or any regional considerations. Given the annotation, this is acceptable but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence of ten words, with the action and object front-loaded. Every word is necessary; there's no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only operation, the description sufficiently communicates the tool's output scope. It lacks details on the response format, but the absence of an output schema and the simple nature of the task make this a minor omission. The description is complete enough to inform an agent of the tool's function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool accepts no parameters, and the input schema is empty. The description doesn't need to explain parameter semantics, so the baseline score of 4 applies. It does specify the engine type (Elasticsearch/OpenSearch), which provides context beyond an empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('available Search Engine versions'), explicitly naming Elasticsearch/OpenSearch. This clearly differentiates it from sibling version tools like ncloud_nks_get_versions (Kubernetes) and ncloud_cdss_get_kafka_versions (Kafka).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no explicit guidance on when to employ this tool versus similar version-listing siblings. Usage is implied by the name and description, but no alternatives or exclusions are mentioned, which is a notable gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_get_vpc_listARead-only
Get available VPC list for Search Engine Service cluster creation
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is a safe read operation. The description adds the domain-specific context ('available for SES cluster creation') but no additional behavioral details such as auth requirements, rate limits, or return format. For a simple no-parameter list operation, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence: 'Get available VPC list for Search Engine Service cluster creation.' Every word contributes meaning, and there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema, read-only annotation), the description is complete. It conveys the essential purpose and context. The lack of return format details is acceptable because no output schema is provided and this is a straightforward list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is no parameter information to convey. Per the rubric, 0 params earns a baseline of 4. The description doesn't need to add parameter semantics because none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get') and resource ('available VPC list') with explicit context ('for Search Engine Service cluster creation'). This distinguishes it from generic VPC listing tools like ncloud_list_vpcs and sibling service-specific variants like ncloud_cdss_get_vpc_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use this tool: during Search Engine Service cluster creation. It does not explicitly exclude alternatives or name them, but the purpose is specific enough that an agent would know to use this when needing VPCs for SES cluster creation rather than general VPC listing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_list_clustersARead-only
List all Search Engine Service (Elasticsearch/OpenSearch) clusters in the current region
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| vpcName | No | VPC name to filter (exact match) | |
| pageSize | No | Page size (default: 10) | |
| inputText | No | Search keyword to filter cluster names |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the read-only nature is covered. The description adds useful context about region scoping and the service type, but it does not disclose pagination behavior, potential large result sets, or that 'all' might require iterating pages. With annotations covering safety, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no redundancy. It states the action, resource, and scope efficiently. Every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a straightforward list operation with readOnly annotation and fully documented optional parameters. While there is no output schema, the description covers the essential scope and resource type. The only minor gap is not explicitly stating the return format, but for a list tool this is largely implied and pagination is handled by documented parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter (pageNo, vpcName, pageSize, inputText) having a clear description including defaults and matching semantics. The tool description adds no parameter-specific details, but the schema fully carries that burden, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and identifies the exact resource ('Search Engine Service clusters') with clarifying parenthetical '(Elasticsearch/OpenSearch)'. It also specifies scope ('in the current region'), distinguishing it from sibling list tools like ncloud_cdss_list_clusters and ncloud_hadoop_list_clusters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys what the tool does (lists all clusters in the current region), providing enough context for an agent to know when to use it. However, it does not explicitly mention alternatives or exclusion criteria (e.g., when to use ncloud_ses_get_cluster_detail instead), so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_precheck_upgradeA
Pre-check whether a Search Engine version upgrade can proceed. ⚠️ Requires the cluster to have at least one snapshot — returns 10154 otherwise. Create one with ncloud_ses_create_snapshot, which itself needs ncloud_ses_set_snapshot_api_key set first.
| Name | Required | Description | Default |
|---|---|---|---|
| regionNo | Yes | Region number (from ncloud_get_regions) | |
| targetVersionCode | Yes | Target version code (from ncloud_ses_get_versions) | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full behavioral burden. It discloses a failure mode (missing snapshot → 10154) and prerequisite side effects, which is valuable. However, it does not state what the response contains on success or failure beyond the error code, nor explicitly confirm that the precheck itself is read-only, though 'pre-check' implies non-mutating. A 4 is justified given the disclosed error condition and prerequisite dependency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads the purpose in the first sentence, then the critical prerequisite in the second. The warning symbol and error code add value without bloat. Slightly dense with three tool names in one sentence, but each earned its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a precheck gate with no output schema, the description covers purpose, precondition, failure signal, and prerequisite chain. It doesn't explain what a successful precheck returns or how to interpret the response after calling ncloud_ses_upgrade_version, but the core operational knowledge needed to call it correctly is present. The tool appears part of a broader SES workflow, and the description integrates it well.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: all three parameters (regionNo, serviceGroupInstanceNo, targetVersionCode) already have descriptions. The description adds context for targetVersionCode via the sibling ncloud_ses_get_versions hint in the schema, but the main description itself does not add new parameter semantics beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('pre-check') and resource ('Search Engine version upgrade'), and clarifies it is a precheck gate for whether an upgrade can proceed. It also distinguishes the tool from the actual upgrade operation (ncloud_ses_upgrade_version, ncloud_cdss_upgrade_precheck) and from general cluster tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly warns that a snapshot is required and names the exact error code (10154) if absent. It also provides the prerequisite chain: create snapshot with ncloud_ses_create_snapshot, which itself requires ncloud_ses_set_snapshot_api_key. This is clear when-to-use and how-to-prepare guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_reset_passwordB
Reset the Search Engine admin account password
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number | |
| searchEngineUserPassword | Yes | New admin password (8-20 chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries full responsibility for behavioral disclosure. It only states the action 'Reset' without mentioning side effects, permission requirements, reversibility, or impact on existing sessions—critical gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence that immediately states the purpose. No filler words, every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter reset operation with well-documented schema, this is minimally viable. However, the lack of behavioral transparency and usage guidance makes it incomplete for a mutation tool without annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides clear descriptions for both parameters ('Cluster instance number' and 'New admin password (8-20 chars)'), giving 100% coverage. The description adds no extra parameter meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Reset the Search Engine admin account password' clearly states the specific action (reset) and target resource (Search Engine admin account password), distinguishing it from sibling tools like ncloud_cdss_reset_cmak_password and ncloud_nks_reset_kubeconfig.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It only states the operation without contextual usage information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_restart_clusterAIdempotent
Restart a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds no additional context about the restart behavior (e.g., potential downtime, effect on running jobs, or confirmation requirements). With existing annotations, the description is acceptable but adds no extra transparency value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise, front-loaded sentence that clearly states the action and target. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple signature with one well-documented parameter, annotations cover safety/idempotency, and the description identifies the resource. Missing output schema is a minor gap, but for a restart operation, the essential information is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the sole parameter 'serviceGroupInstanceNo' is described as 'Cluster instance number'). The description does not add any parameter-level information, but the schema already fully documents the required input, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Restart') and identifies the exact resource ('Search Engine Service cluster'). It clearly distinguishes this tool from sibling operations like delete, create, or upgrade, and matches the tool name precisely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, situations where a restart is appropriate, or exclude use cases such as other restart operations for different services (e.g., CDSS restart tools).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_run_importA
Start a data import job from Object Storage into a Search Engine Service cluster. ⚠️ With isBulkFormat=true the index parameter is ignored — each line's own _index decides the destination, so a bulk file without _index imports nothing. The import history does not report why a job produced no documents, so check the file's format first.
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes | Target index name. Ignored when isBulkFormat=true — the file's own _index wins | |
| objectKey | Yes | Object key (path) of the file in the bucket | |
| bucketName | Yes | Object Storage bucket name (from ncloud_ses_get_import_buckets) | |
| dataSource | Yes | Data source type | |
| isBulkFormat | No | Whether the file is in Elasticsearch bulk format. If true, every line must carry its own _index | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses two important behavioral traits: in bulk format the index parameter is ignored and each line's _index decides the destination, and the import history will not explain why a job produced no documents. This goes well beyond a generic start-action, though it does not cover async behavior, return value, or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action, followed by a high-value warning and a practical pre-check. There is no filler, and the warning earns its place because it prevents a silent failure mode.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main pitfall and gives a pre-flight check, but leaves gaps: no mention that the job is likely asynchronous, no pointer to monitoring via ncloud_ses_get_import_history, and no clarification that the schema-required index parameter must still be supplied even when it is ignored. With no output schema, return behavior is also unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all six parameters with 100% coverage, so the baseline is 3. The description adds real value by explaining the consequence of isBulkFormat=true ('imports nothing' without _index) and the diagnostic limitation, reinforcing and extending the schema's index description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states exactly what the tool does: start a data import job from Object Storage into a Search Engine Service cluster. The verb 'Start' and the resource 'data import job' are specific and self-explanatory, distinguishing it from sibling get/stop operations even without naming them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus related tools like ncloud_ses_get_import_buckets, ncloud_ses_get_import_history, or ncloud_ses_stop_import. The description implies usage by describing the action and advises checking the file format first, but offers no selection criteria, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_set_snapshot_api_keyAIdempotent
Set the Object Storage API authentication key used for snapshots. This is the first step of the snapshot chain — ncloud_ses_get_snapshot_buckets, ncloud_ses_create_snapshot and the scheduling tools all fail with 10115 until it is set.
| Name | Required | Description | Default |
|---|---|---|---|
| secretKey | Yes | Object Storage secret key | |
| accessKeyId | Yes | Object Storage access key | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as idempotent and non-destructive. The description adds behavioral context beyond that: the prerequisite relationship and the specific 10115 failure downstream. This helps an agent understand the operational consequence of skipping this tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core action is front-loaded, and the second sentence provides critical sequencing information that directly informs calling behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter set-key operation with no output schema, the description is complete enough: it states what the tool does, what credentials are involved, and why it must be called first. It does not explain return values, but that is not essential for selecting and invoking this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents serviceGroupInstanceNo, accessKeyId, and secretKey. The description adds general context about Object Storage authentication but does not add parameter-specific meaning beyond what the schema already provides, matching the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb ('Set') and resource ('Object Storage API authentication key used for snapshots'), and it names the downstream chain it belongs to. This clearly distinguishes it from sibling snapshot tools like ncloud_ses_get_snapshot_buckets and ncloud_ses_create_snapshot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear usage context by identifying this as the first step of the snapshot chain and explicitly warning that sibling tools fail with 10115 until it is set. It does not enumerate when-not-to-use cases, but the sequencing guidance is strong enough for an agent to decide when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_set_snapshot_scheduleAIdempotent
Set a daily snapshot schedule for a Search Engine Service cluster. ⚠️ Requires ncloud_ses_set_snapshot_api_key first (otherwise 10115).
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Object Storage bucket to store snapshots in | |
| scheduledDay | Yes | Scheduled day | |
| snapshotName | Yes | Name prefix for scheduled snapshots | |
| scheduledHour | Yes | Scheduled hour | |
| scheduledMinute | Yes | Scheduled minute | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, so the safety profile is known. The description adds the critical dependency on the API key and the resulting error code (10115), which is behavioral context not present in the schema or annotations. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a critical warning appended. It is front-loaded with the action and resource, and the prerequisite warning is concise. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a configuration setter with no output schema, the description covers the essential action and the key prerequisite. Combined with the annotations (idempotent, non-destructive) and 100% parameter coverage, nothing critical is missing. It could have mentioned that the schedule recurs daily, but that's already in the purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is documented (e.g., bucketName, scheduledHour). The description does not add meaning beyond the schema, but since coverage is high, a baseline of 3 is appropriate. It could have explained the format of scheduledDay/hour/minute, but the schema already labels them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set a daily snapshot schedule') and the resource ('Search Engine Service cluster'). It distinguishes from siblings like ncloud_ses_create_snapshot (one-off) and ncloud_ses_unset_snapshot_schedule (removing). The specificity of 'daily' further clarifies scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly names a required prerequisite (ncloud_ses_set_snapshot_api_key) and the error code if not met, giving clear when-to-use guidance. It does not explicitly contrast with alternatives, but the prerequisite and the daily schedule nature make the usage context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_stop_importAIdempotent
Stop the running data import job on a Search Engine Service cluster
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds the fact that it targets a 'running' job, which is useful context, but does not disclose whether the job can be resumed, partial data impact, or response behavior. With annotations present, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, clear sentence with no fluff. The action and target are front-loaded, making it immediately scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple stop action with one parameter, the description is largely complete. It lacks explicit notes on prerequisites (e.g., job must be running) and does not specify return values, but given the low complexity and existing annotations, the gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter 'serviceGroupInstanceNo' is described as 'Cluster instance number'. The description does not add any additional meaning beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('stop'), resource ('data import job on a Search Engine Service cluster'), and implies it applies to a running job. It distinguishes itself from sibling tools like ncloud_ses_run_import and ncloud_ses_get_import_history by focusing on the stopping action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you have a running import job to stop) but does not explicitly state when to use it versus alternatives or provide any exclusions. It lacks guidance on prerequisites or consequences, so an agent must infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_unset_snapshot_scheduleA
Release the snapshot schedule for a Search Engine Service cluster. This only removes the schedule, not existing snapshots.
| Name | Required | Description | Default |
|---|---|---|---|
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the behavioral burden. It usefully discloses that existing snapshots are preserved, but it doesn't mention permissions, idempotence, or consequences for future scheduled snapshots. This is a minimal but non-trivial disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences: the first states the operation, the second clarifies a key boundary. No filler; the information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, no-output-schema tool, the description plus schema covers what the tool does, what it acts on, and an important non-effect. It is slightly incomplete on when to use it and operational prerequisites, but the low complexity makes it largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the single parameter serviceGroupInstanceNo is already documented as the cluster instance number. The description only confirms the target is an SES cluster and adds no format or usage detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Release'/'removes') on a precise resource (snapshot schedule for a Search Engine Service cluster). The second sentence distinguishes it from snapshot creation/deletion, making the tool's scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the intended use inferable ('remove the schedule') and excludes snapshot deletion, but it never names complementary tools like ncloud_ses_set_snapshot_schedule or ncloud_ses_create_snapshot, nor states when to prefer them. Usage guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_ses_upgrade_versionA
Upgrade the Search Engine version of a cluster. Run ncloud_ses_precheck_upgrade first. ⚠️ The pre-check requires an existing snapshot — it fails with 10154 if the cluster has none, so the full chain is ncloud_ses_set_snapshot_api_key → ncloud_ses_get_snapshot_buckets → ncloud_ses_create_snapshot → ncloud_ses_precheck_upgrade → this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| regionNo | Yes | Region number (from ncloud_get_regions — this is regionNo, not the region code) | |
| targetVersionCode | Yes | Target version code (from ncloud_ses_get_versions) | |
| serviceGroupInstanceNo | Yes | Cluster instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the behavioral disclosure burden. It does this well by revealing the snapshot requirement, the 10154 failure mode, and the complete prerequisite chain. It stops short of full transparency because it does not mention async/long-running behavior or the likely follow-up ncloud_ses_get_upgrade_progress, but it goes well beyond a minimal mutation description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences and every sentence earns its place: the core action, the mandatory pre-check, and the exact chain with the failure condition. The warning is front-loaded and the chain is compact, making the required workflow easy to follow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a cluster upgrade tool with three documented parameters, no annotations, and no output schema, the description is highly complete: it encodes the prerequisite chain, error condition, and parameter sources. It loses a point because it does not indicate what happens after invocation, such as checking upgrade progress with ncloud_ses_get_upgrade_progress, which would make the full lifecycle explicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already annotated with its provenance, e.g., 'from ncloud_get_regions' and 'from ncloud_ses_get_versions.' The tool description adds no further parameter-level detail beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins with a specific verb and resource: 'Upgrade the Search Engine version of a cluster.' It is immediately clear what operation is performed, and the prerequisite chain references ncloud_ses_precheck_upgrade, distinguishing this tool as the final upgrade step rather than the pre-check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Run ncloud_ses_precheck_upgrade first' and then provides the full ordered chain ending in this tool. It also gives the conditional rule: the pre-check fails with 10154 if no snapshot exists, so the agent knows exactly when each prerequisite is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_block_storage_protectionBIdempotent
Set return protection for a block storage instance
| Name | Required | Description | Default |
|---|---|---|---|
| isReturnProtection | Yes | Whether to enable return protection (true to protect, false to unprotect) | |
| blockStorageInstanceNo | Yes | Block storage instance number to set protection |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the annotations. It does not explain that return protection prevents deletion, that the tool can enable or disable protection, or any side effects. While annotations provide idempotentHint and destructiveHint, the description itself is a one-liner that offers no additional insight into the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and directly to the point. It contains no wasted words, though it could include more contextual detail without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, has full parameter documentation, and annotations cover idempotency and non-destructiveness. However, the description does not explain what 'return protection' means or its implications, leaving a gap in understanding for an agent unfamiliar with the domain. It is minimally adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters clearly described (e.g., 'true to protect, false to unprotect' for isReturnProtection). The tool description does not add any extra meaning beyond the schema, so the baseline of 3 stands.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Set return protection for a block storage instance' clearly specifies the verb (set), the resource (block storage instance), and the attribute (return protection). It effectively distinguishes from sibling tools like ncloud_nks_set_return_protection and ncloud_set_nas_volume_return_protection by naming the exact resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description does not mention related tools or provide any contextual hints about when setting return protection is appropriate, making it purely declarative without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_deny_allow_group_descAIdempotent
Set or update the description of a Network ACL Deny-Allow Group
| Name | Required | Description | Default |
|---|---|---|---|
| networkAclDenyAllowGroupNo | Yes | Deny-Allow Group number | |
| networkAclDenyAllowGroupDescription | Yes | New description for the Deny-Allow Group |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds the 'Set or update' semantics which aligns with idempotency, but does not disclose additional behavioral details such as whether the description is overwritten or if the group must exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words, front-loading the action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter update operation with annotations covering idempotency and non-destructiveness, the description is largely sufficient. However, it does not mention any effects on existing data or error conditions, leaving some nuance implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully documented in the input schema with descriptions ('Deny-Allow Group number' and 'New description for the Deny-Allow Group'). The tool description adds no further parameter-level meaning beyond the schema's 100% coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Set or update' and names the exact resource 'description of a Network ACL Deny-Allow Group', clearly distinguishing it from sibling tools like ncloud_set_network_acl_description and ncloud_create_deny_allow_group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear statement of the tool's action but does not explicitly state when to use this tool versus alternatives, nor any exclusions or prerequisites. Context must be inferred from the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_deny_allow_group_ipsAIdempotent
Set the IP list for a Network ACL Deny-Allow Group
| Name | Required | Description | Default |
|---|---|---|---|
| ipList | Yes | List of IP addresses to set for the Deny-Allow Group | |
| networkAclDenyAllowGroupNo | Yes | Deny-Allow Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, but the description adds no extra behavioral context. It does not disclose that setting the IP list likely overwrites the entire list, which is a critical operational detail for a 'set' operation. The absence of this information makes the behavior ambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, focused sentence that communicates the core purpose with no redundancy or unnecessary detail. It is well-structured and immediately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (two params, no output schema) and the schema covers parameter descriptions. However, the description fails to mention that the IP list is likely replaced in full, and it lacks guidance on when to use this tool relative to other deny-allow group operations. This leaves some gaps for an agent needing to understand the full effect and context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter texts for both networkAclDenyAllowGroupNo and ipList. The description adds no additional parameter-level meaning, so it relies on the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the resource ('IP list for a Network ACL Deny-Allow Group'), distinguishing it from sibling tools like ncloud_set_deny_allow_group_desc or CRUD operations on deny-allow groups. This is a specific and unambiguous purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when one needs to set a deny-allow group's IP list, but it does not explicitly say when to use it over alternatives or mention that it replaces the existing list. There is no guidance on context or exclusions, leaving the agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_desired_capacityAIdempotent
Set the desired capacity for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| desiredCapacity | Yes | Desired number of instances | |
| autoScalingGroupNo | Yes | Auto Scaling Group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. However, the description adds no additional behavioral context beyond restating the function, such as the fact that setting the capacity may immediately trigger scaling activities, or that the value is subject to ASG min/max constraints. It provides no value beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no filler, front-loading the core action. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the operation (two parameters, no nested objects, no output schema) and the presence of helpful annotations, the description is nearly complete. It could briefly mention that the capacity may be constrained by the ASG's min/max settings, but overall it adequately covers the essential information for this low-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides complete descriptions for both parameters (autoScalingGroupNo and desiredCapacity), so the description adds no additional meaning. Coverage is 100%, which sets the baseline at 3, and the description does not enhance parameter understanding further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Set the desired capacity for an Auto Scaling Group' uses a specific verb ('set') and a clear resource ('desired capacity for an Auto Scaling Group'), accurately distinguishing it from sibling tools like ncloud_update_asg (which updates broader ASG settings) and ncloud_put_scaling_policy (which configures scaling policies).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit usage guidance is provided. The intended use is implied by the tool name and description (manually adjusting ASG capacity), but there is no mention of when to choose this over alternatives, such as scaling policies or scheduled actions, nor any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_file_pluginsAIdempotent
Replace the full set of file monitoring plugins for a server instance (sends the entire list).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| configList | Yes | Full list of file paths to monitor (replaces existing) | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations by emphasizing that the operation replaces the entire set and sends the whole list, clarifying that the provided configList is authoritative. It does not contradict the idempotentHint or destructiveHint, and it gives the agent a clear understanding that this is a bulk overwrite operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that directly states the action and its key nuance. It is front-loaded with the verb 'Replace' and contains no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the combination of description, schema, and annotations provides all necessary information for correct invocation: purpose, parameter meanings, and safety profile. The absence of an output schema and the clear behavior make this complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all three parameters, including that configList is the full list replacing existing. The description's mention of 'sends the entire list' reinforces but does not add new semantics beyond the schema. With full schema coverage, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: replacing the full set of file monitoring plugins for a server instance. The phrase 'full set' and 'sends the entire list' distinguishes it from incremental add/remove operations among its siblings, making purpose very clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys that this tool is for full replacement of the plugin list, implying it should be used when the goal is to overwrite the entire configuration rather than add or remove individual plugins. However, it doesn't explicitly name alternatives like 'add' or 'remove', so it stops short of explicit when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_lb_descriptionAIdempotent
Set or update the description of a load balancer instance
| Name | Required | Description | Default |
|---|---|---|---|
| loadBalancerInstanceNo | Yes | Load balancer instance number | |
| loadBalancerDescription | Yes | New description for the load balancer |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds no additional behavioral context (e.g., prerequisites, state requirements, rate limits), but it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 10-word sentence that is front-loaded with the verb and quickly conveys the action and resource, with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter mutation with idempotent and non-destructive annotations, the description adequately covers the tool's purpose. No output schema exists, but that is acceptable given the simplicity. It doesn't mention potential side effects, but its minimal nature makes it sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning the input schema already fully documents both parameters. The description adds no extra parameter semantics beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set or update') and the resource ('description of a load balancer instance'), making it unambiguous and distinguishing it from sibling set_description tools for other resources. The verb+resource structure is specific and informative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its usage by naming the target resource, but it provides no explicit guidance about when to use this tool over alternatives or any exclusions. Among many sibling set_description tools, there is no mention of when to choose this one or what limitations exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_lb_subnetBIdempotent
Set subnets for a load balancer instance
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNoList | Yes | List of subnet numbers to assign to the load balancer | |
| loadBalancerInstanceNo | Yes | Load balancer instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what the annotations already indicate (idempotentHint=true, destructiveHint=false). It does not state whether existing subnets are replaced or appended, but the annotations cover the safety profile, so the description is not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no extraneous information. It effectively communicates the core action in a concise and front-loaded manner.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter operation with full schema coverage and annotations, the description is sufficient. It could mention whether subnets are replaced or appended, but given the tool's low complexity and the richness of the structured metadata, the current level of detail is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides clear descriptions for both parameters (subnetNoList and loadBalancerInstanceNo), and the schema description coverage is 100%. The description itself does not add extra parameter semantics beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Set' with the resource 'subnets for a load balancer instance', clearly identifying the operation. It does not explicitly differentiate from similar sibling tools like ncloud_nks_update_lb_subnet, which also updates load balancer subnets in a Kubernetes context, but the naming and phrasing make the target resource clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There are no mentions of prerequisites, exclusions, or related tools, leaving the agent to infer usage entirely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_login_aliasAIdempotent
Set the sub-account login alias (3-20 chars of lowercase letters and digits). Sub accounts sign in through this alias.
| Name | Required | Description | Default |
|---|---|---|---|
| loginAlias | Yes | Login alias (3-20 chars, lowercase letters and digits) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, covering safety. The description adds the semantic context that this alias is the sub-account login identity, which is useful. However it doesn't say whether it overwrites an existing alias, requires admin permission, or affects active sessions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: the action and its constraint first, then the reason this resource matters. No filler, no redundancy, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter setter with annotations covering idempotency and a complete schema, the description is minimally adequate. It omits mutation semantics that matter here: overwrite behavior, uniqueness constraints, and permission requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents the loginAlias constraint (pattern ^[a-z0-9]{3,20}$). The description repeats the same 3-20 char lowercase/digit rule without adding format, uniqueness, or collision behavior. Baseline 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Set') and resource ('sub-account login alias'), so an agent knows exactly what this mutates. It doesn't explicitly distinguish itself from the sibling ncloud_get_login_alias, though the verb 'set' vs 'get' makes the difference obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when the tool is used ('Sub accounts sign in through this alias') but gives no explicit when-to-use/when-not guidance, no prerequisites, and no alternatives. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_member_server_image_sharingAIdempotent
Set sharing permission for a member server image (replaces existing permissions)
| Name | Required | Description | Default |
|---|---|---|---|
| targetLoginIdList | Yes | List of target login IDs to set as sharing permission (replaces existing) | |
| memberServerImageInstanceNo | Yes | Member server image instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations provide idempotentHint=true and destructiveHint=false, but the description adds valuable behavior: 'replaces existing permissions', indicating that the entire permission list is overwritten. This is useful context beyond the annotations and does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and resource, and includes a parenthetical clarification. There is zero wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only 2 parameters, full schema coverage, and clear annotations, the description covers the essential operation and its replacement behavior. It doesn't mention response format or prerequisites, but for a simple set operation with no output schema, these are less critical. The description is complete enough for most use cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters fully described (memberServerImageInstanceNo, targetLoginIdList). The tool description itself does not add additional parameter semantics; it relies on the schema, which is adequate. Baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Set sharing permission') and target resource ('member server image'), while adding the key qualifier '(replaces existing permissions)' that distinguishes it from sibling tools like add/remove sharing. This makes the purpose specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'replaces existing permissions' implies this tool is for full replacement rather than incremental add/remove operations, providing clear usage context. However, it does not explicitly name alternative tools or state when not to use it, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_nas_volume_access_controlCIdempotent
Set access control for a NAS volume instance (server-based or custom IP-based)
| Name | Required | Description | Default |
|---|---|---|---|
| customIpList | No | List of custom IPs to allow access | |
| nasVolumeInstanceNo | Yes | NAS volume instance number | |
| serverInstanceNoList | No | List of server instance numbers to allow access |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (idempotentHint=true, destructiveHint=false) are consistent with the description, but the description adds no extra behavioral context. It does not disclose whether this overwrites the entire access control list, what happens to existing rules, or any side effects. Given the 'set' semantics, this is a significant omission.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with a clarifying parenthetical. It is front-loaded and contains no fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema and optional parameters, the description is too brief. It fails to explain the full replacement behavior, usage context, or expected response. The existence of sibling add/remove tools makes the 'set' semantics ambiguous without further explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so each parameter already has a description. The description's phrase 'server-based or custom IP-based' maps to the two list parameters but adds minimal extra meaning. It does not clarify whether at least one list is required or if both can be combined, which would be valuable given neither is explicitly required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the resource ('NAS volume instance'), and distinguishes the two access control types (server-based or custom IP-based). However, it does not explicitly differentiate from sibling tools like ncloud_add_nas_volume_access_control or ncloud_remove_nas_volume_access_control, leaving the 'set' vs 'add/remove' ambiguity unresolved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool compared to the add/remove variants. There is no mention of whether this replaces existing rules, whether both lists can be used together, or any prerequisites or conditions. The agent is left to infer usage from the tool name and sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_nas_volume_return_protectionBIdempotent
Set return protection for a NAS volume instance
| Name | Required | Description | Default |
|---|---|---|---|
| isReturnProtection | Yes | Whether to enable return protection (true=protected, false=unprotected) | |
| nasVolumeInstanceNo | Yes | NAS volume instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds no extra behavioral context, such as what enabling return protection actually does (e.g., prevents deletion) or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no redundant wording or unnecessary details. It gets straight to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple configuration setter with full schema and annotations, this is minimally viable. However, it lacks context about what return protection means or when to use it, which limits completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters documented. The description adds no parameter-level detail beyond what the schema already provides, making baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Set' and clearly identifies the resource as 'return protection for a NAS volume instance'. This is distinct from other NAS operations like access control or size changes, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool, what prerequisites exist, or how it compares to alternatives (e.g., ncloud_set_nas_volume_access_control). It simply states the action without contextualizing its typical use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_nat_gateway_descriptionAIdempotent
Set or update the description of a NAT Gateway instance
| Name | Required | Description | Default |
|---|---|---|---|
| natGatewayInstanceNo | Yes | NAT Gateway instance number | |
| natGatewayDescription | Yes | New description for the NAT Gateway |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false, and the description aligns with these by saying 'Set or update.' However, the description does not add extra behavioral context, such as what happens if the instance does not exist, validation rules, or whether the update is immediately effective. With annotations, this is adequate but not enhanced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action, and contains no extraneous information. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, non-destructive update operation with idempotency hints and fully documented parameters, the description is largely complete. It does not describe return values, but no output schema exists, and the operation's outcome is self-evident. Missing details like error scenarios or prerequisites are not critical for this straightforward tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% parameter description coverage ('NAT Gateway instance number' and 'New description for the NAT Gateway'). The tool description does not add any additional semantic detail beyond what is in the schema, so it meets the baseline for good schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set or update') and the resource ('description of a NAT Gateway instance'). It is specific and unambiguous, distinguishing it from read-only or deletion tools for the same resource. The verb+resource structure is precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (when you need to set or update a NAT Gateway description), but it does not explicitly mention alternatives or exclusions. Sibling tools like ncloud_get_nat_gateway_detail or ncloud_list_nat_gateways are not referenced, so the guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_network_acl_descriptionAIdempotent
Set or update the description of a Network ACL
| Name | Required | Description | Default |
|---|---|---|---|
| networkAclNo | Yes | Network ACL number | |
| networkAclDescription | Yes | New description for the Network ACL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds no extra behavioral context beyond the simple 'set or update' action, such as effects on existing rules or whether the description is required to be non-empty. It does not contradict annotations, but provides no additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the action and resource. Every word earns its place, with zero redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update tool with only 2 documented parameters, no output schema, and annotations covering idempotency and destructiveness, the description is fully sufficient. The tool's purpose and required inputs are unambiguous, and no additional context is necessary for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters are clearly documented ('Network ACL number' and 'New description'). The description adds no extra meaning beyond the schema, but this is acceptable given the high coverage. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Set or update') and the resource ('Network ACL description'), making the tool's purpose unambiguous. It distinguishes from sibling tools like ncloud_get_network_acl_detail or ncloud_delete_network_acl by specifying exactly what it modifies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for modifying an existing Network ACL's description, but provides no explicit guidance on when to prefer this tool over alternatives (e.g., using ncloud_set_subnet_network_acl for subnet association, or ncloud_create_network_acl for new ACLs). There are no exclusions or alternative recommendations, but the context is clear enough for basic selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_port_pluginsAIdempotent
Replace the full set of port monitoring plugins for a server instance (sends the entire list).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| portList | Yes | Full list of port numbers to monitor (replaces existing) | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by explaining that this is a full replacement operation, which implies existing plugins not in the new list will be removed. This is important behavioral context that the annotations (idempotentHint, destructiveHint) do not fully convey. The description is transparent about the 'replace' semantic.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and key detail. It contains no filler and is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple 3-parameter schema, complete schema coverage, and no output schema, the description adequately explains the tool's purpose and behavior. It covers the essential 'full replace' semantic, which is the crucial context an agent needs. No major gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage with descriptions for all parameters, including the key note that portList 'replaces existing'. The description adds little beyond that, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Replace' and clearly identifies the resource ('port monitoring plugins') and scope ('for a server instance'). It also clarifies the key behavior ('sends the entire list'), which distinguishes it from sibling tools like add/remove/get port plugins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly communicates when to use this tool: when you need to replace the entire set of port monitoring plugins rather than add or remove individual ones. It does not explicitly name alternatives, but the context of sibling tools (add/remove) makes the usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_process_pluginsAIdempotent
Replace the full set of process monitoring plugins for a server instance (sends the entire list).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target type (default 'vpcserver') | |
| configList | Yes | Full list of process names to monitor (replaces existing) | |
| instanceNo | Yes | Server instance number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond the annotations by emphasizing that the entire list must be sent, which signals a full replacement operation with no partial-update capability. The annotations already declare idempotentHint=true and destructiveHint=false, and the description does not contradict them. It could mention consequences of omitting existing plugins, but 'replace' plus 'sends the entire list' covers the core behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the key verb 'Replace', and includes just enough detail to clarify the important 'entire list' behavior. No filler or redundancy; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple set-type operation with good annotations and a schema covering all parameters, the description is reasonably complete. It doesn't explicitly state that plugins not in the list will be removed, but 'Replace' implies that. It also omits any mention of prerequisites or post-conditions, but given the low complexity and no output schema, the description is sufficient for an agent to act correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters, including configList as 'Full list of process names to monitor (replaces existing)'. The description's phrasing 'sends the entire list' merely restates what the schema already conveys. No additional semantic value is added for instanceNo or type beyond their schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Replace') and resource ('full set of process monitoring plugins for a server instance'), clearly distinguishing this from sibling tools like add/remove. The parenthetical '(sends the entire list)' reinforces the full-replacement semantics, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when you want to replace the entire set of process plugins rather than adding or removing individual ones. It does not explicitly name alternative tools (e.g., ncloud_add_process_plugin) or state when not to use it, but the context is clear enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_protect_terminationAIdempotent
Set or unset termination protection on a server instance
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNo | Yes | Server instance number | |
| isProtectServerTermination | Yes | Whether to enable termination protection |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds the 'set or unset' behavior, indicating the tool toggles protection both on and off, which is useful beyond the schema's boolean parameter. This aligns with annotations, no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that immediately conveys the tool's purpose. No filler, effectively front-loaded, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema and supportive annotations, the description is sufficient. It fully explains the operation and resource, and the schema covers the parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; both parameters have descriptive names and descriptions in the schema. The tool description adds no extra parameter information, so it relies on the schema, which fully documents the two parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set or unset') and resource ('termination protection on a server instance'), clearly distinguishing it from sibling tools for other resource types (e.g., block storage, NAS). It precisely conveys the tool's function without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use it: to enable or disable termination protection for a server instance. It does not explicitly name alternatives or exclusions, but the resource-specific language makes the context obvious and excludes non-server resources.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_regionAIdempotent
Set the active Ncloud region by code (KR, JPN, SGN, USWN, DEN) or Korean name (한국, 일본, 싱가포르, 미국, 독일)
| Name | Required | Description | Default |
|---|---|---|---|
| region | Yes | Region code (KR, JPN, SGN, USWN, DEN) or Korean name (한국, 일본, 싱가포르, 미국, 독일) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds that it accepts both code and Korean name. No contradiction; it aligns with the mutation being idempotent and non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action and resource, with no unnecessary words. It is perfectly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple setter tool with no output schema, the description adequately covers the input values and the action. It does not explain what 'active' means or persistence, but given low complexity, it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the tool description essentially repeats the schema's parameter description. No additional meaning is added beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set the active Ncloud region') and specifies allowed values (codes and Korean names). It distinguishes from sibling tools like ncloud_get_regions and ncloud_get_current_region by indicating this is a mutation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. While the context implies it for changing the active region, there is no guidance on when not to use it or when to use siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_route_table_descriptionBIdempotent
Update the description of a route table
| Name | Required | Description | Default |
|---|---|---|---|
| routeTableNo | Yes | Route table number | |
| routeTableDescription | Yes | New description for the route table |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond the annotations. Annotations already indicate idempotentHint=true and destructiveHint=false, but the description does not mention that the existing description is overwritten or any other side effects. With annotations present, some additional context is expected, but none is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the verb and resource. Every word earns its place, with no unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with fully described parameters and supporting annotations, the description is sufficient. The only minor gap is that it does not explicitly state that the new description replaces the existing one, but this is implied by the verb 'update' and the parameter name. Given the low complexity, the description is complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with clear descriptions for routeTableNo and routeTableDescription. The tool description does not add any extra semantic meaning beyond what the schema already provides, justifying the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update the description of a route table' uses a specific verb ('update') and clearly identifies the resource ('route table') and attribute ('description'). This distinguishes it from sibling tools like ncloud_create_route_table, ncloud_delete_route_table, and ncloud_set_network_acl_description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. The usage is only implied by the name and description, which is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_server_log_collectionBIdempotent
Configure log collection on VPC servers in Cloud Log Analytics. Returns the agent install key and the install command to run on each server.
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region | |
| collectingInfos | Yes | Log collection settings, one entry per log path/server |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior: it returns an agent install key and an install command that must be run on each target server, which tells the agent this is a two-step provisioning flow, not a fire-and-forget mutation. It doesn't address permissions or how to undo the configuration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero filler, with the operation and its return payload front-loaded. Nothing is repeated from the name or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully discloses the return payload, and parameters are fully documented in the schema. What's missing is the surrounding workflow: that server metadata should first be retrieved from ncloud_list_log_servers and how the returned install key is used.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including per-field notes like 'from ncloud_list_log_servers', so the schema carries the parameter burden. The description adds no syntax, format, or default information beyond what the schema already provides, which is the expected baseline when the schema is this complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Configure log collection on VPC servers'), names the service context (Cloud Log Analytics), and even says what comes back (agent install key + install command). It is clearly distinct from sibling log-query tools like ncloud_search_logs or ncloud_list_log_servers, though it never names a sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not, or prerequisite guidance appears in the description. The schema hints that servername/macAddr/osType come from ncloud_list_log_servers, but that workflow dependency is not stated in the description where an agent would look for routing advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_sub_account_access_key_statusAIdempotent
Activate or deactivate a sub account's API access key. A deactivated key cannot call the API but is not deleted, so it can be re-activated later.
| Name | Required | Description | Default |
|---|---|---|---|
| active | Yes | true: activate, false: deactivate | |
| accessKey | Yes | Access key to change (see ncloud_list_sub_account_access_keys) | |
| subAccountId | Yes | Sub account ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=false and idempotentHint=true, but the description adds concrete behavioral meaning beyond them: a deactivated key 'cannot call the API' and the operation is reversible ('can be re-activated later'). This enriches the annotation profile rather than merely restating it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero redundant content. The core action is front-loaded in sentence one, and sentence two carries the essential behavioral caveat about non-deletion. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter state toggle with annotations already covering idempotency and destructiveness, the description covers the necessary semantics. The accessKey parameter schema reference to ncloud_list_sub_account_access_keys helps an agent source a valid value. The lack of an output schema is acceptable for this operation type, though return behavior is not described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (active, accessKey, subAccountId) are already documented in the schema, including the true/false activation semantics of 'active'. The description adds no additional parameter-level detail, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Activate or deactivate') with a precise resource ('a sub account's API access key'). It differentiates from siblings like ncloud_delete_sub_account_access_key by clarifying the key 'is not deleted' and can be re-activated. The action and scope are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence gives clear operational context: a deactivated key 'cannot call the API' but remains available for later re-activation. This implies the tool is for temporary disabling rather than permanent removal. However, it does not explicitly name alternatives or state when not to use it, leaving some routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_subnet_network_aclBIdempotent
Set the Network ACL for a subnet
| Name | Required | Description | Default |
|---|---|---|---|
| subnetNo | Yes | Subnet number to assign the Network ACL to | |
| networkAclNo | Yes | Network ACL number to assign |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the agent knows this is a safe, repeatable operation. The description adds no additional behavioral context, such as whether an existing ACL association is replaced or any side effects, but does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the core purpose with zero wasted words. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with full schema coverage and safety annotations, the description is minimally adequate. However, it lacks context about behavior when a subnet already has an ACL or whether the network ACL must exist, leaving some gaps for a complex cloud environment.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters with descriptions (100% coverage), so the baseline is 3. The description does not add extra meaning beyond the schema; it only implies the parameters from the phrase 'for a subnet' and 'Network ACL'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Set the Network ACL for a subnet' clearly states the action (set) and the resource (Network ACL for a subnet). It is specific enough to distinguish from sibling tools like set_network_acl_description, though it does not explicitly mention that it assigns an existing ACL to a subnet.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There are no mentions of prerequisites, valid scenarios, or exclusions, which is a clear gap given the large set of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_target_group_descriptionBIdempotent
Set or update the description of a target group
| Name | Required | Description | Default |
|---|---|---|---|
| targetGroupNo | Yes | Target group number | |
| targetGroupDescription | Yes | Target group description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what annotations already provide. Annotations state idempotentHint=true and destructiveHint=false; the description merely restates the action without mentioning permissions, side effects, or idempotency implications. There is no contradiction, but no added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence: 'Set or update the description of a target group.' It is concise and free of unnecessary detail, efficiently conveying the tool's action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (two required string parameters), the annotation coverage, and the absence of an output schema, the description sufficiently conveys the core operation. It could mention expected outcomes or validation, but for a setter, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already documented. The description does not add any extra meaning about the parameters (e.g., format, constraints, relationship between them), leaving the baseline at 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource combination: 'Set or update the description of a target group.' It clearly distinguishes from sibling tools that set descriptions of other resources (e.g., ncloud_set_lb_description, ncloud_set_route_table_description).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or contrast with related tools like ncloud_change_target_group_config or ncloud_get_target_group_detail.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_targetsAIdempotent
Set targets for a target group (replaces all existing targets with the specified list)
| Name | Required | Description | Default |
|---|---|---|---|
| targetNoList | Yes | List of target (server instance) numbers to set (replaces existing targets) | |
| targetGroupNo | Yes | Target group number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly discloses the key behavioral trait that all existing targets are replaced, which is not covered by the idempotentHint or destructiveHint annotations. This is critical for the agent to understand the full impact of the call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that clearly communicates the action and its replacement effect. Every word contributes value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only two required parameters and a complete schema, the description provides sufficient context for correct invocation. It does not describe return values, but for a set operation this is often implicit and the idempotentHint annotation adds further context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both targetGroupNo and targetNoList are already described in the input schema. The tool description adds no new parameter-level semantics beyond reinforcing the replacement behavior already stated in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Set' and names the resource 'targets for a target group', then clarifies that it replaces all existing targets. This clearly distinguishes it from incremental tools like ncloud_add_target and ncloud_remove_target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states that the operation replaces all existing targets, implying it should be used when a complete replacement is needed rather than incremental changes. It does not explicitly name alternative tools, but the replacement context provides clear guidance relative to sibling tools like ncloud_add_target and ncloud_remove_target.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_set_vpc_peering_descriptionAIdempotent
Set or update the description of a VPC Peering instance
| Name | Required | Description | Default |
|---|---|---|---|
| vpcPeeringInstanceNo | Yes | VPC Peering instance number | |
| vpcPeeringDescription | Yes | New description for the VPC Peering |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (idempotentHint=true, destructiveHint=false) already communicate the safety profile. The description aligns with these, but adds little extra context—it does not explain that the operation overwrites the existing description or note any state requirements for the peering instance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no fluff. Every word contributes to conveying the tool's function, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter update operation with idempotent and non-destructive annotations, the description is adequately complete. It does not need to explain return values (no output schema). A slightly more detailed note about overwriting behavior or prerequisites would push it to 5, but the current level is sufficient for straightforward use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters ('vpcPeeringInstanceNo' and 'vpcPeeringDescription') already documented in the schema. The description adds no new parameter-level information, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set or update') and identifies the resource ('description of a VPC Peering instance'), making the tool's purpose unambiguous. It clearly distinguishes from sibling tools like create_vpc_peering, delete_vpc_peering, and accept_reject_vpc_peering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The use case is implied by the tool name and description, but there is no explicit guidance on when to use this tool versus alternatives, nor any mention of prerequisites (e.g., the peering instance must exist). The description lacks explicit exclusions or alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_cancel_buildADestructiveIdempotent
⚠️ Destructive: Cancel a running SourceBuild build. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| buildId | Yes | Build ID to cancel (from build history) | |
| confirm | No | Must be true to execute the cancel operation | |
| projectId | Yes | Project ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, and the description reinforces this with the ⚠️ warning and the 'Destructive' label. It adds critical context about the confirm parameter ('Set confirm=true to execute'), which is not in the annotations and is essential for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that includes a warning, the action, and the confirmation requirement. There is zero wasted text, and it is highly scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple cancel operation with all parameters documented in the schema, the description covers the essential behavioral aspects: destructive nature and confirmation requirement. The idempotentHint annotation covers repeatability. No output schema is needed for cancellation, and no further context is necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining the confirm parameter's role ('Set confirm=true to execute'), which goes beyond the schema's default value description. The other parameters (projectId, buildId) are straightforward and well-documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Cancel a running SourceBuild build') with a specific verb and resource, distinguishing it from sibling tools like start_build and get_project. The destructive warning adds further clarity about its nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: when a SourceBuild build is running and needs cancellation. It does not explicitly mention alternatives or exclusions, but the context is clear given the sibling set includes build management tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_create_projectB
Create a new SourceBuild project with full configuration
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Image tag (required if platformType=ContainerRegistry|PublicRegistry) | |
| name | Yes | Project name (alphanumeric, '_', '-', 1-80 chars) | |
| osId | No | OS ID (required if platformType=SourceBuild, from list_os) | |
| image | No | Image name (required if platformType=ContainerRegistry|PublicRegistry) | |
| branch | Yes | Branch to build from | |
| envVars | No | Build environment variables | |
| timeout | No | Build timeout in minutes (5-540, default: 5) | |
| cacheTag | No | Cache image tag | |
| cacheUse | No | Save build image after completion | |
| dockerId | No | Docker engine version ID (required if dockerUse=true, from list_docker_engines) | |
| computeId | Yes | Compute type ID (from list_compute) | |
| dockerUse | No | Include Docker engine for build | |
| runtimeId | No | Runtime type ID (required if platformType=SourceBuild, from list_runtimes) | |
| cacheImage | No | Cache image name | |
| repository | Yes | Source repository name | |
| sourceType | No | Source repository type (SourceCommit) | SourceCommit |
| artifactUse | No | Save build artifacts | |
| cacheLatest | No | Set latest tag for cache | |
| description | No | Project description | |
| artifactPath | No | Build artifact paths | |
| platformType | No | Platform type: SourceBuild | ContainerRegistry | PublicRegistry | SourceBuild |
| registryName | No | Container Registry name (required if platformType=ContainerRegistry) | |
| buildCommands | No | Build commands | |
| cacheRegistry | No | Container Registry for cache | |
| artifactBackup | No | Backup artifacts | |
| artifactBucket | No | Object Storage bucket for artifacts | |
| dockerbuildTag | No | Docker build image tag | |
| dockerbuildUse | No | Enable Docker image build | |
| linkedFileSafer | No | Enable File Safer integration | |
| artifactFilename | No | Artifact filename | |
| dockerbuildImage | No | Docker build image name | |
| preBuildCommands | No | Pre-build commands | |
| runtimeVersionId | No | Runtime version ID (required if platformType=SourceBuild, from list_runtime_versions) | |
| dockerbuildLatest | No | Set latest tag for Docker build | |
| postBuildCommands | No | Post-build commands | |
| artifactStoragePath | No | Path within bucket | |
| dockerbuildRegistry | No | Docker build target Container Registry name | |
| dockerbuildDockerfile | No | Dockerfile path | |
| linkedCloudLogAnalytics | No | Enable Cloud Log Analytics integration |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false. The description adds no behavioral context beyond the word 'Create', which is already evident from the tool name. No side effects, resource implications, or required dependencies are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is direct and front-loaded. It contains no redundant phrases and earns its place, though it is minimal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 39 parameters, multiple platform-dependent required fields, and no output schema, the one-sentence description is insufficient. It does not orient the agent to different build platform modes (SourceBuild vs ContainerRegistry vs PublicRegistry) or the need for prerequisite lookup tools, leaving the agent to rely entirely on the extensive schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% parameter description coverage, so the baseline is 3. The description's 'full configuration' adds no parameter-specific meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Create' with a specific resource 'SourceBuild project', clearly distinguishing it from sibling tools like ncloud_sourcecommit_create_repo and ncloud_sourcedeploy_create_project. The phrase 'new' reinforces the creation scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating a new project but provides no explicit guidance on when to use it vs. alternatives. It does not mention prerequisites (e.g., listing OS, compute, or runtime IDs first) or any exclusion conditions, leaving the agent to infer context from the name and schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_delete_projectADestructiveIdempotent
⚠️ Destructive: Permanently delete a SourceBuild project and all its build history. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to execute the destructive operation | |
| projectId | Yes | Project ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that deletion is permanent and includes all build history, going beyond the destructiveHint annotation. It also reveals the requirement to 'Set confirm=true to execute,' which is essential behavioral information not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It includes a warning emoji, the action, the affected resource, and the critical confirm requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with two parameters and no output schema, the description fully covers the essential context: what is deleted, permanence, and the safety gate. It does not need to explain return values or alternative tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the confirm parameter's role, but it largely echoes the schema's own description ('Must be true to execute the destructive operation'), providing no new semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Permanently delete a SourceBuild project and all its build history.' It uses a specific verb and resource, distinguishing it from sibling tools like ncloud_sourcebuild_list_projects and ncloud_sourcebuild_get_project.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear—delete a project when you no longer need it—and emphasizes the destructive, permanent nature. It does not explicitly name alternatives or exclusions, but the context is unambiguous for a delete operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_get_build_historyARead-only
Get build history for a SourceBuild project
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Project ID to query build history |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description's 'Get' is consistent with that. However, the description adds no behavioral details beyond what annotations already provide, such as pagination, ordering, or the structure of the returned history.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the verb and contains no filler. It is as concise as possible while still conveying the essential purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple interface (one required parameter), the readOnly annotation, and the clear naming, the description is adequate for an agent to understand what the tool does. A minor gap is the lack of any indication of what fields appear in the history, but the tool name and purpose make this mostly self-evident.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the only parameter 'projectId' with a clear description. The tool description adds no extra semantics beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('build history'), and the scope ('for a SourceBuild project'). It distinguishes this from sibling tools like ncloud_sourcebuild_get_project (project details) and ncloud_sourcebuild_list_projects (all projects).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention that this is for reviewing past builds or that project details can be fetched using ncloud_sourcebuild_get_project. Intended usage is implied but not contrasted with other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_get_projectARead-only
Get detailed information about a specific SourceBuild project
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Project ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the read-only nature, which the description aligns with ('Get'). The description adds minimal extra context (e.g., 'detailed information') but does not disclose other behavioral traits such as return format or potential not-found conditions. Since annotations already cover the safety profile, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It is appropriately concise for a tool with one parameter and clear purpose, earning full marks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple contract (one parameter, no output schema) and the description sufficiently conveys the operation. It could mention details about the returned data, but 'detailed information' covers this reasonably well. The presence of readOnlyHint and a self-explanatory parameter makes the description nearly complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the sole parameter (projectId), so the schema already documents its meaning. The description does not add any further syntax or value beyond identifying the project, so the baseline score of 3 holds.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('detailed information about a specific SourceBuild project'), making it distinct from the sibling tool ncloud_sourcebuild_list_projects and the build history getter. It is a specific verb+resource statement with no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific SourceBuild project' clearly implies this is for retrieving details of a single project, given its one required projectId parameter. It provides clear context without explicitly naming alternatives, which is sufficient for a get-type tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_branchesCRead-only
List branches of a SourceCommit repository
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryName | Yes | Repository name (from list_repositories) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, but the description adds no behavioral context such as return format, pagination, rate limits, or additional constraints. It merely restates the action and resource, providing no value beyond what the annotation already indicates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, succinct sentence that immediately conveys the tool's purpose. It contains no redundant information and is appropriately sized for a simple, one-parameter read-only operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain what the response contains (e.g., a list of branch names or objects). It does not, and it also fails to clarify the SourceBuild-specific context or differentiate from sibling tools. The minimal description is incomplete for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the sole repositoryName parameter with a helpful description ('Repository name (from list_repositories)'), achieving 100% schema description coverage. The tool description adds no additional parameter semantics, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (List) and resource (branches of a SourceCommit repository), with a specific verb and object. However, it does not distinguish this SourceBuild-specific tool from the sibling ncloud_sourcecommit_list_branches, which likely serves the same core function, so it misses the full 5 for sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. Sibling tools like ncloud_sourcecommit_list_branches and ncloud_sourcedeploy_get_sourcecommit_branches offer similar branch-listing capabilities, but no context or exclusions are given, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_bucketsARead-only
List Object Storage buckets available for SourceBuild artifact storage
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description confirms this with 'List'. Additional context is added by specifying that the buckets are those 'available for SourceBuild artifact storage', indicating a filtered view. This is a useful behavioral detail beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately conveys the action, resource, and context. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with no parameters and no output schema, the description is sufficient. It identifies the resource and its purpose. It could mention response format or pagination, but the simplicity of the tool reduces the need for that detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline of 4 applies. The schema is empty and the description adds meaning by clarifying the purpose and scope of the listing, but there are no parameter semantics to expound upon.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List'), the resource ('Object Storage buckets'), and the specific context ('available for SourceBuild artifact storage'). This distinguishes it from other bucket-listing tools like ncloud_list_buckets and ncloud_sourcedeploy_get_objectstorage_buckets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'available for SourceBuild artifact storage' provides clear context for when this tool should be used (when dealing with SourceBuild). It does not explicitly exclude alternatives or name other tools, but the SourceBuild-specific scope is a strong signal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_computeARead-only
List available compute types for SourceBuild build environment
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with the readOnlyHint: true annotation by using 'List', which implies a safe, non-mutating operation. However, it adds no additional behavioral context such as return format, pagination, or any caveats. With the annotation already declaring read-only safety, a baseline score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the verb and target resource. It contains no unnecessary words and is well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list operation, the description sufficiently conveys the purpose. It does not describe the return values, but given the simplicity of the tool and the absence of an output schema, this is a minor gap. The description is otherwise complete enough for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and 100% schema description coverage, so there are no parameter semantics for the description to clarify. The baseline score for a no-parameter tool is 4, as no further explanation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the specific resource ('available compute types for SourceBuild build environment'). This is specific enough to distinguish it from sibling SourceBuild list tools such as ncloud_sourcebuild_list_docker_engines or ncloud_sourcebuild_list_runtimes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It is a simple, zero-parameter list operation, but the description does not explicitly state that it should be used to discover compute types before creating or updating a build project.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_docker_enginesARead-only
List available Docker engine versions for SourceBuild
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation. The description adds only the word 'available', which is largely implied by 'List', and does not disclose output format, pagination, or other behavioral details. This is acceptable given the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is a single sentence that begins with the verb 'List' and contains no filler. Every word contributes meaning, making it highly concise and well-structured for a simple operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool, the description fully covers what the tool returns (Docker engine versions) and the scope (SourceBuild). No output schema is present, but the purpose is simple enough that no additional context is required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero properties, and the description correctly implies that no parameters are needed. With no parameters to explain, the baseline of 4 applies, and the description adds no unnecessary parameter detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'List' and identifies the resource as 'Docker engine versions for SourceBuild', which exactly matches the tool name. This clearly differentiates it from sibling tools like ncloud_sourcebuild_list_runtimes or ncloud_sourcebuild_list_os.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives. There are no scenarios, exclusions, or comparisons with sibling list tools such as ncloud_sourcebuild_list_runtime_versions, so the agent has no basis for choosing among similar list operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_osARead-only
List available operating systems for SourceBuild build environment
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already communicates that this is a safe read operation. The description adds minimal behavioral context, such as the fact that the OS list is 'available' (implying a dynamic query), but does not disclose response format, pagination, or other traits. With annotations covering the safety profile, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It immediately states the verb 'List' followed by the resource, making it highly scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter read-only list tool, the description is sufficiently complete. It names the exact resource returned without needing extensive detail. While there is no output schema to describe response fields, the simplicity of the operation makes this level of detail acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is effectively empty. The description does not need to explain parameters, and the baseline for a zero-parameter tool is 4. The description's mention of 'available operating systems' provides enough context for the tool's purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('List') and the specific resource ('available operating systems for SourceBuild build environment'). This distinguishes it from sibling tools that list other entities like docker engines or runtimes, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or alternative tools, so the agent receives no contextual direction beyond the basic description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_projectsARead-only
List SourceBuild projects with optional name filter and pagination
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-based, default: 1) | |
| pageSize | No | Items per page (omit for all) | |
| projectName | No | Filter by project name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, and the description does not contradict it. The description adds minimal behavioral context beyond listing, such as the ability to filter by name and paginate, but these are also captured in the schema. No additional side effects or limitations are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of eight words, front-loading the core action and resource. It avoids unnecessary detail while summarizing the key optional features.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation with all parameters documented and a read-only annotation, the description is adequate. It doesn't describe the return format, but the action 'list' implies a collection, and no output schema exists. However, it could be slightly more specific about what project information is returned, so a 4 rather than 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all three parameters (pageNo, pageSize, projectName). The description reinforces these with the phrases 'name filter' and 'pagination' but does not add new semantic details beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('List') and resource ('SourceBuild projects'), and distinguishes it from sibling tools like ncloud_sourcebuild_get_project which retrieves a single project. The mention of optional filters and pagination adds scope clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. It implies usage for listing SourceBuild projects, but does not name alternative tools or exclusion criteria, such as using ncloud_sourcebuild_get_project for single-project details.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_registriesARead-only
List Container Registry registries available for SourceBuild
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already communicates the safe, non-mutating nature. The description adds the scope 'available for SourceBuild', which is useful context, but it does not disclose any other behavioral aspects such as pagination, return format, or the fact that it likely queries the NCR service.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that immediately conveys the purpose. No filler, redundant information, or unnecessary details. It earns its place perfectly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with a read-only annotation and no output schema, the description provides sufficient information. It clearly states what is listed and the filter ('available for SourceBuild'). A minor gap is not explaining the relationship to NCR registries, but the sibling tools and naming conventions make this inferable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no burden on the description to explain parameter semantics. The description correctly avoids inventing parameters and remains focused on the tool's core function.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('Container Registry registries available for SourceBuild'). The 'available for SourceBuild' qualifier distinguishes it from the similar sibling tool ncloud_ncr_list_registries, which lists all registries without that filter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly conveys the context: it is for listing registries that are available to SourceBuild. However, it does not explicitly mention when not to use it or name alternatives like ncloud_ncr_list_registries. The context is clear enough for an agent to infer the appropriate use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_repositoriesARead-only
List SourceCommit repositories available for SourceBuild
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates this is a safe read operation. The description adds the useful context that the list is filtered by SourceBuild eligibility, but does not disclose additional behaviors such as pagination, sorting, or permission requirements. Since annotations cover the safety profile, a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that directly states the action and resource, with no unnecessary words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, clear list operation, read-only annotation), the description is complete. It conveys the essential purpose and the SourceBuild filter, making it sufficient for an agent to understand what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is 100%, so there are no parameters to document. The description adds no parameter information, but none is needed; the baseline for 0 params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists SourceCommit repositories, specifically those available for SourceBuild. This distinguishes it from sibling tools like ncloud_sourcecommit_list_repos, which lists all SourceCommit repositories without the SourceBuild filter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'available for SourceBuild' implies the context of use: when configuring or managing SourceBuild projects. It does not explicitly mention alternatives or when not to use this tool, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_runtimesARead-only
List available runtime types for a specific OS in SourceBuild
| Name | Required | Description | Default |
|---|---|---|---|
| osId | Yes | OS ID (from list_os) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation, and the description does not contradict it. The description adds minimal behavioral context beyond the annotation, such as the fact that it is OS-scoped, but does not disclose output format or other behaviors. Given the annotation coverage, this meets the baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the verb and object. Every word earns its place, with no redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one parameter, readOnlyHint annotation, and no output schema, the description is complete enough. It specifies what is listed and the scoping requirement (OS), and the return value is implied by the action of listing runtime types.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a description for osId that references list_os. The tool description itself adds no additional meaning beyond the schema, so the schema handles the parameter semantics. The cross-reference in the schema is helpful but not attributable to the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists available runtime types for a specific OS in SourceBuild, with a specific verb and resource. It distinguishes from the sibling tool list_runtime_versions by focusing on types rather than versions, even though this distinction is not explicitly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description and schema parameter hint that osId should come from list_os ('OS ID (from list_os)'), which implies a prerequisite. However, there is no explicit guidance on when to use this tool versus alternatives like list_runtime_versions or list_compute, and no exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_list_runtime_versionsARead-only
List available runtime versions for a specific OS and runtime in SourceBuild
| Name | Required | Description | Default |
|---|---|---|---|
| osId | Yes | OS ID (from list_os) | |
| runtimeId | Yes | Runtime type ID (from list_runtimes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation already declares readOnlyHint=true, and the description's 'List' aligns with a read operation. No additional behavioral traits (e.g., error handling, auth requirements, rate limits) are disclosed, but the lack of side effects makes this acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that efficiently conveys the tool's purpose without redundancy or wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation, the combination of schema, annotation, and description is sufficient. Though no output schema exists, the purpose is clear enough for an agent to understand the expected return type (a list of versions).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter described and cross-referenced to source tools. The description adds no extra parameter detail beyond the schema, which already provides sufficient guidance on parameter origins.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list), resource (runtime versions), and scope (for a specific OS and runtime in SourceBuild). It is specific and distinguishes from sibling tools like list_os and list_runtimes, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used after obtaining an OS and runtime ID, as it requires both parameters. It provides clear context but does not explicitly state exclusions or alternatives, though sibling differentiation is inherent in the scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_start_buildBIdempotent
Start a build for a SourceBuild project
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | Project ID to build |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering safety traits. However, the description adds no additional behavioral context such as whether the build runs asynchronously, whether it can fail due to concurrent builds, or what side effects occur beyond starting. No contradiction exists, but the description contributes nothing beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool is simple and the schema covers the parameter, the description lacks essential context such as when to use it, how it relates to cancel_build or get_build_history, and what the agent should expect (e.g., asynchronous execution). The description is too minimal for a complete operational understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the only parameter (projectId) with a clear description 'Project ID to build' (100% schema coverage). The tool description adds no additional meaning to the parameter, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Start a build for a SourceBuild project' uses a specific verb ('Start') and clearly identifies the resource (build) and scope (SourceBuild project). It distinguishes itself from sibling tools like ncloud_sourcebuild_cancel_build (which cancels) and ncloud_sourcebuild_get_build_history (which reads).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives. It does not mention prerequisites, whether a project must exist, or contrast with cancel_build or get_build_history. The agent receives no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcebuild_update_projectBIdempotent
Update an existing SourceBuild project configuration
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Image tag | |
| osId | No | OS ID (if platformType=SourceBuild) | |
| image | No | Image name | |
| branch | No | Branch to build from | |
| envVars | No | Build environment variables | |
| timeout | No | Build timeout in minutes (5-540) | |
| cacheTag | No | Cache image tag | |
| cacheUse | No | Save build image | |
| dockerId | No | Docker engine version ID | |
| computeId | No | Compute type ID | |
| dockerUse | No | Include Docker engine | |
| projectId | Yes | Project ID to update | |
| runtimeId | No | Runtime type ID | |
| cacheImage | No | Cache image name | |
| repository | No | Source repository name | |
| sourceType | No | Source repository type | |
| artifactUse | No | Save build artifacts | |
| cacheLatest | No | Set latest tag for cache | |
| description | No | Project description | |
| artifactPath | No | Artifact paths | |
| platformType | No | Platform type: SourceBuild | ContainerRegistry | PublicRegistry | |
| registryName | No | Container Registry name | |
| buildCommands | No | Build commands | |
| cacheRegistry | No | Cache registry | |
| artifactBackup | No | Backup artifacts | |
| artifactBucket | No | Object Storage bucket | |
| dockerbuildTag | No | Docker build image tag | |
| dockerbuildUse | No | Enable Docker image build | |
| linkedFileSafer | No | File Safer integration | |
| artifactFilename | No | Artifact filename | |
| dockerbuildImage | No | Docker build image name | |
| preBuildCommands | No | Pre-build commands | |
| runtimeVersionId | No | Runtime version ID | |
| dockerbuildLatest | No | Set latest tag | |
| postBuildCommands | No | Post-build commands | |
| artifactStoragePath | No | Path within bucket | |
| dockerbuildRegistry | No | Docker build target registry | |
| dockerbuildDockerfile | No | Dockerfile path | |
| linkedCloudLogAnalytics | No | Cloud Log Analytics integration |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, which match the description's update operation. The description adds no further behavioral context beyond the obvious meaning of 'update', such as whether unspecified fields are preserved, what happens if the project does not exist, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no redundant words. It is front-loaded and immediately communicates the tool's purpose, making it appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high complexity (39 parameters) and lack of output schema, this one-line description is not sufficient. It does not explain update semantics, such as whether the operation is a partial update or a full replacement, or what the returned value represents. The schema provides parameter details, but the description fails to give an overall operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 39 parameters. The tool description itself provides no parameter-level information, and the baseline of 3 applies because the schema takes on the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and the specific resource ('existing SourceBuild project configuration'). It distinguishes this tool from siblings like create, delete, get, or list projects. The word 'existing' also implies a precondition that the project must already exist.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as ncloud_sourcebuild_create_project or ncloud_sourcebuild_delete_project. It does not mention that projectId is required, how partial updates behave, or any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_create_repoA
Create a new SourceCommit repository. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Repository name (1-100 chars: English letters, numbers, '-', '_') | |
| dryRun | No | If true, returns a preview without actually creating the repository | |
| fileSafer | No | Integrate File Safer service (default: false) | |
| description | No | Repository description (0-500 bytes) | |
| objectStorage | No | Integrate Object Storage service (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint: false. The description adds valuable context about the dryRun preview behavior, which goes beyond the annotation. It does not contradict the annotation and provides a safety note for a creation operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no wasted words. It states the core purpose and the most important usage modifier (dryRun).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create tool with fully documented schema parameters, the description is sufficient. It covers the action and a key behavioral option (dryRun). Lack of output schema is not a gap for this simple create operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all 5 parameters with 100% coverage. The description does not add parameter-level detail beyond that, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Create a new SourceCommit repository' with a specific verb and resource. This clearly distinguishes it from sibling tools like ncloud_sourcecommit_list_repos, ncloud_sourcecommit_edit_repo, and ncloud_sourcecommit_delete_repo.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions use of dryRun=true to preview without creating, which is a useful usage hint. However, it does not explicitly compare against alternatives or provide when-not-to-use guidance, though the create operation is self-evident among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_delete_repoADestructiveIdempotent
⚠️ Destructive: Permanently delete a SourceCommit repository. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| repositoryName | Yes | Name of the repository to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond the destructiveHint annotation by explicitly stating the operation is permanent and requires confirm=true to execute. This informs the agent of the irreversible nature and safety mechanism, which is useful context not present in structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with a clear warning prefix and essential instruction. Every word contributes meaning—no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple destructive operation with two parameters and no output schema, the description covers the key facts: action, permanence, and the required confirm flag. It does not explain what happens when confirm is false, but this is inferable from the schema's default false value. Overall, adequate for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents both parameters. The description's mention of confirm=true restates the schema's own parameter description without adding new syntax, formatting, or constraints, so it meets the baseline but adds no extra semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Permanently delete') on a specific resource ('SourceCommit repository'), making the purpose clear. However, it does not explicitly distinguish from the sibling tool ncloud_sourcecommit_delete_repo_by_id, which likely deletes by repository ID rather than name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as ncloud_sourcecommit_delete_repo_by_id. The only instruction is 'Set confirm=true to execute,' which is a parameter-level requirement rather than usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_delete_repo_by_idADestructiveIdempotent
⚠️ Destructive: Permanently delete a SourceCommit repository by ID. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| repositoryId | Yes | Repository ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true, so the description need not repeat basic destructiveness. It adds value by specifying 'Permanently delete' and the requirement that 'confirm=true' must be set to execute, which is not obvious from annotations alone. This contextual disclosure helps the agent understand the irreversible nature and the safety gate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with a warning emoji, conveying the essential destructive nature and the confirmation requirement. Every element earns its place; no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with two parameters, full schema coverage, and annotations indicating destructiveness and idempotency, the description covers the critical aspects: the operation, the target identifier, and the confirm gate. It does not delve into return values or edge cases, but those are not required given the simple operation and existing annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameter descriptions, including 'Repository ID to delete' and 'Must be true to actually execute the destructive operation.' The description's mention of 'by ID' and 'Set confirm=true' adds no new semantic value beyond the schema, so it earns the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Permanently delete a SourceCommit repository by ID' providing a specific verb, resource, and identifier method. The 'by ID' qualifier distinguishes it from sibling tools like ncloud_sourcecommit_delete_repo, which likely operates by name. The confirm=true instruction also clarifies the operation's semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to choose this tool over alternatives such as ncloud_sourcecommit_delete_repo or other deletion tools. It implies usage when the repository ID is known but lacks explicit exclusions or alternative guidance. The confirm=true tip is a usage instruction, but not about tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_edit_repoC
Edit SourceCommit repository settings (description, service integrations)
| Name | Required | Description | Default |
|---|---|---|---|
| fileSafer | No | Integrate File Safer service (true/false) | |
| description | No | New repository description (0-500 bytes) | |
| objectStorage | No | Integrate Object Storage service (true/false) | |
| repositoryName | Yes | Name of the repository to edit |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. The term 'Edit' implies a mutation, but the description does not mention side effects, permission requirements, whether unspecified settings are preserved, or any output/return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant phrases. It is concise, though arguably too terse for a mutation tool with several parameters and a sibling tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations and no output schema, yet the description does not explain that it operates by repository name (vs. ID), how the boolean integration parameters affect behavior, or what happens to unspecified settings. It is incomplete for a mutation operation with multiple parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already described. The description adds little beyond echoing schema fields ('description, service integrations'), so it provides no substantial extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Edit SourceCommit repository settings') and lists the editable fields ('description, service integrations'). It is clear but does not distinguish from the sibling tool ncloud_sourcecommit_edit_repo_by_id, which is similarly named and could cause ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as edit_repo_by_id. The description does not mention any prerequisites, exclusions, or conditions for selecting this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_edit_repo_by_idC
Edit SourceCommit repository settings by ID (description, service integrations)
| Name | Required | Description | Default |
|---|---|---|---|
| fileSafer | No | Integrate File Safer service (true/false) | |
| description | No | New repository description (0-500 bytes) | |
| repositoryId | Yes | Repository ID to edit | |
| objectStorage | No | Integrate Object Storage service (true/false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It merely states the edit action without explaining whether updates are partial or full, whether permissions are required, or how unspecified fields are handled. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that directly states the action and target. It is concise with no unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is inadequate for a mutation tool with no annotations or output schema. It omits critical behavioral details, such as whether unspecified settings are preserved, and provides no usage context or comparison with sibling tools. An agent would struggle to anticipate the tool's full effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides descriptions for all parameters, so the baseline is 3. The description's mention of 'description, service integrations' aligns with the schema but adds no new semantics beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool edits SourceCommit repository settings by ID, and lists the specific settings (description, service integrations). The 'by ID' phrasing helps distinguish it from the name-based sibling edit_repo, though it doesn't explicitly compare them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus ncloud_sourcecommit_edit_repo or other alternatives. The 'by ID' implication is the only hint, but there is no explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_get_repoARead-only
Get detailed information about a specific SourceCommit repository by name
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryName | Yes | Name of the repository to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates this is a safe read operation, so the description carries a lower burden. It adds the phrase 'detailed information' to indicate the scope of the response, but it does not disclose error behavior, authentication needs, or rate limits. It is consistent with the annotation but provides minimal extra context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the action, resource, and key qualifier. It contains no superfluous words and earns its place fully.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only operation with one parameter and no output schema, the description gives enough to understand the tool's purpose. The sibling ncloud_sourcecommit_get_repo_by_id clarifies the differentiation by name, and the 'detailed information' phrase sets expectations for the return value. It does not specify exact fields or error handling, but these are not critical for this simple lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the repositoryName parameter described as 'Name of the repository to query'. The tool description repeats the 'by name' qualifier but does not add new meaning, such as format constraints or how the name maps to the resource. Baseline 3 is appropriate since the schema already handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets detailed information about a specific SourceCommit repository by name. The verb 'Get' and the resource 'detailed information about a specific SourceCommit repository' are specific, and the 'by name' qualifier distinguishes it from the sibling ncloud_sourcecommit_get_repo_by_id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It does not mention that ncloud_sourcecommit_get_repo_by_id should be used when the repo ID is known, nor does it reference ncloud_sourcecommit_list_repos for enumeration. The agent has to infer the appropriate context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_get_repo_by_idARead-only
Get detailed information about a specific SourceCommit repository by ID
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryId | Yes | Repository ID (from repository list) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows this is a safe read. The description adds the context of 'detailed information' but does not disclose return format, potential errors, or other behavioral nuances. It provides minimal additional value beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that is front-loaded with the action and resource. No filler or redundancy, making it highly concise and scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one well-documented parameter and no output schema, the description is largely sufficient. However, it could be slightly more complete by mentioning what 'detailed information' includes or how this tool differs from ncloud_sourcecommit_get_repo, given the ambiguity in the sibling set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: repositoryId is described as 'Repository ID (from repository list)'. The description adds nothing about parameters beyond what the schema already provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('SourceCommit repository'), and the scope ('by ID'). The 'by ID' qualifier distinguishes it from the sibling ncloud_sourcecommit_get_repo, which presumably fetches by a different identifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool should be used when the agent has a repository ID (since it says 'by ID'), but it does not explicitly state when to use this tool versus alternatives like ncloud_sourcecommit_get_repo. No exclusions or alternative guidance is given, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_list_branchesARead-only
List all branches in a SourceCommit repository (includes default branch info)
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryName | Yes | Name of the repository |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes this as a safe read operation. The description adds the specific behavioral detail that default branch info is included, which is useful, but it does not mention pagination, response structure, or any potential caveats. This is adequate given the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It states the action, scope, and a key extra detail efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one required parameter and no output schema, the description provides enough information for a basic understanding. It clearly communicates the tool's purpose and highlights the inclusion of default branch info. However, it could be slightly more complete by noting what other fields are returned, but this is not critical for a straightforward list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the only parameter (repositoryName) with a clear description ('Name of the repository'). The tool description does not add additional meaning to the parameter, as the schema already provides sufficient context. With 100% schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and clearly identifies the resource ('all branches in a SourceCommit repository'). It also adds a useful detail about including default branch info, which distinguishes it from other branch-listing tools like ncloud_sourcebuild_list_branches or ncloud_pipeline_list_sourcecommit_branches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is given about when to use this tool versus alternatives. The description does not mention exclusions or recommend other tools for related tasks, leaving the agent to infer usage solely from the tool name and context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_list_reposARead-only
List all SourceCommit repositories. Supports filtering by name and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (1-N, default: 1) | |
| pageSize | No | Number of items per page (1-N, displays entire list if not entered) | |
| repositoryName | No | Search keyword to filter repositories by name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation already declares readOnlyHint=true, so the safe read-only nature is known. The description adds scope ('all') and mentions filtering/pagination capabilities, providing some behavioral context. It does not contradict annotations, but it also doesn't disclose details like response size limits or pagination defaults beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action, and contains zero redundancy. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool, the description is mostly complete: it states what it lists and mentions the key capabilities. With no output schema, it could explain what the response contains (e.g., a list of repository summaries), but that gap is minor given the straightforward nature of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions for pageNo, pageSize, and repositoryName. The description only restates 'filtering by name and pagination', which adds no new meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('all SourceCommit repositories'), clearly stating what the tool does. It distinguishes itself from sibling get_repo tools by indicating it retrieves all repositories, not a single one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'List all SourceCommit repositories' implies usage for retrieving a repository listing, and filtering/pagination hints suggest when to use parameters. However, there is no explicit mention of when to choose this over alternatives like ncloud_sourcecommit_get_repo, nor any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_list_tagsBRead-only
List all tags in a SourceCommit repository
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryName | Yes | Name of the repository |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds no behavioral context. It does not mention pagination, filtering, return format, error behavior, or required permissions. The phrase 'all tags' is a scope, not a disclosed behavioral trait. Thus, it fails to provide additional transparency beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately conveys the action and scope. It contains no redundant words or filler, making it highly efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with a single well-documented parameter and no output schema, the description is largely sufficient. However, it omits details about the response format and pagination behavior, which would be valuable given the lack of an output schema. Despite this, the tool's simplicity and the readOnlyHint reduce the need for extensive explanations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the repositoryName parameter is already clearly documented as 'Name of the repository'. The tool description adds no extra meaning about this parameter, such as format, example, or constraints, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'List all tags in a SourceCommit repository'—a specific verb ('List'), resource ('tags'), and scope ('in a SourceCommit repository'). This distinguishes it from sibling listing tools like ncloud_sourcecommit_list_branches and ncloud_sourcecommit_list_repos by explicitly naming the resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when to choose list_tags over list_branches or list_repos. It lacks any mention of exclusions, prerequisites, or alternative tools, leaving the agent without contextual selection help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcecommit_set_default_branchAIdempotent
Set the default branch for a SourceCommit repository
| Name | Required | Description | Default |
|---|---|---|---|
| branchName | Yes | Name of the branch to set as default | |
| repositoryName | Yes | Name of the repository |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds no further behavioral context, such as what happens if the branch does not exist or whether the previous default branch is affected. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no unnecessary words. It is front-loaded and effectively communicates the tool's purpose without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple mutation tool with complete schema and annotations, the description is sufficient. It clearly states the action and object. However, it lacks any mention of prerequisites or constraints (e.g., the branch must exist), and no usage guidance is provided, so it falls just short of excellent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with both parameters already explained ('Name of the branch to set as default' and 'Name of the repository'). The description adds no additional meaning beyond what the schema provides, which is adequate for a simple 2-param tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set the default branch') and the resource ('SourceCommit repository'). It distinguishes from sibling tools like list_branches or edit_repo, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention any exclusions or direct to sibling tools for related operations, such as creating a branch before setting it as default.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_approve_canaryB
Approve a manually analyzed canary version deployment
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states the action 'Approve' without revealing side effects, irreversibility, permissions, or dependency on prior analysis steps. For a mutating operation, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that starts with the verb 'Approve' and immediately conveys the action and target. Every word is necessary, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is part of a canary deployment workflow, as evidenced by sibling tools like reject_canary and get_canary_analysis_steps. The description does not explain the workflow context, prerequisites, or consequences of approval. With no annotations or output schema, this leaves the agent without enough information to use the tool correctly in a multi-step process.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all three parameters (projectId, stageId, scenarioId), achieving 100% schema coverage. The description adds no additional parameter-level meaning, so it meets the high-coverage baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Approve' and identifies the resource as 'a manually analyzed canary version deployment', which clearly distinguishes this tool from siblings like reject_canary or get_canary_analysis_report. The qualifier 'canary' and 'manually analyzed' narrows the scope precisely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'manually analyzed' implies this tool is used after a human has reviewed canary analysis, providing some contextual guidance. However, it does not explicitly state when to use this over alternatives like reject_canary or approve_deploy, nor does it mention exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_approve_deployB
Approve a scenario deployment request
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It only states the action without revealing side effects, whether it is a final state change, if it triggers deployment, or if prior conditions must be met. For a mutating approval action, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler. It is appropriately front-loaded, though it sacrifices some useful context for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 required string params, no output schema, no annotations), the description is minimally adequate but does not explain the approval workflow, such as what happens after approval or whether it is reversible. More context would make it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter having a clear description (projectId, stageId, scenarioId). The tool description adds no extra meaning beyond the schema, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Approve a scenario deployment request' clearly states the verb and resource. The name and description make it distinct from sibling tools like reject_deploy, cancel_deploy, and request_deploy_approval, so the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its usage in an approval workflow but does not explicitly state when to use it versus alternatives such as reject_deploy or request_deploy_approval. No prerequisites (e.g., a pending approval) or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_cancel_deployAIdempotent
Cancel an ongoing SourceDeploy deployment
| Name | Required | Description | Default |
|---|---|---|---|
| historyId | Yes | Job result ID (from deployment history) | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds the 'ongoing' scoping, clarifying that only active deployments can be canceled, but does not disclose other behavioral aspects like side effects on deployment history or whether cancellation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant information. Every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, two clearly documented parameters, and rich annotations, the description is largely sufficient. It would benefit from stating what happens upon cancellation (e.g., whether the deployment history marks it as canceled), but the core context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with clear descriptions. The description adds no additional parameter-level detail, so the baseline of 3 applies since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Cancel') and the specific resource ('ongoing SourceDeploy deployment'), distinguishing it from related deployment tools like start/approve/reject. It is a specific verb+resource pairing with no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word 'ongoing' implies the tool is for canceling in-progress deployments, but there is no explicit when-to-use guidance or mention of alternatives (e.g., other cancel operations). Usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_create_projectA
Create a new SourceDeploy deployment project. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Project name (1-100 chars: letters, numbers, '-', '_') | |
| dryRun | No | If true, returns a preview without actually creating |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation only indicates destructiveHint=false, which is consistent with a creation tool. The description adds the dryRun preview behavior, which is helpful, but it doesn't disclose other behavioral aspects such as potential side effects (e.g., resource creation costs, name uniqueness conflicts, or required permissions). For a mutating create operation, more transparency about consequences would be beneficial, but the dryRun note provides some safety context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: one sentence for the core purpose and a second sentence for the dryRun tip. Every word earns its place, with no fluff or redundant details. It is front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no output schema, no nested objects), the description provides sufficient context: it names the resource, states the creation action, and explains the preview capability. It doesn't cover every possible scenario (e.g., permissions prerequisites), but for a straightforward create operation, it is adequately complete. The schema fills in parameter details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers both parameters completely (100% coverage): 'name' includes format constraints and 'dryRun' is described as returning a preview without actually creating. The description's mention of dryRun=true adds no new semantics beyond what the schema already states, so it meets the baseline but does not elevate it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Create a new SourceDeploy deployment project.' This clearly distinguishes it from sibling tools such as ncloud_sourcedeploy_delete_project, ncloud_sourcedeploy_list_projects, and ncloud_sourcedeploy_create_stage, making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage context for the tool: creating a SourceDeploy project. It also includes a practical guideline for a key alternative mode: 'Use dryRun=true to preview without creating.' While it doesn't explicitly mention alternatives like listing or deleting projects, the primary usage and the dryRun option are well communicated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_create_scenarioB
Create a new deployment scenario in a stage
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Scenario name | |
| config | Yes | Scenario configuration (source, deployment strategy, commands, etc.) | |
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The only annotation is destructiveHint=false, which aligns with the create action but adds little. The description does not disclose behavior like idempotency, potential overwrites, required permissions, or what is returned on success. It adds no context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the tool's purpose with no filler or redundancy. Every word contributes meaningful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the config object and the lack of an output schema or deeper annotations, the description is insufficient. It does not explain what a deployment scenario is, how the config should be structured, or what happens after creation. The tool appears to be part of a larger workflow, but no surrounding context is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline applies. The description itself does not enrich parameter understanding; it merely repeats 'stage' from the schema. The 'config' parameter is a complex nested object, but the schema's description ('source, deployment strategy, commands, etc.') is the only semantic content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and the resource ('a new deployment scenario'), with a location qualifier ('in a stage'). This is specific enough to distinguish it from sibling tools like edit_scenario, delete_scenario, and list_scenarios.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any mention of prerequisites such as needing an existing project and stage. The description only states what it does, not in which context it should be invoked.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_create_stageA
Create a new deployment stage in a SourceDeploy project
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Stage name (up to 100 chars: letters, numbers, '-', '_') | |
| type | Yes | Deployment target type | |
| config | Yes | Deployment target config. Server: {serverNo: [number[]]}. AutoScalingGroup: {autoScalingGroupNo: number}. KubernetesService: {clusterNo: number}. ObjectStorage: {bucketName: string} | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint:false, and the description adds no further behavioral context. It does not mention requirements like project existence, validation behavior, potential errors, or side effects beyond the act of creation. With annotations present, the bar is lower, but the description provides zero extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is direct and front-loaded. It contains no filler or redundant information, earning a perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the schema thoroughly documents parameters, the description lacks any context about the purpose of a deployment stage, prerequisites (e.g., project existence), or expected behavior/response. There is no output schema, so the description does not compensate for this gap. It is minimally viable but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already described. The tool description itself adds no additional parameter meaning. Baseline is 3, and there is no reason to score higher or lower.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Create') and identifies a clear resource ('a new deployment stage in a SourceDeploy project'). This clearly distinguishes it from sibling tools like edit_stage, delete_stage, list_stages, and get_stage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for creating a new stage, but it does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or conditions. The verb 'create' gives context, but no explicit guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_delete_projectADestructiveIdempotent
⚠️ Destructive: Permanently delete a SourceDeploy project. All stages, scenarios, and history will be removed. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| projectId | Yes | ID of the deployment project to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the destructiveHint annotation by explicitly listing what will be removed ('All stages, scenarios, and history') and adding the safety mechanism 'Set confirm=true to execute.' This provides specific behavioral context about consequences and execution requirements that the annotations alone do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with a clear warning, then states the action, its consequences, and the required execution flag. Every word earns its place with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no output schema), the description fully covers what the tool does, what it destroys, and how to execute it. The destructive and idempotent annotations complement the description, and the safety flag is clearly documented. No significant gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both projectId and confirm already described in the schema. The description reinforces that confirm must be true to execute, but this duplicates the schema's own description and adds no new semantic information beyond what the structured fields provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Permanently delete a SourceDeploy project.' It specifies the resource and the verb, and distinguishes from sibling tools like delete_stage or delete_scenario by noting the project-level scope and that all stages, scenarios, and history will be removed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context that this is a project-level destructive operation, implying it should be used when deleting the entire project rather than individual stages or scenarios. However, it does not explicitly name alternative tools or provide when-not-to-use guidance, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_delete_scenarioADestructiveIdempotent
⚠️ Destructive: Delete a deployment scenario. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, and the description reinforces this with '⚠️ Destructive'. It adds the critical behavioral detail that confirm=true is required for the operation to actually execute, which goes beyond the annotation and provides important safety context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence, front-loaded with a warning icon and the destructive nature. Every word earns its place, with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a simple parameter set and fully documented schema, the description covers the essential information: the destructive action, the confirmation requirement, and the resource type. It does not explain broader implications, but those are not necessary for correct invocation given the annotations and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters have schema descriptions, giving 100% coverage. The description adds meaningful context for the confirm parameter, explaining it must be true to execute, which complements the schema's default value. Other parameters are already well-documented in the schema, so no additional description is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delete' and the resource 'deployment scenario', making the purpose explicit. It distinguishes itself from sibling delete tools (e.g., delete_stage, delete_project) by specifying the scenario resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides the prerequisite that confirm=true must be set to execute, but gives no guidance on when to use this tool versus alternatives or when not to use it. It lacks contextual direction beyond the safety condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_delete_stageADestructiveIdempotent
⚠️ Destructive: Delete a deployment stage from a SourceDeploy project. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| stageId | Yes | ID of the deployment stage to delete | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Although annotations already declare destructiveHint=true and idempotentHint=true, the description adds the critical behavioral requirement that confirm=true must be set to execute the deletion. This goes beyond the annotations and is essential for safe invocation. No contradictions with annotations are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, highly informative sentence with a warning emoji, front-loading the destructive nature. It contains no redundant words or filler, earning its place with actionable content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with strong annotations and full schema coverage, the description is mostly complete. It tells the agent what the tool does, the confirm requirement, and the resource being affected. It could mention irreversibility or absence of output, but the destructive warning largely covers this. No output schema exists, so return values don't need explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all three parameters (confirm, stageId, projectId). The tool description does not add meaning beyond the schema; it only restates the confirm requirement. Baseline of 3 is appropriate since the schema carries the parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Delete') and resource ('a deployment stage from a SourceDeploy project'), and it distinguishes itself from sibling tools like edit_stage, create_stage, and get_stage. The destructive warning and confirm requirement add clarity about the operation's nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage ('Delete a deployment stage') but does not explicitly state when to use this tool versus alternatives, nor does it mention when not to use it. No reference to sibling tools or exclusions is provided, so the guidance is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_edit_scenarioC
Edit deployment scenario settings
| Name | Required | Description | Default |
|---|---|---|---|
| config | Yes | Updated scenario configuration | |
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of disclosing behavioral traits. 'Edit deployment scenario settings' says nothing about side effects, required permissions, reversibility, or what changes are applied. For a mutation tool, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is front-loaded and easy to parse, but its brevity borders on under-specification. Still, it does not repeat schema information or include fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 required parameters, a nested config object, and no output schema, the description must compensate by explaining what the configuration should contain and what the tool returns. It provides none of that. The tool edits scenario settings, but the nature of the settings, validation rules, or effects are unaddressed, making the description insufficient for a complex mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all four parameters, so the baseline is 3. The description itself adds no parameter semantics; the schema's descriptions like 'Updated scenario configuration' and 'ID of the deployment stage' are the only sources of meaning. The config object's structure is left as additionalProperties without explanation, but the schema already covers it minimally.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Edit deployment scenario settings' is a verb+resource statement, but it is vague about what 'settings' entails and does not distinguish this tool from siblings like ncloud_sourcedeploy_edit_stage. It essentially restates the tool name with only the word 'settings' added, offering no scope or specifics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as create_scenario, delete_scenario, or get_scenario. The description gives no context, prerequisites, or exclusions, leaving the agent without decision-making information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_edit_stageC
Edit deployment stage settings (name, type, or config)
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | New stage name | |
| type | No | New deployment target type | |
| config | No | New deployment target config | |
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It states the tool 'Edits' (implying mutation) but does not disclose whether omitted fields are preserved, how the 'config' object is merged or replaced, permissions required, or what the response contains. As a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence: 'Edit deployment stage settings (name, type, or config)'. No redundant words, front-loaded with the action and entity, and every token earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of a nested 'config' object with arbitrary properties, no output schema, and no annotations, the description is too sparse. It does not clarify how the 'config' parameter interacts with existing settings, whether edits are incremental or replace the entire stage, or what result to expect. This leaves the agent without enough context to confidently invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all five parameters. The description adds nothing beyond listing 'name, type, or config', which is already in the schema. It does not explain the nested 'config' structure or relationships between parameters, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Edit') and the resource ('deployment stage settings'), and explicitly lists the editable fields (name, type, config). This distinguishes it from sibling tools like create_stage and delete_stage, though it does not explicitly mention the required scoping IDs (projectId, stageId) which are only in the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as create_stage or get_stage. There are no stated prerequisites, exclusions, or mention of partial update behavior. The context is only implied by the verb 'Edit'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_autoscaling_groupsARead-only
Get the list of available Auto Scaling groups for SourceDeploy stage configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation. The description adds no behavioral details beyond the name, such as response format, pagination, or filtering, so it provides minimal additional value for behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, concise sentence that is front-loaded with the action and resource. No redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list tool with a clear name and annotations, the description is adequate. The absence of an output schema is a minor gap—it does not specify what fields are returned—but the simplicity of the operation makes this acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters; the input schema has an empty properties object. Per the rubric, zero parameters gives a baseline of 4, and since there is nothing to document, this score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get the list') and clearly identifies the resource ('Auto Scaling groups for SourceDeploy stage configuration'). It distinguishes this tool from general ASG tools like ncloud_list_asgs and other SourceDeploy getters (e.g., get_servers, get_k8s_clusters) by specifying the context of use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when configuring SourceDeploy stages, but it does not explicitly state when to use this tool over alternatives (e.g., ncloud_list_asgs for general ASG listing) or mention any exclusions. Usage context is implied but not directly addressed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_canary_analysis_reportBRead-only
Get the canary analysis report for a specific step
| Name | Required | Description | Default |
|---|---|---|---|
| stepNo | Yes | Canary analysis step number | |
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint: true annotation matches the 'Get' verb, so no contradiction. The description does not provide additional behavioral context beyond what annotations already convey, such as error behavior, response contents, or permissions. With annotations covering safety, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It is concise but slightly under-specified; however, it is not verbose or bloated. It earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description should at least hint at what the report contains, but it does not. It also lacks context about the canary analysis workflow, such as how to get step numbers or how this report relates to canary approval/rejection. This is minimal for a tool with 4 required parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so a baseline of 3 is appropriate. The description adds no extra meaning beyond the schema, such as whether stepNo is 0-based or 1-based, or any format expectations. The parameter descriptions in the schema are sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the resource (canary analysis report), and the scope (for a specific step). It distinguishes itself from siblings like ncloud_sourcedeploy_get_canary_analysis_steps, which retrieves all steps, by focusing on a single step's report.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not mention when to use this tool versus alternatives, how to obtain the stepNo, or any prerequisites such as first calling get_canary_analysis_steps. It only implies the tool is for retrieving a report for a known step.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_canary_analysis_stepsARead-only
Get the canary analysis step list for a deployment
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already indicates a safe read operation. The description adds no extra behavioral context, such as ordering, pagination, or dependencies. It is consistent with the annotation but offers minimal additional transparency beyond the resource identification.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that conveys the essential operation without unnecessary words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only getter with self-explanatory parameters and a readOnlyHint, the description sufficiently identifies the resource and distinguishes from the report tool. It lacks detailed context about the step list's structure or prerequisites, but given the simplicity, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides full descriptions for all three parameters (IDs of stage, project, scenario), covering 100% of parameters. The description does not add further semantic meaning beyond the generic 'for a deployment', so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the specific resource ('canary analysis step list for a deployment'), which distinguishes it from sibling tools like ncloud_sourcedeploy_get_canary_analysis_report. It is direct and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when retrieving the step list for a canary analysis, but it does not explicitly compare with alternatives such as the canary analysis report tool. No exclusions or when-not-to-use guidance is provided, so it remains at an implied level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_deploy_historyARead-only
Get deployment history list for a project
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Number of items per page (default: 100, max: 100) | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with the readOnlyHint=true annotation and adds project scoping. It does not describe pagination behavior, response structure, or any operational side effects, but the annotation already covers safety. This adds some value beyond the annotation but is not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action ('Get') and object ('deployment history list'). It contains no filler and is immediately understandable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, complete parameter schema, and read-only annotation, the description is nearly sufficient. It does not describe the return fields or pagination details, but the phrase 'deployment history list' implies the response shape, and the schema handles pagination parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of the parameters (projectId, pageNo, pageSize), so the description need not repeat them. However, it adds no extra semantic context about how the parameters relate to the returned history or why pageSize has a maximum of 100.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('deployment history list') scoped to a project. It clearly distinguishes from sibling get_deploy_history_detail (which retrieves a single history entry) and other sourcedeploy list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives, nor any mention of prerequisites (e.g., needing a projectId from a list projects call). The usage context is only implicit from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_deploy_history_detailCRead-only
Get detailed information about a specific deployment history entry
| Name | Required | Description | Default |
|---|---|---|---|
| historyId | Yes | Job result ID | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation correctly indicates a read operation, and the description does not contradict it. However, the description adds no behavioral context beyond the annotation—no mention of return format, potential errors, or what 'detailed' entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is appropriately concise for a simple read operation, though it lacks informative detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does not explain what 'detailed information' includes, leaving the agent uncertain about the response structure. The tool is simple, but complete guidance is missing for a detail endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters (projectId, historyId) described in the schema. The description adds no extra semantic value, but the baseline for full schema coverage is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('Get') and resource ('detailed information about a specific deployment history entry'). It distinguishes from the sibling list tool by emphasizing 'specific' and 'detailed', though it does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus ncloud_sourcedeploy_get_deploy_history or other siblings. There are no stated prerequisites, exclusions, or context for choosing this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_k8s_clustersARead-only
Get the list of available Kubernetes Service clusters for SourceDeploy stage configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates the safe read-only nature. The description adds the scoping detail that results are limited to clusters available for SourceDeploy stage configuration, which is useful, but it does not describe return format, pagination, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It earns a perfect score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description provides the essential information: it returns a list of Kubernetes clusters available for SourceDeploy stage configuration. It's sufficient for a simple read-only list operation, though it could mention response fields if present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is trivially 100% covered. Per the baseline for no parameters, the description doesn't need to add parameter semantics; it simply describes the output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get the list') and the specific resource ('available Kubernetes Service clusters for SourceDeploy stage configuration'). This distinguishes it from sibling tools like ncloud_nks_list_clusters by scoping to SourceDeploy use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for SourceDeploy stage configuration' provides clear context on when this tool is relevant. However, it does not explicitly name alternative tools or state when not to use it, so it falls short of the full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_objectstorage_bucketsARead-only
Get the list of available Object Storage buckets for SourceDeploy stage configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint: true already signals that this is a safe read operation, and the description's 'Get the list' is consistent with that. Beyond the annotation, the description adds minimal behavioral context, merely restating the retrieval purpose with a stage-configuration qualifier. No additional behavioral traits (pagination, sorting, permissions, or response details) are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the action and resource. Every word contributes meaningful context, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema, read-only annotation), the description adequately conveys the purpose and scope. It tells the agent what will be returned ('list of available Object Storage buckets') and the context ('SourceDeploy stage configuration'), which is sufficient for a parameterless listing tool. However, it does not describe the format or contents of the returned bucket list, which would be useful but not essential here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, and the input schema confirms this with an empty properties object. With no parameters to explain, the description does not need to provide parameter semantics; the baseline of 4 for zero-parameter tools is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and a clear resource ('list of available Object Storage buckets') with a scoping qualifier ('for SourceDeploy stage configuration'). This distinguishes it from general bucket listing tools like ncloud_list_buckets and from object-level tools like ncloud_sourcedeploy_get_objectstorage_objects, though it does not explicitly name these siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for SourceDeploy stage configuration' implies a use case, but the description offers no explicit guidance on when to choose this tool over alternatives (e.g., ncloud_list_buckets or ncloud_sourcedeploy_get_objectstorage_objects). It also does not mention exclusions or preconditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_objectstorage_objectsARead-only
Get the list of objects in an Object Storage bucket
| Name | Required | Description | Default |
|---|---|---|---|
| bucketName | Yes | Name of the Object Storage bucket |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals this is a safe read operation. The description adds minimal behavioral context by indicating that a list is returned, but it does not disclose pagination, ordering, permissions, or any other operational nuances. It is consistent with the annotation, so no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately conveys the tool's purpose. There is no redundant wording or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read-only tool with full schema coverage and a readOnlyHint annotation, the description is largely sufficient. It clearly states what is returned (a list of objects) and the only required input is well-documented. Some guidance about pagination or relationship to generic Object Storage tools would improve it, but this is not critical for such a basic operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully covers the single parameter 'bucketName' with a description 'Name of the Object Storage bucket'. The tool description merely echoes this by saying 'in an Object Storage bucket', adding no additional semantic explanation beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'list of objects in an Object Storage bucket'. It differentiates from sibling tools like ncloud_sourcedeploy_get_objectstorage_buckets (which lists buckets) and ncloud_list_objects (which is a more generic Object Storage list operation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ncloud_list_objects or ncloud_get_object. It only states what the tool does, leaving the agent to infer appropriate usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_scenarioBRead-only
Get detailed information about a specific deployment scenario
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description simply says 'Get detailed information', which is consistent with a read operation. The description adds no behavioral context beyond the annotation—no mention of response format, pagination, required permissions, or error cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that immediately communicates the tool's purpose. It contains no redundant wording or unnecessary detail, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description could explain what 'detailed information' includes, but it does not. The tool is a simple getter with three self-explanatory parameters and a read-only annotation, making it minimally sufficient, yet it leaves expectations about the response and the hierarchical relationship between projectId, stageId, and scenarioId unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage with each parameter (projectId, stageId, scenarioId) clearly defined. The description itself adds no additional semantic meaning beyond what the schema already provides, so it meets the baseline but does not enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' and resource 'detailed information about a specific deployment scenario', clearly indicating a read operation for a single scenario. It differentiates from sibling tools like list_scenarios by emphasizing 'specific', though it does not enumerate what the detailed information includes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The wording 'specific deployment scenario' implies this tool is used when you already have the scenarioId and need details, as opposed to listing scenarios. However, there is no explicit guidance on when to use this versus alternatives like list_scenarios or get_stage, and no exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_serversARead-only
Get the list of available servers for SourceDeploy stage configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds that it returns 'available servers' for stage configuration, but it does not disclose response format, pagination, or what determines availability. This is adequate for a simple list tool but lacks deeper behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It clearly states the action and target, making it highly concise and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is reasonably complete: it explains the tool's purpose and scope. However, it does not elaborate on what 'available servers' means or the structure of the returned list, which would be helpful for an agent planning to use the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to explain. Per the baseline for 0 params, a score of 4 is appropriate since the description adds no parameter information but the schema is fully covered by the absence of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Get the list of available servers for SourceDeploy stage configuration' with a specific verb and resource. It distinguishes itself from sibling tools by focusing on 'servers' rather than other resource types like autoscaling groups or K8s clusters, though it doesn't explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The implied usage is for SourceDeploy stage configuration, but there is no explicit guidance on when to use this tool versus alternatives like ncloud_sourcedeploy_get_autoscaling_groups or ncloud_sourcedeploy_get_k8s_clusters. It lacks exclusion criteria or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_sourcebuild_projectsARead-only
Get the list of available SourceBuild projects for scenario source configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description is consistent with that. It adds context that the list is scoped to projects 'available for scenario source configuration,' but it does not describe response shape, pagination, or other behavioral details. This is adequate but not rich given the simple read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to understanding the tool's purpose and context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list operation with a clear purpose, the description is complete enough. It states what is returned and why, and the absence of an output schema is not a significant gap for such a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, and schema description coverage is 100%, so the baseline is 4. The description adds no parameter semantics because there are no parameters to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get the list') and clearly identifies the resource ('available SourceBuild projects') and the purpose ('for scenario source configuration'). It distinguishes this tool from generic SourceBuild list tools like ncloud_sourcebuild_list_projects by scoping it to scenario source configuration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states the context in which the tool is used ('for scenario source configuration'), which is explicit enough to guide basic selection. However, it does not mention when not to use the tool or name alternative tools for similar purposes, leaving some ambiguity among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_sourcecommit_branchesBRead-only
Get the list of branches in a SourceCommit repository
| Name | Required | Description | Default |
|---|---|---|---|
| repositoryName | Yes | Name of the SourceCommit repository |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares this as a safe read operation. The description merely says 'Get', which is consistent with the annotation but adds no additional behavioral context (e.g., whether pagination is supported, whether default branches are included, or any rate limits). There is no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that conveys the essential purpose without any filler. It is appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one parameter, read-only, no output schema), and the description covers the basic operation. However, the lack of differentiation from similar sibling tools and absence of any additional context (e.g., which repository types apply, whether it is scoped to sourcedeploy projects) leaves some gaps. It is adequate but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the only parameter, repositoryName, is described as 'Name of the SourceCommit repository'. The description text does not add any extra parameter context beyond what the schema already provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('list of branches in a SourceCommit repository'). It is unambiguous about what the tool does, though it does not differentiate from sibling tools like ncloud_sourcecommit_list_branches or ncloud_pipeline_list_sourcecommit_branches, which may serve similar purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives (e.g., ncloud_sourcecommit_list_branches). The description does not provide context for when this sourcedeploy-specific variant is appropriate, nor does it mention any exclusions or dependencies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_sourcecommit_reposARead-only
Get the list of available SourceCommit repositories for scenario source configuration
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, and the description's 'Get' is consistent. The description adds the useful context that the repos are 'available' for scenario configuration, implying some eligibility filtering. However, it doesn't disclose details like whether the list is paginated, what happens if no repos are available, or whether special permissions are needed beyond what annotations imply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence of 12 words that is direct and free of unnecessary jargon. It front-loads the action and resource, making it immediately scannable by an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool with good annotations, this description is nearly complete. It names the resource and the context. However, it doesn't clarify what 'available' means (e.g., only repos the user can access or that are eligible for SourceDeploy), which would further aid an agent's expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description adds meaning by clarifying the result set is specifically the 'available' repositories for scenario source configuration, which helps the agent understand what the response represents without needing parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'list of available SourceCommit repositories', adding the specific purpose 'for scenario source configuration'. This distinguishes it from the more general ncloud_sourcecommit_list_repos sibling by indicating this is the filtered/eligible list for SourceDeploy scenarios.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for scenario source configuration' provides clear context for when to use this tool—when setting up a SourceDeploy scenario that needs a SourceCommit repository. It does not explicitly name alternatives, but the purpose is specific enough to guide selection among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_stageARead-only
Get detailed information about a specific deployment stage
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already signals a safe read operation. The description adds 'detailed information' but does not disclose specifics about the response structure or any additional behavioral context. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that immediately conveys the action and target. There is no redundant or unnecessary text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID operation with a readOnlyHint and fully described parameters, the description is adequate. It clearly states the intent, though it does not enumerate the specific details returned, which is acceptable given the tool's simplicity and lack of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage for both parameters (projectId and stageId). The description adds no extra meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('detailed information about a specific deployment stage'). The word 'specific' distinguishes it from sibling list_stages, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: use this when you need details for a single stage, likely after calling list_stages. However, no explicit alternatives or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_get_target_groupsBRead-only
Get the list of load balancer target groups connected to an Auto Scaling group
| Name | Required | Description | Default |
|---|---|---|---|
| autoScalingName | Yes | Auto Scaling group name (see ncloud_sourcedeploy_get_autoscaling_groups) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds the scoping constraint (target groups attached to a specific ASG) but says nothing about return format, pagination, or whether an empty list is possible. With annotations carrying safety, this is a modest addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence that states verb, resource, and scope with zero filler. Nothing to trim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with full schema coverage and annotation-declared safety, the description is complete enough to invoke correctly. A note on pagination or result shape would have made it fully self-sufficient, but the essentials are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter autoScalingName is already documented with a pointer to ncloud_sourcedeploy_get_autoscaling_groups. The description adds no parameter-level meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Get), resource (list of load balancer target groups), and a scoping relationship (connected to an Auto Scaling group). It distinguishes the tool from the generic ncloud_list_target_groups by scoping results to an ASG, but it does not name any sibling explicitly, so an agent must infer the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use, when-not-to-use, or alternative guidance. The purpose statement implies the context (you have an ASG and want its target groups), but with sibling tools like ncloud_list_target_groups and ncloud_get_target_group_detail present, the description never says which to pick.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_list_projectsARead-only
List all SourceDeploy deployment projects with optional name filter
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSize | No | Number of items per page (default: 100, max: 100) | |
| projectName | No | Filter by project name (partial match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already declares the safe, non-mutating nature. The description adds the 'all' scope and optional name filter, which is useful, but it does not mention pagination behavior, response format, or any other behavioral details. Since the annotation covers the main safety aspect, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence: verb first, then resource, then optional filter. No redundant words or filler. It is optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with all-optional parameters and a readOnlyHint annotation, the description adequately covers the purpose and the main filter. There is no output schema, but 'List all ... projects' implies a collection response. It is sufficiently complete for the agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% — each parameter (pageNo, pageSize, projectName) has a clear description in the schema. The tool description only restates 'name filter' for projectName and does not add additional meaning. Baseline 3 applies because the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and identifies the resource as 'SourceDeploy deployment projects', clearly distinguishing it from sibling tools like ncloud_sourcedeploy_list_stages or ncloud_sourcebuild_list_projects. It also mentions the optional name filter, which adds precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for read-only listing of SourceDeploy projects and indicates the optional filter. It does not explicitly state when not to use it or name alternatives, but the purpose is clear enough for a simple list operation. No exclusions are present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_list_scenariosARead-only
List all deployment scenarios in a SourceDeploy project stage
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, so the safety profile is already conveyed. The description adds no extra behavioral context such as pagination, ordering, or response format. It is consistent with annotations, but lacks additional transparency beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler or redundancy. It states the action, resource, and scope efficiently, making it extremely concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with two well-documented required parameters and no output schema, the description sufficiently conveys purpose. It lacks explicit response details, but given the low complexity and strong schema coverage, the description is adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters (projectId and stageId) have clear descriptions in the schema, achieving 100% coverage. The description does not add additional semantic detail about parameter relationships or formats, so it does not exceed the schema's value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with resource 'deployment scenarios' and scope 'in a SourceDeploy project stage', clearly distinguishing it from sibling tools like get_scenario (single scenario) and create/delete scenario operations. It unambiguously communicates the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing scenarios in a stage, but provides no explicit guidance on when to choose this tool over alternatives such as get_scenario or create_scenario. There are no exclusionary statements or contextual cues beyond the basic read-only purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_list_stagesARead-only
List all deployment stages in a SourceDeploy project
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes | ID of the deployment project |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, so the safety profile is covered. The description adds no additional behavioral context beyond the read-only list operation, but for a simple list tool with a strong annotation, this is acceptable and does not contradict the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It earns its place by precisely stating the action and scope, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one parameter, good schema coverage, and a clear sibling group, the description is mostly complete. However, it lacks any hint about return type, ordering, or pagination, which could be useful since there is no output schema. Still, the tool's simplicity and the presence of the read-only annotation make this a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (projectId has a description). The description adds no new meaning beyond what the schema already states, which meets the baseline for adequately documented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all deployment stages in a SourceDeploy project' uses a specific verb ('List') and resource ('deployment stages in a SourceDeploy project'), clearly distinguishing it from sibling tools like get_stage (single stage) and create/edit/delete_stage (mutations).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied: to retrieve all stages for a given project. However, there is no explicit guidance on when to use this tool over alternatives (e.g., get_stage for a single stage) or when not to use it, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_reject_canaryB
Reject a manually analyzed canary version deployment
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It only states the action without revealing side effects, whether the rejection is irreversible, required permissions, or what happens after rejection. No such context is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no redundant words. It is front-loaded and efficiently conveys the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description is too terse to provide complete operational context. It does not explain the canary deployment lifecycle, expected outcomes, or prerequisites, leaving the agent with incomplete information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three required parameters (projectId, stageId, scenarioId). The description adds no extra parameter-specific meaning, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Reject') and a clear resource ('manually analyzed canary version deployment'), which distinguishes it from sibling tools like approve_canary and reject_deploy. It unambiguously states what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives like approve_canary or reject_deploy. The word 'manually analyzed' implies a particular workflow phase, but no exclusions or alternative tool references are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_reject_deployB
Reject a scenario deployment request
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states the action without noting whether the rejection is reversible, what side effects it has, or whether the deployment request must be in a specific state. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the core action without any extraneous words. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of sibling tools in an approval/deployment workflow, the description lacks context about when rejection applies and what the outcome is. With no output schema and no annotations, the tool is under-specified for correct selection and invocation, especially for an agent unfamiliar with the workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all three parameters (projectId, stageId, scenarioId) with clear descriptions, achieving 100% coverage. The description adds no additional parameter semantics beyond what the schema provides, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Reject') and the resource ('a scenario deployment request'), which distinctly sets it apart from sibling tools like approve_deploy or cancel_deploy. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as cancel_deploy or approve_deploy. It does not mention the approval workflow context or any prerequisites or conditions that should be met before rejection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_request_deploy_approvalC
Request approval for a scenario deployment
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare destructiveHint=false, and the description adds no additional behavioral context. It does not explain whether the action is asynchronous, whether it creates a pending approval record, what permissions are required, or what effects it has on the deployment process. The sparse description leaves the agent to infer implementation details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, minimally sized sentence that immediately states the action and resource. It is front-loaded with the key verb and object, containing no filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With three required parameters and no output schema, the description is too minimal to fully contextualize the tool. It does not clarify the relationship to 'approve_deploy' or 'start_deploy', nor does it mention the approval workflow context or what happens after the request is made. This leaves significant gaps for an agent deciding when to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions for all three parameters (projectId, stageId, scenarioId) are present and clear, giving 100% coverage. The tool description itself adds no extra parameter-level meaning, but the baseline of 3 applies when the schema fully documents parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Request approval') on a specific resource ('a scenario deployment'), which distinguishes it from the sibling tool 'approve_deploy' by emphasizing the request step rather than the approval action itself. However, it could more explicitly contrast with related deployment tools to eliminate ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'ncloud_sourcedeploy_approve_deploy' or 'ncloud_sourcedeploy_start_deploy'. The description does not mention lifecycle context, prerequisites, or differentiation from other sourcedeploy operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_sourcedeploy_start_deployCIdempotent
Start a deployment for a specific scenario
| Name | Required | Description | Default |
|---|---|---|---|
| stageId | Yes | ID of the deployment stage | |
| projectId | Yes | ID of the deployment project | |
| scenarioId | Yes | ID of the deployment scenario to execute |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, which covers safety. However, the description adds no additional behavioral context such as whether the deployment starts synchronously, creates a deployment record, or can be invoked while another deployment is in progress. It does not contradict annotations, but it fails to enrich the agent's understanding of the operation's effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no fluff. It is very concise and easy to parse. The phrase 'for a specific scenario' is slightly redundant given the 'scenarioId' parameter, but overall it is appropriately sized for the minimal content it provides.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deployment-initiating action with 3 required parameters and no output schema, the description is too thin. It does not explain the overall workflow, such as whether approval steps are needed, how to track the deployment after starting, or what side effects to expect. The sibling tools suggest a complex lifecycle, but this description leaves the agent without enough context to confidently use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with clear descriptions for projectId, stageId, and scenarioId. The description itself does not add any parameter-specific meaning, but the schema already documents all parameters adequately. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Start a deployment for a specific scenario.' It uses a specific verb and resource, and the scope is clear enough. However, it does not explicitly differentiate from sibling tools like cancel_deploy or approve_deploy, though the verb 'start' is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives. It does not mention prerequisites (e.g., scenario must exist), whether approval is required, or how this relates to other deployment lifecycle tools. The context signals and sibling list suggest a workflow, but the description itself gives no usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_start_serverAIdempotent
Start one or more stopped server instances
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNoList | Yes | List of server instance numbers to start |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool is idempotent and non-destructive, so the safety profile is covered. The description adds a meaningful precondition (instances must be stopped) and indicates multiple instances are supported, but it does not describe response behavior or any additional side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded seven-word sentence with no filler or redundancy. Every word contributes to conveying the tool's action and target condition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter start action with robust annotations and no output schema, the description combined with the schema provides sufficient information for an agent to select and invoke the tool. It could mention return values or status updates, but the low complexity makes the current level acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully documents the sole parameter serverInstanceNoList with type, minItems, and description. The description's 'one or more' reiterates the schema's minItems constraint and adds no new semantic detail beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Start' plus the resource 'server instances' and qualifies the target as 'stopped', which clearly distinguishes it from sibling tools like ncloud_stop_server, ncloud_reboot_server, and ncloud_terminate_server.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'stopped server instances' provides a clear precondition for when to use this tool, implying it is only for instances currently in a stopped state. It does not explicitly name alternatives or exclusion cases, but the context is unambiguous enough for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_stop_serverBIdempotent
Stop one or more running server instances
| Name | Required | Description | Default |
|---|---|---|---|
| serverInstanceNoList | Yes | List of server instance numbers to stop |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false, and the description does not contradict them. The description adds that target instances are 'running' but does not explain the post-stop state, restartability, or side effects. With annotations covering safety, this is acceptable but not deeply informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the action and scope. There is no repetition, filler, or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required parameter, idempotent and non-destructive annotations, and a clear sentence, the description is minimally sufficient. However, it lacks information about expected results (e.g., operation status or how to verify) and how to obtain server instance numbers, which would aid an agent in a full workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema fully describes the sole parameter serverInstanceNoList as a list of server instance numbers to stop. The description adds no additional format, constraints, or semantic detail beyond the schema, so the baseline for high schema coverage applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (Stop) and resource (running server instances) and clearly indicates support for multiple instances. It does not explicitly distinguish from sibling lifecycle operations like ncloud_interrupt_server or ncloud_terminate_server, but the core purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as ncloud_start_server, ncloud_reboot_server, ncloud_interrupt_server, or ncloud_terminate_server. The description only states the action without any usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_suspend_processesAIdempotent
Suspend specific scaling processes for an Auto Scaling Group
| Name | Required | Description | Default |
|---|---|---|---|
| autoScalingGroupNo | Yes | Auto Scaling Group number | |
| scalingProcessCodeList | Yes | List of scaling process codes to suspend |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not add behavioral detail beyond the idempotentHint and destructiveHint annotations. It does not explain that suspension only affects future scaling activities, whether it is reversible, or that it does not modify existing instances. This leaves important context unstated for a state-changing operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action and object. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple 2-parameter tool, but it omits how to discover valid scaling process codes (suggested by sibling ncloud_get_scaling_process_types) and the operational impact of suspension. Annotations and schema cover safety and parameters, but the description lacks these contextual pointers.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema documentation covers both parameters (autoScalingGroupNo and scalingProcessCodeList) with clear descriptions, so the baseline is met. The tool description adds no additional parameter semantics, such as allowed process codes or the relationship to ncloud_get_scaling_process_types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Suspend') and resource ('scaling processes') and clearly identifies the target ('Auto Scaling Group'). It distinguishes from sibling tools like ncloud_resume_processes and other ASG operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to suspend processes on an ASG but provides no explicit guidance on when to use it versus alternatives such as ncloud_resume_processes or setting desired capacity. There are no exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_terminate_serverADestructiveIdempotent
⚠️ Destructive: Permanently terminate (delete) one or more server instances. Requires each server to be STOPPED (status NSTOP) and not termination-protected — this tool pre-checks status and returns what to stop/unprotect first instead of failing. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| serverInstanceNoList | Yes | List of server instance numbers to terminate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true. The description adds valuable context: it pre-checks server status and protection, returns instructions instead of failing, and requires confirm=true to execute. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences pack critical information: action, prerequisites, pre-check behavior, and execution requirement. No filler, front-loaded with warning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description covers the key behavioral aspects: destructiveness, prerequisites, pre-check logic, and confirm parameter. It omits return format and error cases, but the pre-check detail compensates for the complexity of the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds that 'confirm' must be true to execute, and hints at the array parameter's role (terminating multiple servers). This goes beyond the schema by explaining the execution flow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (terminate/delete server instances) and the resource (server instances), with a warning icon emphasizing destructiveness. It distinguishes from siblings like ncloud_stop_server by specifying permanent deletion and prerequisites (stopped and not protected).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly explains when to use (to permanently delete servers) and includes prerequisites (server must be stopped and not termination-protected). It also mentions alternative behavior when conditions aren't met (pre-checks and returns what to do). However, it could be more explicit about when NOT to use (e.g., for temporary shutdown, use stop).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_unassign_secondary_ipsA
Unassign (release) secondary IPs from a network interface
| Name | Required | Description | Default |
|---|---|---|---|
| secondaryIpList | Yes | List of secondary IP addresses to unassign | |
| networkInterfaceNo | Yes | Network interface number to unassign secondary IPs from |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure, but it only restates the action with a synonym. It does not mention whether IPs must be currently assigned, whether the operation is destructive/reversible, or what happens to the released IPs (e.g., return to pool). This is a significant transparency gap for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It conveys the essential action efficiently, making it easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple operation with two fully-described parameters and no output schema, the description is minimally viable. It clearly states the core action, but lacks context about behavioral outcomes, prerequisites, or error conditions, which would be helpful for an agent deciding to invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides clear descriptions for both parameters (secondaryIpList and networkInterfaceNo), giving 100% coverage. The description adds no additional parameter semantics, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'unassign' with a clarifying synonym 'release' and clearly names the resource ('secondary IPs') and target ('network interface'). This unambiguously distinguishes it from the sibling tool ncloud_assign_secondary_ips.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating the action, but it does not explicitly explain when to use this tool versus alternatives, nor does it mention exclusions, prerequisites, or consequences. The need is inferred from the tool name and the presence of a corresponding assign tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_asgAIdempotent
Update an existing Auto Scaling Group configuration (e.g. min/max size, desired capacity, cooldown)
| Name | Required | Description | Default |
|---|---|---|---|
| maxSize | No | New maximum number of instances | |
| minSize | No | New minimum number of instances | |
| defaultCoolDown | No | Default cooldown period in seconds | |
| desiredCapacity | No | New desired number of instances | |
| autoScalingGroupNo | Yes | Auto Scaling Group number to update | |
| launchConfigurationNo | No | New launch configuration number | |
| healthCheckGracePeriod | No | Health check grace period in seconds |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds only a list of example settings and does not disclose whether unspecified settings remain unchanged or how the update is applied (e.g., rolling, immediate). It doesn't contradict annotations but adds minimal behavioral context beyond the example fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the action and resource, with examples in parentheses. Every word earns its place; there is no repetition of schema details or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter update tool with annotations but no output schema, the description communicates the core purpose and common settings effectively. However, it does not explain that only provided parameters are updated (unchanged settings persist) or what the response indicates, leaving some ambiguity for the agent to infer operational semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all 7 parameters with 100% coverage, so the description's examples (min/max size, desired capacity, cooldown) merely reinforce schema fields without adding new semantics. Baseline 3 applies because the schema carries the full parameter documentation burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Update' with a clear resource ('existing Auto Scaling Group configuration') and provides concrete examples of the config fields (min/max size, desired capacity, cooldown), distinguishing it from create/delete ASG tools and ncloud_set_desired_capacity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for modifying an existing ASG configuration, but it does not mention any alternatives such as ncloud_set_desired_capacity for single-parameter updates or specify when not to use it. No prerequisites or exclusions are given, making the usage context only implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_custom_resourceBIdempotent
Update a user-defined custom resource in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| resourceId | Yes | Custom resource ID to update | |
| resourceData | Yes | Resource data | |
| resourceName | Yes | Name of the custom resource |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds no further behavioral context, such as whether resourceData replaces the entire resource or if the resource must exist. It does not contradict annotations, but also does not enrich them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence of eight words, front-loaded with the verb and resource, containing no redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an update operation, the description lacks critical behavioral context: it does not specify whether resourceData replaces existing data, what happens if the resourceId does not exist, or what the response contains. Even with full schema coverage, the update semantics remain ambiguous, creating a significant gap for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for all three parameters, achieving 100% coverage. The description itself adds no extra parameter semantics beyond what the schema already conveys, matching the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Update' and clearly identifies the resource as 'user-defined custom resource in Cloud Insight', which distinguishes it from sibling tools like create, get, list, and delete. It unambiguously states the action performed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used when an existing custom resource needs modification, but it provides no explicit when-not-to-use guidance or references to alternatives. The context is clear from the tool name and sibling set, but no exclusions or additional selection criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_extended_disableAIdempotent
Disable Extended Metric collection for instances in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| cw_key | Yes | Product key (cw_key) | |
| instanceIds | Yes | Comma-separated server instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare idempotentHint=true and destructiveHint=false, establishing the safety profile. The description adds little beyond the core action; it does not explain consequences of disabling extended metrics or what happens to collected data. However, the annotation coverage reduces the burden, and the action is clearly non-destructive per the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that states the action and target without redundancy. Every word contributes to clarity, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only two fully described parameters, a clear purpose, and supportive annotations, the description is adequately complete. It does not mention return values or side effects, but the simplicity and schema coverage make it sufficient for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters (cw_key and instanceIds) are fully described in the schema with 100% coverage. The description adds no additional meaning beyond the schema's field descriptions, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Disable' and specifies the resource 'Extended Metric collection for instances in Cloud Insight', clearly identifying the action and scope. It distinguishes itself from the sibling tool ncloud_update_extended_enable by describing the opposite operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case—disabling extended metrics for given instances—but does not explicitly state when to use this tool versus alternatives or mention any exclusions or prerequisites. There is no reference to the complementary enable tool, though the context makes the purpose fairly evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_extended_enableAIdempotent
Enable Extended Metric collection for instances in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| cw_key | Yes | Product key (cw_key) | |
| instanceIds | Yes | Comma-separated server instance numbers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering the safety profile. The description accurately states the primary effect but adds no extra behavioral context such as billing impact, propagation delay, or prerequisites beyond what annotations and schema provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is front-loaded with the action ('Enable') and contains no filler. Every word contributes to understanding the tool's purpose and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple idempotent enable operation with fully documented required parameters and a non-destructive annotation, the description is adequately complete. It does not mention how to verify the result, but the sibling ncloud_get_extended_status can be inferred and no output schema is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: cw_key is identified as product key and instanceIds as comma-separated server instance numbers. The description does not add further parameter meaning, but the schema is sufficient for selecting and invoking with correct values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Enable' with a clear resource 'Extended Metric collection' and target context 'instances in Cloud Insight'. It clearly differentiates from the sibling ncloud_update_extended_disable by indicating the enabling action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: use it to enable extended metric collection for Cloud Insight instances. It does not explicitly mention alternatives or exclusions, but the counterpart disable tool is identifiable from the name, so no confusion arises.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_fabric_clusterAIdempotent
Update a fabric cluster's name and/or description. The Server API has no single update operation: the name is sent to changeFabricClusterName and the description to changeFabricClusterDescription (one call each, name first). Provide at least one of the two.
| Name | Required | Description | Default |
|---|---|---|---|
| fabricClusterNo | Yes | Fabric cluster number to update | |
| fabricClusterName | No | New fabric cluster name (3-30 chars: lowercase letters, digits, '-'; starts with a letter, ends with a letter or digit) | |
| fabricClusterDescription | No | New description for the fabric cluster (up to 1000 bytes; an empty string clears it) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare idempotentHint=true and destructiveHint=false; the description adds genuinely new behavior: the Server API has no unified update, so the call fans out to changeFabricClusterName and changeFabricClusterDescription, name first. This two-call ordering is important operational context an agent cannot get from annotations, though the description stops short of spelling out partial-failure consequences if the second call fails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and scope, followed by the implementation mechanics and the input precondition. No filler, no restatement of the tool name, and each sentence carries a distinct piece of information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no output schema, the description covers scope, the underlying two-call mechanism, call ordering, and the minimum input requirement, while annotations cover safety and idempotency. It could go further on permissions or cluster-state prerequisites, but nothing essential for a correct call is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds a cross-parameter constraint absent from the schema: at least one of fabricClusterName or fabricClusterDescription must be supplied even though only fabricClusterNo is marked required. That is real added semantic value beyond the per-field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Update a fabric cluster's name and/or description') and immediately bounds the scope to two mutable fields, which separates it from siblings like ncloud_change_fabric_cluster_servers or ncloud_delete_fabric_cluster. It does not explicitly name those siblings, so an agent must infer the routing, keeping it just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The closing clause 'Provide at least one of the two' gives a clear precondition for invocation, and the name/description scope implies when this tool applies versus create/delete/change-servers siblings. No explicit when-not guidance or alternative naming is offered, so it stays at 4 rather than 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_integrationAIdempotent
Update an existing Cloud Insight integration.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Outgoing webhook URL | |
| name | Yes | Name of the integration | |
| type | No | Integration type (currently 'OUT_GOING') | OUT_GOING |
| headers | No | HTTP headers to send (max 10 entries) | |
| payload | Yes | Request payload template (JSON string, 0-15000 bytes) | |
| integrationId | Yes | Integration ID to update |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint and destructiveHint, covering basic safety. The description adds no additional behavioral context, such as whether omitted optional fields (headers, type) are reset or if this is a full replacement. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that states the action and resource with no filler, redundancy, or wasted words. It is appropriately front-loaded and easily digestible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a moderate-complexity tool with 6 parameters and no output schema, the description is adequate for basic tool selection but lacks important behavioral details like update semantics (full vs partial) and what the response contains. The schema and annotations fill some gaps, but the description alone is thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all six parameters are already documented in the schema. The description does not add any parameter semantics beyond what the schema provides, which is acceptable per the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Update') and resource ('existing Cloud Insight integration'), clearly distinguishing it from sibling tools like create/delete/list/get integration. It is concise and unambiguous about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied by the word 'existing' (suggesting the integration must already exist), but it does not explicitly state when to use this vs alternatives, nor provide prerequisites or exclusions. It relies on the agent to infer from the CRUD sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_maintenanceCIdempotent
Update an existing planned maintenance schedule in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| desc | No | Maintenance description | |
| title | No | Maintenance title | |
| endTime | No | End time in Unix epoch milliseconds | |
| startTime | No | Start time in Unix epoch milliseconds | |
| dimensions | No | Target resources keyed by cw_key: {"<cw_key>": [{"instanceNo": "1111", "type": "svr"}]} | |
| maintenanceId | Yes | Planned maintenance ID to update |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is partly covered. The description adds nothing beyond that: it does not say whether omitted fields are preserved or cleared, whether a new schedule replaces the old one, or what permissions are needed for a mutation against a nested dimensions object.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tightly-worded sentence with the action front-loaded and no filler. It is appropriately sized, though its brevity is partly what leaves the behavioral gaps noted elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with annotations covering idempotency and non-destructiveness, no output schema, and fully-documented parameters, the definition is minimally viable. The nested dimensions semantics and the effect of partial updates remain unexplained, which is a real gap for a 6-parameter update tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter (including maintenanceId, startTime/endTime in epoch ms, and the nested dimensions map) is documented in the schema. The description adds no syntax or format detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Update) and resource (an existing planned maintenance schedule in Cloud Insight), which is clear. However, it does nothing to distinguish itself from the sibling maintenance tools (ncloud_create_maintenance, ncloud_delete_maintenance, ncloud_get_maintenance_detail, ncloud_list_maintenances), so an agent must infer the boundary itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'existing' implies a schedule must already exist, but there is no statement of when to use this versus create/delete/get siblings, no prerequisites, and no exclusions. Usage context is left almost entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_metrics_groupCIdempotent
Update an existing Cloud Insight rule template (metrics group).
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) for the target service | |
| prodType | No | Product type: system (Ncloud product) or custom (Custom Schema) | |
| groupDesc | No | Description (<= 300 chars) | |
| groupName | Yes | Name of the metrics group (1-100 chars) | |
| metricsGroupId | Yes | Metrics group ID to update | |
| temporaryGroup | No | true: create the Event Rule without creating a metrics group (default false) | |
| metricsGroupItems | Yes | Metric items (at least one) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is partly covered, but the description adds nothing behavioral: it does not say whether metricsGroupItems replaces the entire item list or is merged, whether existing items require metricGroupItemId, or what happens to existing state. For a mutation of a nested collection these are material omissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no padding. It is efficient, though its brevity is partly a symptom of under-specification rather than deliberate economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The rich schema (7 params, nested item array with enums and per-field descriptions) and the idempotent/non-destructive annotations carry most of the load, so the description need not explain return values. Still, the 'rule template' vs 'metrics group' framing and the absence of any statement about update/replace semantics leave a gap for a mutation tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and every parameter (including the nested metricsGroupItems sub-properties) is documented in the schema, so the baseline of 3 applies. The description adds no parameter meaning beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (update) and resource, and the name plus sibling set (ncloud_create_metrics_group, ncloud_delete_metrics_group, ncloud_get_metrics_group) makes the operation unambiguous. However, the parenthetical '(metrics group)' paired with 'Cloud Insight rule template' introduces a mild identity ambiguity — an agent cannot be fully sure whether the object being edited is a rule template or a metrics group.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this versus ncloud_create_metrics_group or ncloud_update_rule_group, and no prerequisites (e.g., that the metrics group must already exist and its ID obtained via ncloud_list_metrics_groups). The single sentence offers no usage context at all.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_monitor_groupCIdempotent
Update an existing Cloud Insight monitoring target group.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Target group type: NORMAL (default) or ASG (Auto Scaling Group) | |
| prodKey | Yes | Product key (cw_key) for the target service | |
| prodName | No | Product name | |
| groupDesc | No | Description of the monitor group | |
| groupName | No | Name of the monitor group | |
| monitorGroupId | Yes | Monitor group ID to update | |
| temporaryGroup | No | true: create the Event Rule without creating a monitor group | |
| monitorGroupItemList | Yes | Monitoring targets ([{resourceId, nrn?}]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds essentially nothing beyond that: it does not say whether the update replaces the entire group or merges fields, whether monitorGroupItemList overwrites prior targets, or what permissions are required for a mutation on 8 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; it wastes no words. It is arguably under-specified rather than verbose, so a 4 rather than a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with 8 parameters, 3 required identifiers, and no output schema, the description is thin but the schema and annotations carry most of the load. It lacks any note on partial vs full replacement semantics or error conditions, which is a real gap an agent would want.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema, including the enum for type, prodKey, and the nested monitorGroupItemList. The description adds no syntax, format, or interaction detail, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Update) and a specific resource (Cloud Insight monitoring target group), making the basic operation unambiguous. It implicitly distinguishes itself from the create/delete/get/list monitor group siblings, though it never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as create_monitor_group, delete_monitor_group, or get_monitor_group, nor any prerequisites (e.g. needing an existing monitorGroupId). The word 'existing' hints at a precondition but does not develop it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_pipelineAIdempotent
Update an existing SourcePipeline pipeline (tasks and triggers)
| Name | Required | Description | Default |
|---|---|---|---|
| tasks | Yes | Updated task list | |
| trigger | No | Trigger configuration | |
| projectId | Yes | Pipeline ID to update | |
| description | No | Pipeline description |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as idempotent and non-destructive. The description adds no further behavioral context such as whether the update replaces existing tasks/triggers entirely, what happens on partial input, or any permissions needed. It does not contradict the annotations, but adds no value beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that contains no filler or redundant phrasing. Every word contributes to understanding the tool's core function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex nested schema and lack of output schema, the description could be more complete. It does not clarify whether the tasks and triggers fields fully replace existing configuration, and it omits any indication of success/return behavior. The detailed schema compensates somewhat, but the description alone leaves key semantic questions unanswered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description does not need to explain individual parameters. The brief mention of 'tasks and triggers' maps to the two main fields but adds no additional meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (Update), a specific resource (existing SourcePipeline pipeline), and the primary scope (tasks and triggers). This clearly distinguishes it from sibling tools like create_pipeline, delete_pipeline, run_pipeline, and get_pipeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is for updating an already-existing pipeline, which gives some context, but it does not explicitly state when to use this tool versus creating a new pipeline or listing pipelines, nor does it mention any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_policyAIdempotent
Update a user-created (custom) IAM policy. The permissions array REPLACES the policy's existing statements, so send the complete desired set — read the current ones with ncloud_get_policy_detail first. System-managed policies cannot be updated, and the policy name cannot be changed.
| Name | Required | Description | Default |
|---|---|---|---|
| policyId | Yes | Policy ID to update (see ncloud_list_policies) | |
| description | No | Description of the policy (0-300 bytes) | |
| permissions | Yes | Full replacement set of permission statements |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide idempotentHint and destructiveHint, which are somewhat generic. The description adds critical behavioral context: the permissions array REPLACES existing statements, meaning the agent must send the complete set. It also discloses constraints about system-managed policies and name immutability, which go beyond annotations and are essential for correct invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the most critical information (replacement semantics and prerequisite read). No filler words; every sentence earns its place and is logically ordered.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the complex nested parameter structure, the description covers all critical usage constraints: replacement behavior, need to read first, system-managed restrictions, and name immutability. It is complete for an agent to correctly invoke the tool without additional documentation. The absence of an output schema is fine since the tool's purpose is an update action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so baseline is 3. The description adds value by emphasizing the replacement behavior for the permissions array, which is not fully obvious from the schema alone. It also provides context on how to obtain the current statements (read with ncloud_get_policy_detail), indirectly guiding construction of the permissions parameter. This raises it above the baseline but not to a 5 since the schema already describes each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update a user-created (custom) IAM policy'), identifies the specific resource (custom IAM policy), and immediately distinguishes it from system-managed policies. It also differentiates from sibling tools like ncloud_get_policy_detail and ncloud_create_policy by its explicit focus on updating and the replacement semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: read current policies with ncloud_get_policy_detail first, warns that system-managed policies cannot be updated, and notes the policy name cannot be changed. This gives clear when-to-use and when-not-to-use guidance, effectively routing the agent to the correct workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_product_schemaCIdempotent
Update a user-defined custom schema in Cloud Insight.
| Name | Required | Description | Default |
|---|---|---|---|
| cw_key | Yes | Product key (cw_key) of the schema to update | |
| fields | Yes | Updated schema field definitions | |
| prodName | Yes | Product name of the schema to update |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is partly covered. However, the critical behavioral question for a schema update — whether submitted fields replace the entire schema or merge with existing definitions, and what happens to omitted fields — is left unstated, and the description adds no behavioral context at all.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. It is structurally clean, though arguably over-terse for a tool with a nested field-definition payload.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation that rewrites a custom product schema, the description omits the replace-vs-merge semantics and any caution about the nested field array. No output schema exists, so nothing compensates; the definition is not complete enough for an agent to call this confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the nested fields array documents each sub-property (dataType, dimension, metric, aggregations, idDimension) with enums and constraints, so the schema carries the semantics. The description adds nothing beyond that, which is the expected baseline when coverage is full.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Update) and resource (user-defined custom schema in Cloud Insight), which is enough to separate it from create_custom_schema, get_product_schema, and delete_product_schema siblings. It does not, however, name any sibling or clarify the relationship to the schema-level options like ncloud_get_schema_keys.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of prerequisites (e.g. that the schema must already exist), and no mention of alternatives such as create_custom_schema or delete_product_schema. The agent must infer usage entirely from the verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_update_rule_groupBIdempotent
Update an existing Cloud Insight event rule group. groupName cannot be changed — pass the current name.
| Name | Required | Description | Default |
|---|---|---|---|
| prodKey | Yes | Product key (cw_key) for the target service | |
| groupDesc | No | Description (<= 300 chars) | |
| groupName | Yes | Name of the rule group (1-1000 chars) | |
| ruleGroupId | Yes | Rule group (Event Rule) ID to update | |
| asgPolicyList | No | Auto Scaling group policies | |
| metricsGroupKey | Yes | Metrics group (rule template) IDs to apply (at least one) | |
| monitorGroupKey | Yes | Monitor group (target group) IDs to monitor (at least one) | |
| suspendRuleItems | No | Rule items to suspend ([{resourceId, metricGroupItemId}]) | |
| recipientNotifications | No | Notification recipient groups | |
| personalNotificationRecipients | No | Personal notification recipients |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds one genuinely useful behavioral fact — groupName is immutable and must be the current name — but says nothing about how omitted optional fields are handled (merge vs replace), which matters for a 10-param update.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste, and the one non-obvious constraint is isolated in its own sentence. Nothing to trim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an update tool with ten parameters, many optional and some nested, the description is thin. It states purpose and one constraint, but leaves partial-update semantics unaddressed; with 100% schema coverage and safety annotations, this is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds the immutability constraint on groupName beyond the schema's '1-1000 chars' note, but gives no semantic help for the other nine parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Update an existing Cloud Insight event rule group.' The verb clearly distinguishes it from siblings like ncloud_create_rule_group, ncloud_delete_rule_group, and ncloud_get_rule_group, though it never names those alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no when-to-use guidance or routing against alternatives such as ncloud_copy_rule_group or ncloud_create_rule_directly. The groupName note is a behavioral constraint, not usage guidance, so the agent receives no help choosing between this and its rule-group siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_upgrade_mysql_versionB
Upgrade the DB engine version of a Cloud DB for MySQL instance
| Name | Required | Description | Default |
|---|---|---|---|
| regionCode | No | Region code (default: first region) | |
| engineVersionCode | No | Target engine version code (e.g. 'MYSQL8.0.40'). Defaults to latest version if omitted. | |
| cloudMysqlInstanceNo | Yes | Cloud MySQL instance number (getCloudMysqlInstanceList) | |
| isMajorVersionUpgrade | No | Major version upgrade (default: false). true: major upgrade (one step at a time, e.g. 5.7→8.0→8.4). false: minor upgrade only (e.g. 8.0.34→8.0.40). | |
| cloudMysqlImageProductCode | Yes | Target MySQL image product code (getCloudMysqlImageProductList) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure, but it only says 'Upgrade'. It does not mention possible downtime, irreversibility, version compatibility steps, or any operational side effects. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It efficiently states the tool's core purpose in a clear structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, this description is under-specified. It lacks operational context such as downtime, prerequisites, version constraints, or response format, leaving the agent without critical information to safely invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of the parameters with descriptive text, so the baseline is 3. The description itself adds no parameter-level details beyond what the schema already provides, but the schema does a good job explaining fields like isMajorVersionUpgrade.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Upgrade') and the target resource ('DB engine version of a Cloud DB for MySQL instance'). It distinguishes this tool from siblings that upgrade other resources (e.g., ncloud_ses_upgrade_version, ncloud_nks_upgrade_cluster) by specifically naming MySQL instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites like the need to specify an instance number or image product code. The only hint is the verb 'Upgrade', but there is no explicit context or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_upload_partA
Upload a part in a multipart upload. Use InitiateMultipartUpload first to get an uploadId, then upload parts, then CompleteMultipartUpload.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Content of this part to upload | |
| uploadId | Yes | Upload ID returned from initiate multipart upload | |
| bucketName | Yes | Name of the bucket | |
| objectName | Yes | Object key (path) for the multipart upload | |
| partNumber | Yes | Part number (1 to 10000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden but only restates the operation ('Upload a part') and the workflow. It fails to disclose side effects, permission requirements, idempotency, or state changes. No contradictions with annotations since annotations are empty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core operation and including the essential workflow. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the multipart lifecycle (initiate, upload, complete) and the schema documents all parameters. However, it omits details like part upload ordering, response behavior, or constraints beyond schema, leaving the agent with some ambiguity about invocation expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter has a description. The tool description adds no meaning beyond the schema; it only reinforces the workflow without clarifying parameter relationships or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Upload a part in a multipart upload' with a specific verb and resource. It distinguishes itself from sibling tools like ncloud_put_object (single object upload) and ncloud_complete_multipart_upload (finalization) by explicitly mentioning the multipart context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly lays out the sequence: initiate multipart upload first, then upload parts, then complete. This gives clear usage context. However, it does not mention when to avoid this tool or compare against alternatives such as ncloud_put_object for small objects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_validate_policyARead-onlyIdempotent
Validate a user-created policy definition on the SERVER before creating it. Unlike a dryRun preview, this actually calls the Ncloud validation API and returns success plus INFO/WARNING/ERROR details (an ERROR entry means the definition would be rejected). No policy is created.
| Name | Required | Description | Default |
|---|---|---|---|
| policyName | Yes | Policy name to validate (3-30 chars: Korean/Japanese/English letters, digits, '.', '_', '-'; must start with a letter) | |
| description | No | Description of the policy (0-300 bytes) | |
| permissions | Yes | Permission statements to validate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the read-only/idempotent annotations, the description discloses that it makes an actual server-side API call and explains the return semantics: success plus INFO/WARNING/ERROR details, with ERROR indicating rejection. This materially helps an agent interpret results without an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences front-load the core action and server-side behavior, then add the return interpretation and the no-side-effect guarantee. Every clause earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a safe validation tool, the description covers what it does, where it runs, how to interpret results, and the absence of side effects. The detailed nested permissions schema handles parameter specifics, so no critical guidance is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents policyName, description, and permissions. The description adds no parameter-level detail, but none is needed because the schema already carries that burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Validate') with a clear resource ('user-created policy definition on the SERVER before creating it'). It distinguishes itself from a dryRun preview and from policy creation/update siblings, so an agent knows exactly what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'before creating it' gives a clear when-to-use condition, and 'No policy is created' clarifies the boundary with creation tools. It contrasts with a dryRun preview, though it does not explicitly name an alternative tool such as ncloud_create_policy, so a small gap remains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_create_categoryA
Create a new VOD Station encoding category. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Category name (folder with this name is auto-created in output bucket) | |
| dryRun | No | If true, returns a preview without actually creating the category | |
| filePath | Yes | Detailed path to save output files (e.g., /) | |
| thumbnail | No | Whether to enable thumbnail extraction | |
| bucketName | Yes | Output bucket name to save encoded files | |
| accessControl | No | Output file disclosure scope | PRIVATE |
| encodingOptions | No | Encoding option IDs to apply | |
| notificationUrl | No | Callback URL for encoding completion notifications | |
| encodingOptionTemplateId | No | Encoding template ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only include destructiveHint=false, so the description carries some burden. It adds the dryRun preview behavior, which is a useful non-obvious trait. However, it does not disclose side effects like folder auto-creation (present only in the schema) or what happens on success. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the primary action. Every word earns its place, and the dryRun tip is valuable context. No waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 9-parameter create tool with no output schema, the description is minimal. It covers the core purpose and dryRun but lacks context on prerequisites, return behavior, or how encoding options relate. The schema fills in parameter details, but the description leaves the agent with gaps about the overall workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with detailed parameter descriptions (e.g., name mentions folder auto-creation). The description adds no extra parameter meaning beyond referencing dryRun, which is already documented in the schema. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new VOD Station encoding category' with a specific verb and resource. It distinguishes itself from sibling tools like ncloud_vodstation_list_categories and channel management tools. The addition of dryRun=false preview adds extra clarity about the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a helpful dryRun tip, indicating when to preview without creating. However, it does not explicitly state when to use this tool versus alternatives, nor does it list exclusions or prerequisites beyond what the schema provides. The usage is largely implied by the tool's unique purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_create_channelA
Create a new VOD Station streaming channel. Use dryRun=true to preview without creating.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | If true, returns a preview without actually creating the channel | |
| createCdn | No | Whether to auto-create a Global Edge CDN | |
| channelName | Yes | Channel name (3-20 chars) | |
| cdnProfileId | No | Global Edge profile ID (required when createCdn=true) | |
| protocolList | No | Streaming protocols (HLS, DASH) | |
| cdnRegionType | No | CDN service region (required when createCdn=true) | |
| segmentDuration | No | Playback time per segment in seconds (default: 10) | |
| storageBucketName | Yes | Object Storage bucket name containing video files | |
| accessPrivateFiles | No | Whether to allow access to private files in the bucket | |
| segmentDurationOption | No | Segmentation method: BASIC (regular intervals) or VARIABLE (keyframe-based) | BASIC |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint=false, which is not contradicted. The description adds the dryRun preview behavior but does not disclose other behavioral traits such as costs, prerequisites (e.g., existing storage bucket), or what happens on failure. Given the sparse annotations, more detail would be expected for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that convey the core action and a key option. It is front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 10 parameters and no output schema, yet the description provides only minimal high-level context. It does not mention prerequisites, expected return values, or follow-up steps (e.g., starting the channel after creation). Given the tool's complexity, a bit more context is needed, though the schema covers parameter details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already well-documented. The description adds no new parameter semantics beyond what the schema provides (the dryRun mention is redundant with the schema description). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource ('Create a new VOD Station streaming channel') and clearly distinguishes from sibling tools like delete, start, stop, and list. It also mentions the dryRun preview feature, which adds clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use this tool (to create a VOD Station channel) and provides a specific usage tip (dryRun to preview without creating). It does not explicitly name alternatives or exclusions, but the verb 'create' and sibling tool names imply the use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_delete_channelADestructiveIdempotent
⚠️ Destructive: Permanently delete a VOD Station channel. Only channels in STOPPED status can be deleted. Set confirm=true to execute.
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Must be true to actually execute the destructive operation | |
| channelId | Yes | Channel ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds useful context: 'Permanently' emphasizes irreversibility, the STOPPED status requirement constrains when the operation is valid, and 'Set confirm=true' explains the safety confirmation mechanism. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the destructive warning and packs in the status condition and confirmation requirement. Every clause earns its place; no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with two parameters and no output schema, the description covers the core purpose, the status precondition, and the confirm flag requirement. It could mention permissions or error behavior, but the included details are sufficient for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, with clear schema descriptions for confirm and channelId. The description's 'Set confirm=true to execute' merely repeats what the schema already states, so it adds no new meaning beyond structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the exact action: 'Permanently delete a VOD Station channel.' The verb 'delete' combined with the specific resource 'VOD Station channel' clearly distinguishes it from sibling operations like list, get, create, start, and stop.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit precondition: 'Only channels in STOPPED status can be deleted.' It also instructs the user to 'Set confirm=true to execute,' which acts as a usage requirement. It does not explicitly contrast with alternatives, but the status condition implies you must stop the channel first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_get_channelARead-only
Get detailed information about a specific VOD Station channel
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID (e.g., vs-20250821095732-xxxxxxx) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description's 'Get' aligns with that. However, the description adds little beyond the annotation—'detailed information' is vague and doesn't disclose what fields are returned or error behavior. It doesn't contradict annotations, so a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 10 words, front-loaded with the key verb and resource. No filler or redundancy; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-detail tool with one well-documented parameter and a readOnly annotation, the description is sufficient. While there's no output schema, 'detailed information' conveys the return type. It doesn't enumerate fields, but that's acceptable for this simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the channelId property includes a description and example format. The description adds no additional meaning beyond restating that it targets a specific channel. Baseline 3 is correct when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Get' with the resource 'detailed information about a specific VOD Station channel'. It clearly distinguishes from sibling tools like list_channels (for listing all channels) and create/delete/start/stop (for mutations), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use this when you need details about a specific channel identified by channelId. It doesn't explicitly name alternatives or exclusions, but the sibling context (list_channels for a list) makes the use case clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_list_categoriesARead-only
List all VOD Station encoding categories
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSizeNo | No | Number of items per page (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotation readOnlyHint=true already covers the safety profile, and the description adds the 'list all' scope and domain context. However, it does not disclose additional behavioral traits such as pagination behavior, result ordering, or whether only accessible categories are returned. The description adds minimal value beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero wasted words. It is appropriately sized for a simple read-only list operation and communicates the core purpose directly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity, the readOnlyHint annotation, and full parameter schema coverage, the description is adequate. It is missing usage guidance and some return detail (since there is no output schema), but the succinct purpose statement is sufficient for an agent to select and invoke the tool without confusion. The lack of an output schema is partially mitigated by the phrase 'List all,' implying a list result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers both parameters (pageNo and pageSizeNo) with descriptions, giving 100% coverage. The description does not add any additional meaning about parameter usage or formatting, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' and identifies the resource as 'VOD Station encoding categories,' clearly distinguishing it from sibling tools like ncloud_vodstation_list_channels and ncloud_vodstation_get_channel. The scope 'all' is explicit, leaving no ambiguity about what the tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. For a listing tool, it is implied that one would use it to fetch categories, but the description does not explicitly state when it should be preferred over related tools such as list_channels or create_category.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_list_channelsARead-only
List all VOD Station streaming channels with pagination
| Name | Required | Description | Default |
|---|---|---|---|
| pageNo | No | Page number (default: 1) | |
| pageSizeNo | No | Number of items per page (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the operation uses pagination, which is useful beyond the readOnlyHint annotation. However, it does not disclose return format, ordering, defaults, or other behavioral details, so it provides minimal extra context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core purpose and includes the key capability (pagination). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple list operation with only two optional pagination parameters, and the description plus annotations cover its safety profile. However, since there is no output schema, the description could have mentioned the return structure (e.g., channel list) to be fully complete, but the name and purpose make it largely inferable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters (pageNo and pageSizeNo) with descriptions and defaults, achieving 100% coverage. The description's mention of pagination adds little to what the schema already conveys, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('VOD Station streaming channels'), and clearly states scope ('all') and pagination, distinguishing it from sibling tools like ncloud_vodstation_get_channel.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the tool is for listing all channels, which is a distinct context from the single-channel retrieval of get_channel. However, it does not explicitly name alternatives or exclude scenarios, so it falls short of a score 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_start_channelAIdempotent
Start (resume) a VOD Station channel that is in STOPPED status
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID to start |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotated with idempotentHint: true and destructiveHint: false, the description adds the key behavioral detail that the target channel must be in STOPPED status, which is not covered by annotations. It does not contradict annotations and provides useful context about the state transition being performed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 11 words that front-loads the verb 'Start (resume)'. Every word contributes to understanding the action and its precondition. There is no redundancy or extraneous detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema, idempotent and non-destructive annotations), the description covers the essential semantics: the action and the required state. It could be more explicit about behavior if the channel is already running, but the idempotent annotation and STOPPED-status condition provide sufficient context for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage with channelId described as 'Channel ID to start'. The tool description adds no further parameter-specific meaning beyond confirming that the channel must be a VOD Station channel, but this is already implied by the tool name and schema. Baseline 3 is appropriate for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Start (resume)') and the resource ('VOD Station channel'), with a specific condition ('that is in STOPPED status'). This distinguishes it from sibling tools like ncloud_vodstation_stop_channel, which performs the opposite action, and ncloud_vodstation_create/delete, which manage channel lifecycle.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: the tool should be used when a VOD Station channel is in STOPPED status to resume it. It implies a prerequisite condition, though it does not explicitly name alternatives or state when not to use it. The 'STOPPED status' qualifier serves as a de facto usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_stop_channelAIdempotent
Stop a VOD Station channel that is in READY status
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Channel ID to stop |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent and non-destructive behavior. The description adds value by specifying the READY status precondition, which is a behavioral constraint not visible in annotations. It does not describe error handling for non-READY channels, but the key state requirement is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and resource. It contains no unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of a one-parameter state-change tool with good annotations and schema coverage, the description is nearly complete. It omits what happens if the channel is not in READY status, but this is a minor gap for such a straightforward operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the single parameter (channelId) with 100% coverage. The description adds no additional parameter context, but the schema's description is sufficient, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (stop), the resource (VOD Station channel), and a condition (in READY status). It distinguishes from sibling tools like ncloud_vodstation_start_channel and ncloud_vodstation_delete_channel by specifying the state transition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'that is in READY status' provides a clear prerequisite for usage, implying it should only be called on channels in that state. However, it does not explicitly mention alternatives like starting or deleting a channel, though sibling names make that context available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_vodstation_update_channelAIdempotent
Update a VOD Station streaming channel's details (name, protocols, segment settings, encryption/DRM). This is a PUT that replaces the channel configuration, so provide the full desired state.
| Name | Required | Description | Default |
|---|---|---|---|
| drm | No | Multi-DRM configuration | |
| channelId | Yes | Channel ID to update (e.g., vs-20250821095732-xxxxxxx) | |
| channelName | Yes | Channel name (3-20 chars, alphanumeric + hyphen). Sent as the API 'name' field | |
| protocolList | Yes | Streaming protocols (HLS, DASH) | |
| encryptionList | No | Content protection (encryption) settings per protocol | |
| segmentDuration | Yes | Playback seconds per segment (5-20) | |
| segmentDurationOption | No | Segmentation method: BASIC (default, regular intervals) or VARIABLE (keyframe-based) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotentHint=true and destructiveHint=false. The description adds that it uses PUT and replaces configuration, which is consistent and provides additional behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, efficient, and front-loaded with key information: action, resource, and behavioral note. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter tool with nested objects and no output schema, the description covers the essential behavioral note (full state required). It could mention expected response or error handling, but given annotations and schema coverage, it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema explains each parameter. The description groups parameters into categories but does not add new semantics or explanations beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates a VOD Station channel's details, listing the categories (name, protocols, segment settings, encryption/DRM). It distinguishes from sibling tools like create, delete, start, stop by focusing on update and noting it's a PUT replacement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly notes 'This is a PUT that replaces the channel configuration, so provide the full desired state,' giving a critical usage guideline. It could be improved by mentioning reading current state via get_channel first, but the guidance is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_wms_get_monitorARead-only
Get the configuration of one WMS monitoring scenario
| Name | Required | Description | Default |
|---|---|---|---|
| scenarioId | Yes | Scenario ID (from ncloud_wms_list_monitors) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a safe read, so the bar is lower. The description reinforces it is a configuration read but adds no extra context (rate limits, auth, what 'configuration' includes), leaving it at the baseline for an annotated tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the verb and resource front-loaded and no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter read with annotations covering the safety profile and no output schema, the definition is sufficient to invoke correctly. It could mention the return shape, but that gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents scenarioId fully. The description contributes nothing about the parameter beyond what the schema provides, which is the expected baseline when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (configuration of one WMS monitoring scenario), which is clearer than a bare name restatement. It implies the singular-vs-list distinction from ncloud_wms_list_monitors but does not name the sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description itself gives no when-to-use guidance or alternatives. However, the schema's parameter note '(from ncloud_wms_list_monitors)' implies the prerequisite workflow of listing first, so usage is weakly implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_wms_get_result_detailBRead-only
Get one WMS monitoring result in detail (load time, transactions/steps, error logs)
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | Aggregation: RAW | MIN5 | MIN30 | HOUR2 | DAY1 | |
| resultId | Yes | Monitoring result ID (from ncloud_wms_get_results) | |
| scenarioId | Yes | Scenario ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so safety is covered. The description adds value by disclosing the detail content retrieved (load time, steps, error logs), but says nothing about permissions, pagination, or identity scoping (scenario/result/type).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight, front-loaded sentence with zero filler. The parenthetical is a small redundancy but earns its place by previewing the return content in the absence of an output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple read tool with fully documented parameters, and it offers a high-level view of returned fields since no output schema exists. It stops short of explaining how scenarioId/resultId/type combine or what the detail record structure looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and includes the enum for type and a cross-reference for resultId, so the schema already carries parameter meaning. The description adds no additional parameter-level detail, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Get) and resource (WMS monitoring result) scoped to 'one ... in detail', and names the content it returns (load time, transactions/steps, error logs). It contrasts contextually with the sibling list tool ncloud_wms_get_results, though it does not name that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the singular 'one result' plus the resultId parameter (documented as coming from ncloud_wms_get_results) suggests use after listing. There is no explicit when-to-use, when-not-to-use, or named alternative in the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_wms_get_resultsBRead-only
Get the results of a WMS scenario over a time window: average load time, success/error counts and availability, per monitoring location
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Window end as a Unix timestamp | |
| from | Yes | Window start as a Unix timestamp | |
| type | Yes | Aggregation: RAW | MIN5 | MIN30 | HOUR2 | DAY1 | |
| scenarioId | Yes | Scenario ID | |
| resultStatus | No | Filter by result status | |
| locationTypeCodes | No | Monitoring agent locations, comma-separated: KR, USW, JP, SG, DE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already establishes this as a safe read. The description adds useful behavioral context beyond that: results are scoped to a time window and broken down per monitoring location, and it names the aggregate metrics returned. It does not mention pagination, result caps, or how the aggregation type affects output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the resource and returned metrics come first. It is efficient, though the metric enumeration makes it slightly dense without aiding tool selection.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does describe the shape of the result (aggregated metrics per location), which is the most important gap to fill. It still omits how the 'type' aggregation granularity changes the response and any volume/pagination expectations for a 6-parameter read.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with all 6 parameters documented, including enum values, so the baseline is 3. The description echoes the time-window (from/to) and per-location (locationTypeCodes) dimensions without adding syntax or meaning the schema lacks.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get the results of a WMS scenario') and enumerates the returned metrics (average load time, success/error counts, availability), which is concrete. It does not name or distinguish itself from the close sibling ncloud_wms_get_result_detail, so the differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'over a time window' phrase implies the query is temporal, but there is no explicit when-to-use guidance, no exclusions, and no mention of the obvious alternative ncloud_wms_get_result_detail or ncloud_wms_list_monitors. The agent must infer routing on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_wms_list_monitorsARead-only
List all Web service Monitoring System (WMS) scenarios: name, monitoringType (URL | SCENARIO), interval, serviceYn (active/paused), url, scenarioId
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=true. The description goes beyond that by disclosing the returned fields and the enum semantics of monitoringType (URL | SCENARIO) and serviceYn (active/paused), which is valuable since no output schema exists. It omits pagination or result-count behavior, so it is strong but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the action verb first and the returned field list after the colon. Nothing is wasted or repeated from structured data.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema present, the description's enumeration of return fields carries the missing documentation, which is the right call. It lacks any note on result volume or pagination, which is a minor gap for a no-param list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there are no parameter semantics to document and the baseline of 4 applies. The description correctly implies a no-filter, list-everything call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (List) and resource (WMS monitoring scenarios/monitors) and enumerates the exact fields returned, which lets an agent distinguish it from the singular ncloud_wms_get_monitor. It stops short of naming siblings explicitly, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no exclusions, and no named alternative. The word 'all' faintly implies an unfiltered enumeration, but there is no explicit condition for choosing this over ncloud_wms_get_monitor or the other WMS siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ncloud_wms_set_statusAIdempotent
Start or pause a WMS monitoring scenario (PUT .../settings with serviceYn: true = start, false = pause)
| Name | Required | Description | Default |
|---|---|---|---|
| serviceYn | Yes | true = start monitoring, false = pause monitoring | |
| scenarioId | Yes | Scenario ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the write/idempotent/non-destructive profile, so the bar is lower; the description adds the mechanism (PUT .../settings) and the boolean-to-action mapping, which is useful context. It omits side effects on existing monitoring data or permission requirements, keeping it just short of full disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core action first and the parameter mapping parenthetically appended; no wasted text. Slightly dense but efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter toggle with no output schema and full annotation coverage, the description supplies what an agent needs to call it correctly. It could note prerequisites or the affected resource scope, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters are documented in the schema, including the same true=start/false=pause mapping the description repeats. The description adds the endpoint context but no new parameter meaning, so baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb pair (start/pause) and resource (WMS monitoring scenario), making the tool's job unambiguous. It is clearly distinguished from the sibling read-only tools (ncloud_wms_list_monitors, ncloud_wms_get_monitor, etc.).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by spelling out start vs pause, but gives no explicit when-to-use/when-not guidance and never names the sibling tools an agent might confuse this with (e.g., list/get monitor). Adequate but leaves routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
262 tool updates
v2.0.1- Changed
ncloud_advisor_download_all_results2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / savePathAdded value: +{ + "description": "Local file path to save the .xlsx to (recommended). If omitted, the file is returned inline as base64 when it is 256 KB or smaller.", + "type": "string" +}
- Changed
ncloud_advisor_download_category_results1 field changed- added
Input schema / properties / savePathAdded value: +{ + "description": "Local file path to save the .xlsx to (recommended). If omitted, the file is returned inline as base64 when it is 256 KB or smaller.", + "type": "string" +}
- Changed
ncloud_advisor_download_item_results1 field changed- added
Input schema / properties / savePathAdded value: +{ + "description": "Local file path to save the .xlsx to (recommended). If omitted, the file is returned inline as base64 when it is 256 KB or smaller.", + "type": "string" +}
- Changed
ncloud_apigw_create_stage14 fields changed- added
Input schema / properties / apiIdAdded value: +{ + "description": "API ID to create the stage for", + "type": "string" +} - added
Input schema / properties / cacheTtlSecAdded value: +{ + "description": "API cache TTL in seconds (1-3600)", + "type": "number" +} - added
Input schema / properties / deploymentDescriptionAdded value: +{ + "description": "Description for the stage deployment", + "type": "string" +} - added
Input schema / properties / endpointDomainAdded value: +{ + "description": "Backend endpoint domain for the stage, e.g. https://backend.example.com (required)", + "type": "string" +} - added
Input schema / properties / ipAclCodeAdded value: +{ + "description": "IP ACL mode; required together with ipAclList", + "enum": [ + "ALLOWED", + "REJECTED" + ], + "type": "string" +} - added
Input schema / properties / ipAclListAdded value: +{ + "description": "IP ACL list; required together with ipAclCode", + "type": "string" +} - added
Input schema / properties / isMaintenanceAdded value: +{ + "description": "Enable maintenance mode (default false)", + "type": "boolean" +} - changed
Input schema / properties / productId / descriptionPrevious value: -"Product ID to create stage for"New value: +"Product ID the API belongs to" - added
Input schema / properties / responseAdded value: +{ + "description": "Response body for the maintenance status code (0-1500 chars)", + "type": "string" +} - removed
Input schema / properties / stageDescriptionRemoved value: -{ - "description": "Description for the new stage", - "type": "string" -} - changed
Input schema / properties / stageName / descriptionPrevious value: -"Name for the new stage"New value: +"Name for the new stage (1-20 chars: letters, digits, '-', '_')" - added
Input schema / properties / statusCodeAdded value: +{ + "description": "Status code returned while in maintenance (100-599)", + "type": "number" +} - added
Input schema / properties / throttleRpsAdded value: +{ + "description": "Per-method requests-per-second limit", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "productId", - "stageName" -]New value: +[ + "productId", + "apiId", + "stageName", + "endpointDomain" +]
- Changed
ncloud_apigw_delete_stage3 fields changed- added
Input schema / properties / apiIdAdded value: +{ + "description": "API ID the stage belongs to", + "type": "string" +} - changed
Input schema / properties / productId / descriptionPrevious value: -"Product ID the stage belongs to"New value: +"Product ID the API belongs to" - changed
Input schema / requiredPrevious value: -[ - "productId", - "stageId" -]New value: +[ + "productId", + "apiId", + "stageId" +]
- Added
ncloud_apigw_get_stage - Changed
ncloud_apigw_list_stages5 fields changed- added
Input schema / properties / apiIdAdded value: +{ + "description": "API ID to list stages for", + "type": "string" +} - removed
Input schema / properties / limitRemoved value: -{ - "description": "Maximum number of response data for pagination", - "type": "number" -} - removed
Input schema / properties / offsetRemoved value: -{ - "description": "Starting point of the response data for pagination", - "type": "number" -} - changed
Input schema / properties / productId / descriptionPrevious value: -"Product ID to list stages for"New value: +"Product ID the API belongs to" - changed
Input schema / requiredPrevious value: -[ - "productId" -]New value: +[ + "productId", + "apiId" +]
- Added
ncloud_cdss_get_node_storage - Added
ncloud_change_block_storage_size - Added
ncloud_cm2_create_eab_credential - Added
ncloud_cm2_deactivate_eab_credential - Added
ncloud_cm2_delete_domain - Added
ncloud_cm2_download_certificate - Added
ncloud_cm2_extend_subscription - Added
ncloud_cm2_get_certificate_chain - Added
ncloud_cm2_get_dcv_status - Added
ncloud_cm2_list_advanced_certificates - Added
ncloud_cm2_list_certificate_types - Added
ncloud_cm2_list_certificates - Added
ncloud_cm2_list_cloud_certificates - Added
ncloud_cm2_list_domains - Added
ncloud_cm2_list_eab_credentials - Added
ncloud_cm2_list_recent_changes - Added
ncloud_cm2_register_domain - Added
ncloud_cm2_register_external_certificate - Added
ncloud_cm2_register_private_key - Added
ncloud_cm2_reissue_certificate - Added
ncloud_cm2_request_advanced_certificate - Added
ncloud_cm2_request_cloud_basic_certificate - Added
ncloud_cm2_request_global_edge_certificate - Added
ncloud_cm2_revoke_certificate - Added
ncloud_cm2_set_renewal_status - Changed
ncloud_copy_rule_group2 fields changed- removed
Input schema / properties / groupNameRemoved value: -{ - "description": "Name for the new copied rule group", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "ruleGroupId", - "groupName" -]New value: +[ + "ruleGroupId" +]
- Changed
ncloud_create_custom_schema18 fields changed- changed
Input schema / properties / fields / descriptionPrevious value: -"Schema field definitions"New value: +"Schema field definitions (FieldDto[])" - added
Input schema / properties / fields / items / properties / aggregationsAdded value: +{ + "additionalProperties": { + "items": { + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + }, + "type": "array" + }, + "description": "Metric fields only: aggregation functions per interval, e.g. {\"Min1\": [\"AVG\"], \"Min5\": [\"AVG\",\"MAX\"]}", + "propertyNames": { + "enum": [ + "Min1", + "Min5", + "Min30", + "Hour2", + "Day1" + ] + }, + "type": "object" +} - added
Input schema / properties / fields / items / properties / counterAdded value: +{ + "description": "Counter metric (default false)", + "type": "boolean" +} - added
Input schema / properties / fields / items / properties / dataTypeAdded value: +{ + "description": "Data type (dimension fields must be STRING)", + "enum": [ + "STRING", + "INTEGER", + "LONG", + "FLOAT" + ], + "type": "string" +} - added
Input schema / properties / fields / items / properties / descAdded value: +{ + "description": "Field description", + "type": "string" +} - changed
Input schema / properties / fields / items / properties / dimension / descriptionPrevious value: -"Whether this field is a dimension"New value: +"true if this field is a dimension (default false)" - removed
Input schema / properties / fields / items / properties / fieldNameRemoved value: -{ - "description": "Field name", - "type": "string" -} - removed
Input schema / properties / fields / items / properties / fieldTypeRemoved value: -{ - "description": "Field data type", - "enum": [ - "STRING", - "INTEGER", - "LONG", - "FLOAT" - ], - "type": "string" -} - added
Input schema / properties / fields / items / properties / idDimensionAdded value: +{ + "description": "Dimension used to identify resources in event rules (exactly one dimension must be the idDimension)", + "type": "boolean" +} - added
Input schema / properties / fields / items / properties / metricAdded value: +{ + "description": "true if this field is a metric (default false)", + "type": "boolean" +} - added
Input schema / properties / fields / items / properties / metricTypeAdded value: +{ + "description": "Metric type", + "enum": [ + "BASIC", + "EXTENDED", + "CUSTOM" + ], + "type": "string" +} - added
Input schema / properties / fields / items / properties / nameAdded value: +{ + "description": "Field name", + "type": "string" +} - changed
Input schema / properties / fields / items / requiredPrevious value: -[ - "fieldName", - "fieldType" -]New value: +[ + "name", + "dataType" +] - added
Input schema / properties / fields / minItemsAdded value: +1 - changed
Input schema / properties / prodName / descriptionPrevious value: -"Product name(s) for the custom schema"New value: +"Schema (product) name, must start with \"Custom/\" (e.g. \"Custom/MyProduct\")" - removed
Input schema / properties / prodName / itemsRemoved value: -{ - "type": "string" -} - added
Input schema / properties / prodName / patternAdded value: +"^Custom\\/" - changed
Input schema / properties / prodName / typePrevious value: -"array"New value: +"string"
- Changed
ncloud_create_launch_config10 fields changed- changed
Input schema / properties / initScriptNo / descriptionPrevious value: -"Init script number to run on launch"New value: +"Init script number to run on first boot" - changed
Input schema / properties / isEncryptedVolume / descriptionPrevious value: -"Whether to encrypt the root volume"New value: +"Whether to encrypt the root volume (RHV only)" - changed
Input schema / properties / launchConfigurationName / descriptionPrevious value: -"Launch configuration name"New value: +"Launch configuration name (1-255 chars: lowercase letters, digits, '-'; auto-generated when omitted)" - changed
Input schema / properties / loginKeyName / descriptionPrevious value: -"Login key name for SSH access"New value: +"Login key name for SSH access (defaults to the most recently created key)" - changed
Input schema / properties / memberServerImageInstanceNo / descriptionPrevious value: -"Member server image instance number (alternative to serverImageProductCode)"New value: +"Member server image instance number — for a user-created server image. One of serverImageProductCode / serverImageNo / memberServerImageInstanceNo is required." - added
Input schema / properties / serverImageNoAdded value: +{ + "description": "Server image number — for a new (public) server image (required path for KVM/Gen3). One of serverImageProductCode / serverImageNo / memberServerImageInstanceNo is required.", + "type": "string" +} - changed
Input schema / properties / serverImageProductCode / descriptionPrevious value: -"Server image product code"New value: +"Server image product code — for a new (public) server image, RHV/XEN. One of serverImageProductCode / serverImageNo / memberServerImageInstanceNo is required." - changed
Input schema / properties / serverProductCode / descriptionPrevious value: -"Server product (spec) code"New value: +"Server product (spec) code — pair with serverImageProductCode (XEN/RHV). One of serverProductCode / serverSpecCode is required (the API rejects a request without a spec)." - added
Input schema / properties / serverSpecCodeAdded value: +{ + "description": "Server spec code — pair with serverImageNo or memberServerImageInstanceNo (KVM/Gen3, e.g. c2-g3, s2-g3). One of serverProductCode / serverSpecCode is required (the API rejects a request without a spec).", + "type": "string" +} - removed
Input schema / requiredRemoved value: -[ - "serverImageProductCode", - "serverProductCode" -]
- Changed
ncloud_create_maintenance3 fields changed- added
Input schema / properties / dimensions / additionalProperties / itemsAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "type": "object" +} - added
Input schema / properties / dimensions / additionalProperties / typeAdded value: +"array" - changed
Input schema / properties / dimensions / descriptionPrevious value: -"Target dimensions (resource identifiers)"New value: +"Target resources keyed by cw_key: {\"<cw_key>\": [{\"instanceNo\": \"1111\", \"type\": \"svr\"}]} (PMCreateUpdateDto)"
- Changed
ncloud_create_metrics_group7 fields changed- added
Input schema / properties / groupDescAdded value: +{ + "description": "Description (<= 300 chars)", + "type": "string" +} - changed
Input schema / properties / groupName / descriptionPrevious value: -"Name of the metrics group"New value: +"Name of the metrics group (1-100 chars)" - removed
Input schema / properties / metricListRemoved value: -{ - "description": "List of metric configurations", - "items": { - "additionalProperties": false, - "properties": { - "aggregation": { - "description": "Aggregation type", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" - }, - "condition": { - "description": "Threshold condition", - "enum": [ - "GT", - "GTE", - "LT", - "LTE", - "EQ" - ], - "type": "string" - }, - "duration": { - "description": "Duration in minutes before triggering", - "type": "number" - }, - "eventLevel": { - "description": "Event severity level", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric item ID", - "type": "string" - }, - "threshold": { - "description": "Threshold value", - "type": "number" - } - }, - "required": [ - "metricGroupItemId", - "condition", - "threshold", - "duration", - "eventLevel" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / metricsGroupItemsAdded value: +{ + "description": "Metric items (at least one)", + "items": { + "additionalProperties": false, + "properties": { + "calculation": { + "description": "Aggregation of the metric", + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + }, + "condition": { + "description": "Threshold operator (LT, LE, EQ, GE, GT)", + "enum": [ + "LT", + "LE", + "EQ", + "GE", + "GT" + ], + "type": "string" + }, + "desc": { + "description": "Metric description", + "type": "string" + }, + "dimensions": { + "description": "Dimension filters, e.g. [{dim:\"type\", val:\"svr\"}]", + "items": { + "additionalProperties": false, + "properties": { + "dim": { + "description": "Dimension name defined in the schema (e.g. \"type\")", + "type": "string" + }, + "val": { + "description": "Dimension value (e.g. \"svr\")", + "type": "string" + } + }, + "required": [ + "dim", + "val" + ], + "type": "object" + }, + "type": "array" + }, + "duration": { + "description": "Duration (>= 1)", + "type": "number" + }, + "eventLevel": { + "description": "Event level", + "enum": [ + "INFO", + "WARNING", + "CRITICAL" + ], + "type": "string" + }, + "metric": { + "description": "Metric name (e.g. avg_cpu_used_rto)", + "type": "string" + }, + "metricGroupItemId": { + "description": "Metric group item ID (when updating an existing item)", + "type": "string" + }, + "threshold": { + "description": "Threshold value", + "type": "number" + } + }, + "required": [ + "metric", + "eventLevel", + "condition", + "calculation", + "duration", + "threshold" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / prodTypeAdded value: +{ + "description": "Product type: system (Ncloud product) or custom (Custom Schema)", + "enum": [ + "system", + "custom" + ], + "type": "string" +} - added
Input schema / properties / temporaryGroupAdded value: +{ + "default": false, + "description": "true: create the Event Rule without creating a metrics group (default false)", + "type": "boolean" +} - changed
Input schema / requiredPrevious value: -[ - "prodKey", - "groupName", - "metricList" -]New value: +[ + "prodKey", + "groupName", + "metricsGroupItems" +]
- Changed
ncloud_create_monitor_group7 fields changed- added
Input schema / properties / groupDescAdded value: +{ + "description": "Description of the monitor group", + "type": "string" +} - added
Input schema / properties / monitorGroupItemListAdded value: +{ + "description": "Monitoring targets ([{resourceId, nrn?}])", + "items": { + "additionalProperties": false, + "properties": { + "nrn": { + "description": "Resource NRN (Resource Manager)", + "type": "string" + }, + "resourceId": { + "description": "Monitoring target resource ID (e.g. server instance number)", + "type": "string" + }, + "resourceName": { + "description": "Resource name", + "type": "string" + } + }, + "required": [ + "resourceId" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / prodNameAdded value: +{ + "description": "Product name", + "type": "string" +} - removed
Input schema / properties / resourceListRemoved value: -{ - "description": "Array of resource dimension objects to include in the group", - "items": { - "additionalProperties": { - "type": "string" - }, - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / temporaryGroupAdded value: +{ + "description": "true: create the Event Rule without creating a monitor group", + "type": "boolean" +} - added
Input schema / properties / typeAdded value: +{ + "description": "Target group type: NORMAL (default) or ASG (Auto Scaling Group)", + "enum": [ + "NORMAL", + "ASG" + ], + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "prodKey", - "groupName", - "resourceList" -]New value: +[ + "prodKey", + "monitorGroupItemList" +]
- Changed
ncloud_create_network_interface13 fields changed- changed
Input schema / properties / accessControlGroupNoList / descriptionPrevious value: -"List of ACG numbers to apply"New value: +"List of ACG numbers to apply (1-3)" - added
Input schema / properties / accessControlGroupNoList / maxItemsAdded value: +3 - added
Input schema / properties / ipAdded value: +{ + "description": "Primary private IP within the subnet range (auto-assigned when omitted; the first 6 and the last subnet addresses are reserved)", + "type": "string" +} - added
Input schema / properties / isBareMetalAdded value: +{ + "description": "true for a bare-metal server interface (requires serverInstanceNo)", + "type": "boolean" +} - changed
Input schema / properties / networkInterfaceDescription / descriptionPrevious value: -"Network interface description"New value: +"Network interface description (up to 1000 bytes)" - changed
Input schema / properties / networkInterfaceName / descriptionPrevious value: -"Network interface name"New value: +"Network interface name (3-30 chars: lowercase letters, digits, '-'; auto-generated when omitted)" - removed
Input schema / properties / privateIpRemoved value: -{ - "description": "Private IP address to assign", - "type": "string" -} - added
Input schema / properties / secondaryIpCountAdded value: +{ + "description": "Number of secondary IPs to auto-assign (0-5)", + "maximum": 5, + "minimum": 0, + "type": "integer" +} - added
Input schema / properties / secondaryIpListAdded value: +{ + "description": "Secondary IPs to assign (together with secondaryIpCount at most 5)", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / serverInstanceNoAdded value: +{ + "description": "Server instance to attach to on creation (private-subnet interfaces only)", + "type": "string" +} - changed
Input schema / properties / subnetNo / descriptionPrevious value: -"Subnet number to create the network interface in"New value: +"Subnet number to create the network interface in (required)" - added
Input schema / properties / vpcNoAdded value: +{ + "description": "VPC number the subnet belongs to (required; see ncloud_list_vpcs)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "subnetNo", - "accessControlGroupNoList" -]New value: +[ + "vpcNo", + "subnetNo", + "accessControlGroupNoList" +]
- Changed
ncloud_create_rule_directly13 fields changed- added
Input schema / properties / asgPolicysAdded value: +{ + "description": "VPC Auto Scaling group policies", + "items": { + "additionalProperties": false, + "properties": { + "autoScalingGroupNo": { + "description": "Auto Scaling group number", + "type": "number" + }, + "autoScalingPolicyNo": { + "description": "Auto Scaling policy number", + "type": "number" + }, + "policyName": { + "description": "Auto Scaling policy name", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / cfTriggersAdded value: +{ + "description": "Cloud Functions trigger names", + "items": { + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / cfgRuleListRemoved value: -{ - "description": "Rule configurations", - "items": { - "additionalProperties": false, - "properties": { - "aggregation": { - "description": "Aggregation type", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" - }, - "condition": { - "description": "Threshold condition", - "enum": [ - "GT", - "GTE", - "LT", - "LTE", - "EQ" - ], - "type": "string" - }, - "duration": { - "description": "Duration in minutes", - "type": "number" - }, - "eventLevel": { - "description": "Event severity level", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric item ID", - "type": "string" - }, - "threshold": { - "description": "Threshold value", - "type": "number" - } - }, - "required": [ - "metricGroupItemId", - "condition", - "threshold", - "duration", - "eventLevel" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / classicAsgPolicysAdded value: +{ + "description": "Classic Auto Scaling group policies", + "items": { + "$ref": "#/properties/asgPolicys/items" + }, + "type": "array" +} - added
Input schema / properties / groupDescAdded value: +{ + "description": "Description (<= 300 chars)", + "type": "string" +} - changed
Input schema / properties / groupName / descriptionPrevious value: -"Name of the rule group"New value: +"Name of the rule group (1-100 chars)" - added
Input schema / properties / metricsGroupAdded value: +{ + "additionalProperties": false, + "description": "Metrics group definition (CreateOrUpdateMetricsGrpDto)", + "properties": { + "groupDesc": { + "description": "Description (<= 300 chars)", + "type": "string" + }, + "groupName": { + "description": "Name of the metrics group (1-100 chars)", + "type": "string" + }, + "metricsGroupItems": { + "description": "Metric items (at least one)", + "items": { + "additionalProperties": false, + "properties": { + "calculation": { + "description": "Aggregation of the metric", + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + }, + "condition": { + "description": "Threshold operator (LT, LE, EQ, GE, GT)", + "enum": [ + "LT", + "LE", + "EQ", + "GE", + "GT" + ], + "type": "string" + }, + "desc": { + "description": "Metric description", + "type": "string" + }, + "dimensions": { + "description": "Dimension filters, e.g. [{dim:\"type\", val:\"svr\"}]", + "items": { + "additionalProperties": false, + "properties": { + "dim": { + "description": "Dimension name defined in the schema (e.g. \"type\")", + "type": "string" + }, + "val": { + "description": "Dimension value (e.g. \"svr\")", + "type": "string" + } + }, + "required": [ + "dim", + "val" + ], + "type": "object" + }, + "type": "array" + }, + "duration": { + "description": "Duration (>= 1)", + "type": "number" + }, + "eventLevel": { + "description": "Event level", + "enum": [ + "INFO", + "WARNING", + "CRITICAL" + ], + "type": "string" + }, + "metric": { + "description": "Metric name (e.g. avg_cpu_used_rto)", + "type": "string" + }, + "metricGroupItemId": { + "description": "Metric group item ID (when updating an existing item)", + "type": "string" + }, + "threshold": { + "description": "Threshold value", + "type": "number" + } + }, + "required": [ + "metric", + "eventLevel", + "condition", + "calculation", + "duration", + "threshold" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "prodKey": { + "description": "Product key (cw_key) for the target service", + "type": "string" + }, + "prodType": { + "description": "Product type: system (Ncloud product) or custom (Custom Schema)", + "enum": [ + "system", + "custom" + ], + "type": "string" + }, + "temporaryGroup": { + "default": false, + "description": "true: create the Event Rule without creating a metrics group (default false)", + "type": "boolean" + } + }, + "required": [ + "prodKey", + "groupName", + "metricsGroupItems" + ], + "type": "object" +} - added
Input schema / properties / monitorGroupAdded value: +{ + "additionalProperties": false, + "description": "Monitor group definition (MonitorGrpDto)", + "properties": { + "groupDesc": { + "description": "Description of the monitor group", + "type": "string" + }, + "groupName": { + "description": "Name of the monitor group", + "type": "string" + }, + "monitorGroupItemList": { + "description": "Monitoring targets ([{resourceId, nrn?}])", + "items": { + "additionalProperties": false, + "properties": { + "nrn": { + "description": "Resource NRN (Resource Manager)", + "type": "string" + }, + "resourceId": { + "description": "Monitoring target resource ID (e.g. server instance number)", + "type": "string" + }, + "resourceName": { + "description": "Resource name", + "type": "string" + } + }, + "required": [ + "resourceId" + ], + "type": "object" + }, + "type": "array" + }, + "prodKey": { + "description": "Product key (cw_key) for the target service", + "type": "string" + }, + "prodName": { + "description": "Product name", + "type": "string" + }, + "temporaryGroup": { + "description": "true: create the Event Rule without creating a monitor group", + "type": "boolean" + }, + "type": { + "description": "Target group type: NORMAL (default) or ASG (Auto Scaling Group)", + "enum": [ + "NORMAL", + "ASG" + ], + "type": "string" + } + }, + "required": [ + "prodKey", + "monitorGroupItemList" + ], + "type": "object" +} - added
Input schema / properties / personalNotificationRecipientsAdded value: +{ + "description": "Personal notification recipients", + "items": { + "$ref": "#/properties/recipientNotifications/items" + }, + "type": "array" +} - removed
Input schema / properties / recipientNotificationRemoved value: -{ - "description": "Notification recipients", - "items": { - "additionalProperties": false, - "properties": { - "notificationType": { - "description": "Notification type", - "enum": [ - "EMAIL", - "SMS", - "WEBHOOK" - ], - "type": "string" - }, - "recipient": { - "description": "Notification recipient", - "type": "string" - } - }, - "required": [ - "notificationType", - "recipient" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / recipientNotificationsAdded value: +{ + "description": "Notification recipient groups", + "items": { + "additionalProperties": false, + "properties": { + "enableNotiWhenEventClose": { + "description": "Send a notification when the event closes", + "type": "boolean" + }, + "groupName": { + "description": "Notification recipient group name", + "type": "string" + }, + "groupNum": { + "description": "Notification recipient group number", + "type": "number" + }, + "notifyTypes": { + "description": "Notification methods (SMS, EMAIL)", + "items": { + "enum": [ + "SMS", + "EMAIL" + ], + "type": "string" + }, + "type": "array" + }, + "reminderTime": { + "description": "Reminder interval in minutes (5-720)", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / resourceListRemoved value: -{ - "description": "Array of resource dimension objects to monitor", - "items": { - "additionalProperties": { - "type": "string" - }, - "type": "object" - }, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "groupName", - "prodKey", - "resourceList", - "cfgRuleList" -]New value: +[ + "prodKey", + "groupName", + "monitorGroup", + "metricsGroup" +]
- Changed
ncloud_create_rule_group13 fields changed- added
Input schema / properties / asgPolicyListAdded value: +{ + "description": "Auto Scaling group policies", + "items": { + "additionalProperties": false, + "properties": { + "autoScalingGroupNo": { + "description": "Auto Scaling group number", + "type": "number" + }, + "autoScalingPolicyNo": { + "description": "Auto Scaling policy number", + "type": "number" + }, + "policyName": { + "description": "Auto Scaling policy name", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / cfgRuleListRemoved value: -{ - "description": "List of rule configurations defining alert conditions", - "items": { - "additionalProperties": false, - "properties": { - "aggregation": { - "description": "Aggregation type (default: AVG)", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" - }, - "condition": { - "description": "Threshold condition (GT: >, GTE: >=, LT: <, LTE: <=, EQ: ==)", - "enum": [ - "GT", - "GTE", - "LT", - "LTE", - "EQ" - ], - "type": "string" - }, - "duration": { - "description": "Duration in minutes before triggering alert", - "type": "number" - }, - "eventLevel": { - "description": "Event severity level", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric item ID", - "type": "string" - }, - "threshold": { - "description": "Threshold value", - "type": "number" - } - }, - "required": [ - "metricGroupItemId", - "condition", - "threshold", - "duration", - "eventLevel" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / groupDescAdded value: +{ + "description": "Description (<= 300 chars)", + "type": "string" +} - changed
Input schema / properties / groupName / descriptionPrevious value: -"Name of the rule group"New value: +"Name of the rule group (1-1000 chars)" - removed
Input schema / properties / metricsGroupIdRemoved value: -{ - "description": "Metrics group ID (rule template) to apply", - "type": "string" -} - added
Input schema / properties / metricsGroupKeyAdded value: +{ + "description": "Metrics group (rule template) IDs to apply (at least one)", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / monitorGroupIdRemoved value: -{ - "description": "Monitor group ID (target group) to monitor", - "type": "string" -} - added
Input schema / properties / monitorGroupKeyAdded value: +{ + "description": "Monitor group (target group) IDs to monitor (at least one)", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / personalNotificationRecipientsAdded value: +{ + "description": "Personal notification recipients", + "items": { + "$ref": "#/properties/recipientNotifications/items" + }, + "type": "array" +} - removed
Input schema / properties / recipientNotificationRemoved value: -{ - "description": "Notification recipients for alerts", - "items": { - "additionalProperties": false, - "properties": { - "notificationType": { - "description": "Notification type", - "enum": [ - "EMAIL", - "SMS", - "WEBHOOK" - ], - "type": "string" - }, - "recipient": { - "description": "Notification recipient (email, phone, or webhook URL)", - "type": "string" - } - }, - "required": [ - "notificationType", - "recipient" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / recipientNotificationsAdded value: +{ + "description": "Notification recipient groups", + "items": { + "additionalProperties": false, + "properties": { + "enableNotiWhenEventClose": { + "description": "Send a notification when the event closes", + "type": "boolean" + }, + "groupName": { + "description": "Notification recipient group name", + "type": "string" + }, + "groupNum": { + "description": "Notification recipient group number", + "type": "number" + }, + "notifyTypes": { + "description": "Notification methods (SMS, EMAIL)", + "items": { + "enum": [ + "SMS", + "EMAIL" + ], + "type": "string" + }, + "type": "array" + }, + "reminderTime": { + "description": "Reminder interval in minutes (5-720)", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / suspendRuleItemsAdded value: +{ + "description": "Rule items to suspend ([{resourceId, metricGroupItemId}])", + "items": { + "additionalProperties": false, + "properties": { + "metricGroupItemId": { + "description": "Metric item ID", + "type": "string" + }, + "resourceId": { + "description": "Monitoring target ID", + "type": "string" + } + }, + "required": [ + "resourceId", + "metricGroupItemId" + ], + "type": "object" + }, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "groupName", - "prodKey", - "metricsGroupId", - "monitorGroupId", - "cfgRuleList" -]New value: +[ + "prodKey", + "groupName", + "metricsGroupKey", + "monitorGroupKey" +]
- Added
ncloud_databox_apply_file_export - Added
ncloud_databox_apply_file_import - Added
ncloud_databox_get_export_request - Added
ncloud_databox_get_import_request - Added
ncloud_databox_list_buckets - Added
ncloud_databox_list_export_requests - Added
ncloud_databox_list_import_requests - Added
ncloud_databox_list_nas - Added
ncloud_datafence_approve_file_export - Added
ncloud_datafence_cancel_file_export - Added
ncloud_datafence_change_box_infra - Added
ncloud_datafence_change_box_nas_volume - Added
ncloud_datafence_change_fence_infra - Added
ncloud_datafence_change_fence_nas_volume - Added
ncloud_datafence_create_box - Added
ncloud_datafence_create_file_export - Added
ncloud_datafence_create_file_import - Added
ncloud_datafence_get_box_custom_images - Added
ncloud_datafence_get_box_history - Added
ncloud_datafence_get_box_infra_history - Added
ncloud_datafence_get_box_summary - Added
ncloud_datafence_get_connect_server - Added
ncloud_datafence_get_datafence - Added
ncloud_datafence_get_export_approval - Added
ncloud_datafence_get_fence_custom_images - Added
ncloud_datafence_get_fence_infra_history - Added
ncloud_datafence_get_file_export - Added
ncloud_datafence_get_file_import - Added
ncloud_datafence_get_hadoop_cluster - Added
ncloud_datafence_get_linux_server - Added
ncloud_datafence_get_product_specs - Added
ncloud_datafence_get_tensorflow_server - Added
ncloud_datafence_get_windows_server - Added
ncloud_datafence_list_box_infra - Added
ncloud_datafence_list_boxes - Added
ncloud_datafence_list_buckets - Added
ncloud_datafence_list_export_approvals - Added
ncloud_datafence_list_export_source_nas - Added
ncloud_datafence_list_fence_infra - Added
ncloud_datafence_list_file_exports - Added
ncloud_datafence_list_file_imports - Added
ncloud_datafence_list_import_target_nas - Added
ncloud_datafence_reject_file_export - Added
ncloud_datafence_return_box - Added
ncloud_datafence_set_box_external_network_block - Added
ncloud_dataflow_execute_workflow - Changed
ncloud_dataflow_get_execution_interval5 fields changed- added
Input schema / properties / endDateAdded value: +{ + "description": "End of the query range (ISO 8601, e.g. 2025-03-20T23:59:59) (required)", + "type": "string" +} - removed
Input schema / properties / endTimeRemoved value: -{ - "description": "End time for query range (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / startDateAdded value: +{ + "description": "Start of the query range (ISO 8601, e.g. 2025-03-19T00:00:00) (required)", + "type": "string" +} - removed
Input schema / properties / startTimeRemoved value: -{ - "description": "Start time for query range (ISO 8601 format, e.g. 2024-01-01T00:00:00Z)", - "type": "string" -} - added
Input schema / requiredAdded value: +[ + "startDate", + "endDate" +]
- Changed
ncloud_dataflow_get_execution_result5 fields changed- added
Input schema / properties / endDateAdded value: +{ + "description": "End of the query range (ISO 8601, e.g. 2025-03-20T23:59:59) (required)", + "type": "string" +} - removed
Input schema / properties / endTimeRemoved value: -{ - "description": "End time for query range (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / startDateAdded value: +{ + "description": "Start of the query range (ISO 8601, e.g. 2025-03-19T00:00:00) (required)", + "type": "string" +} - removed
Input schema / properties / startTimeRemoved value: -{ - "description": "Start time for query range (ISO 8601 format)", - "type": "string" -} - added
Input schema / requiredAdded value: +[ + "startDate", + "endDate" +]
- Changed
ncloud_dataflow_get_execution_times5 fields changed- added
Input schema / properties / endDateAdded value: +{ + "description": "End of the query range (ISO 8601, e.g. 2025-03-20T23:59:59) (required)", + "type": "string" +} - removed
Input schema / properties / endTimeRemoved value: -{ - "description": "End time for query range (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / startDateAdded value: +{ + "description": "Start of the query range (ISO 8601, e.g. 2025-03-19T00:00:00) (required)", + "type": "string" +} - removed
Input schema / properties / startTimeRemoved value: -{ - "description": "Start time for query range (ISO 8601 format)", - "type": "string" -} - added
Input schema / requiredAdded value: +[ + "startDate", + "endDate" +]
- Changed
ncloud_dataforest_get_kerberos_keytab1 field changed- added
Input schema / properties / savePathAdded value: +{ + "description": "Local file path to save the .keytab file to (recommended)", + "type": "string" +}
- Changed
ncloud_delete_metrics_group4 fields changed- removed
Input schema / properties / metricsGroupIdRemoved value: -{ - "description": "Metrics group ID to delete", - "type": "string" -} - added
Input schema / properties / metricsGroupIdsAdded value: +{ + "description": "Metrics group IDs to delete", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) the metrics groups belong to", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "metricsGroupId" -]New value: +[ + "prodKey", + "metricsGroupIds" +]
- Changed
ncloud_delete_metrics_group_force4 fields changed- added
Input schema / properties / groupsAdded value: +{ + "description": "Metrics groups and their related event rules ([{id, ruleGroupItemDtoList}], from ncloud_get_rules_by_metrics_group)", + "items": { + "additionalProperties": false, + "properties": { + "id": { + "description": "Monitor group or metrics group ID to delete", + "type": "string" + }, + "ruleGroupItemDtoList": { + "description": "Event Rules related to the group (RuleGroupItemDto[], as returned by ncloud_get_rules_by_metrics_group / ncloud_get_rules_by_monitor_group)", + "items": { + "additionalProperties": {}, + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "id", + "ruleGroupItemDtoList" + ], + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / metricsGroupIdRemoved value: -{ - "description": "Metrics group ID whose related rules will be deleted", - "type": "string" -} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "metricsGroupId" -]New value: +[ + "prodKey", + "groups" +]
- Changed
ncloud_delete_monitor_group4 fields changed- removed
Input schema / properties / monitorGroupIdRemoved value: -{ - "description": "Monitor group ID to delete", - "type": "string" -} - added
Input schema / properties / monitorGroupIdsAdded value: +{ + "description": "Monitor group IDs to delete", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) the monitor groups belong to", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "monitorGroupId" -]New value: +[ + "prodKey", + "monitorGroupIds" +]
- Changed
ncloud_delete_monitor_group_force4 fields changed- added
Input schema / properties / groupsAdded value: +{ + "description": "Monitor groups and their related event rules ([{id, ruleGroupItemDtoList}], from ncloud_get_rules_by_monitor_group)", + "items": { + "additionalProperties": false, + "properties": { + "id": { + "description": "Monitor group or metrics group ID to delete", + "type": "string" + }, + "ruleGroupItemDtoList": { + "description": "Event Rules related to the group (RuleGroupItemDto[], as returned by ncloud_get_rules_by_metrics_group / ncloud_get_rules_by_monitor_group)", + "items": { + "additionalProperties": {}, + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "id", + "ruleGroupItemDtoList" + ], + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / monitorGroupIdRemoved value: -{ - "description": "Monitor group ID whose related rules will be deleted", - "type": "string" -} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "monitorGroupId" -]New value: +[ + "prodKey", + "groups" +]
- Changed
ncloud_delete_rule_group4 fields changed- added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) the rule groups belong to", + "type": "string" +} - removed
Input schema / properties / ruleGroupIdRemoved value: -{ - "description": "Rule group ID to delete", - "type": "string" -} - added
Input schema / properties / ruleGroupIdsAdded value: +{ + "description": "Rule group (Event Rule) IDs to delete", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "ruleGroupId" -]New value: +[ + "prodKey", + "ruleGroupIds" +]
- Changed
ncloud_delete_server_images3 fields changed- removed
Input schema / properties / serverImageInstanceNoListRemoved value: -{ - "description": "List of server image instance numbers to delete", - "items": { - "type": "string" - }, - "minItems": 1, - "type": "array" -} - added
Input schema / properties / serverImageNoListAdded value: +{ + "description": "List of server image numbers to delete", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "serverImageInstanceNoList" -]New value: +[ + "serverImageNoList" +]
- Changed
ncloud_dns_list_records9 fields changed- added
Input schema / properties / page / defaultAdded value: +0 - changed
Input schema / properties / page / descriptionPrevious value: -"Page number (0-based)"New value: +"Page number (0-based, default 0)" - added
Input schema / properties / page / minimumAdded value: +0 - changed
Input schema / properties / page / typePrevious value: -"number"New value: +"integer" - added
Input schema / properties / size / defaultAdded value: +100 - changed
Input schema / properties / size / descriptionPrevious value: -"Number of items per page"New value: +"Number of items per page (default 100)" - added
Input schema / properties / size / minimumAdded value: +1 - changed
Input schema / properties / size / typePrevious value: -"number"New value: +"integer" - changed
Input schema / requiredPrevious value: -[ - "domainId", - "page", - "size" -]New value: +[ + "domainId" +]
- Added
ncloud_drm_copy_policy - Added
ncloud_drm_create_policy - Added
ncloud_drm_create_site - Added
ncloud_drm_delete_policy - Added
ncloud_drm_disable_site - Added
ncloud_drm_enable_site - Added
ncloud_drm_get_license_statistics - Added
ncloud_drm_get_policy - Added
ncloud_drm_get_policy_logs - Added
ncloud_drm_get_site - Added
ncloud_drm_get_site_logs - Added
ncloud_drm_list_policies - Added
ncloud_drm_list_sites - Added
ncloud_drm_update_policy - Added
ncloud_drm_update_site - Added
ncloud_edge_add_certificate_to_slot - Added
ncloud_edge_check_profile_name - Changed
ncloud_edge_create_edge32 fields changed- added
Input schema / properties / accessControlGeoPoliciesAdded value: +{ + "description": "ISO 3166-1 alpha-2 country codes for access control", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / accessControlIpPoliciesAdded value: +{ + "description": "Client IPs or CIDR blocks for access control", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / accessControlRefererPoliciesAdded value: +{ + "description": "Referer domains for access control", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / accessControlTypeAdded value: +{ + "default": "WHITELIST", + "description": "Access control policy type", + "enum": [ + "WHITELIST", + "BLACKLIST" + ], + "type": "string" +} - added
Input schema / properties / cacheAgeAdded value: +{ + "default": 7, + "description": "Cache max-age (1 second to 365 days)", + "type": "number" +} - added
Input schema / properties / cacheAgeTypeAdded value: +{ + "default": "DAYS", + "description": "Cache max-age unit", + "enum": [ + "SECONDS", + "MINUTES", + "HOURS", + "DAYS" + ], + "type": "string" +} - added
Input schema / properties / cacheKeyHostnameAdded value: +{ + "default": "INCOMING_HOST_HEADER", + "description": "Cache key hostname type", + "enum": [ + "INCOMING_HOST_HEADER", + "ORIGIN_HOSTNAME" + ], + "type": "string" +} - added
Input schema / properties / cacheKeyIgnoreQueryStringTypeAdded value: +{ + "default": "ALL_ALLOWED", + "description": "How query strings are used in the cache key", + "enum": [ + "ALL_IGNORED", + "ALL_ALLOWED", + "ALLOW_SPECIFIC_STRING" + ], + "type": "string" +} - added
Input schema / properties / cacheKeyQueryStringsAdded value: +{ + "description": "Query strings allowed in the cache key (required for ALLOW_SPECIFIC_STRING)", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / cacheRevalidateTypeAdded value: +{ + "default": "IF_POSSIBLE", + "description": "Stale object revalidation type", + "enum": [ + "IF_POSSIBLE", + "ALWAYS" + ], + "type": "string" +} - added
Input schema / properties / cacheRuleDefinitionTypeAdded value: +{ + "default": "CACHING", + "description": "Default caching option", + "enum": [ + "CACHING", + "BYPASS_CACHE", + "ORIGIN_CACHE_CONTROL_HEADER" + ], + "type": "string" +} - changed
Input schema / properties / certificateSlotId / descriptionPrevious value: -"Certificate slot ID (required for CUSTOM_DOMAIN with HTTPS)"New value: +"Certificate slot ID (required for CUSTOM_DOMAIN served over HTTPS; see ncloud_edge_list_certificates)" - added
Input schema / properties / corsAdded value: +{ + "default": false, + "description": "Add CORS headers (managed rule)", + "type": "boolean" +} - added
Input schema / properties / customHostHeaderAdded value: +{ + "description": "Host header value (required when forwardHostHeaderType is CUSTOM)", + "type": "string" +} - added
Input schema / properties / edgeLoggingBucketNameAdded value: +{ + "description": "Enable edge logging into this Object Storage bucket (omit to disable logging)", + "type": "string" +} - added
Input schema / properties / edgeLoggingBucketPrefixAdded value: +{ + "description": "Log path prefix inside the logging bucket", + "type": "string" +} - added
Input schema / properties / edgeLoggingRegionAdded value: +{ + "description": "Region of the edge-logging bucket (default KR)", + "enum": [ + "KR", + "USWN", + "SGN", + "JPN", + "DEN" + ], + "type": "string" +} - changed
Input schema / properties / edgeName / descriptionPrevious value: -"Edge name (3-35 chars, letters, numbers, '-', '_')"New value: +"Edge name (3-35 chars: letters, digits, '-', '_')" - added
Input schema / properties / forwardHostHeaderTypeAdded value: +{ + "default": "INCOMING_HOST_HEADER", + "description": "Host header forwarding type", + "enum": [ + "INCOMING_HOST_HEADER", + "ORIGIN_HOSTNAME", + "CUSTOM" + ], + "type": "string" +} - added
Input schema / properties / hstsAdded value: +{ + "default": false, + "description": "Enable HSTS", + "type": "boolean" +} - added
Input schema / properties / http2Added value: +{ + "default": true, + "description": "Enable HTTP/2", + "type": "boolean" +} - added
Input schema / properties / httpCompressionAdded value: +{ + "default": true, + "description": "Enable Gzip/Brotli compression", + "type": "boolean" +} - added
Input schema / properties / largeFileOptimizationAdded value: +{ + "default": true, + "description": "Enable large file optimization", + "type": "boolean" +} - added
Input schema / properties / negativeTtlAdded value: +{ + "default": true, + "description": "Cache origin error responses (negative TTL)", + "type": "boolean" +} - added
Input schema / properties / originPathAdded value: +{ + "description": "Origin path appended to origin requests, e.g. /static/", + "type": "string" +} - added
Input schema / properties / originRegion / $refAdded value: +"#/properties/edgeLoggingRegion" - removed
Input schema / properties / originRegion / typeRemoved value: -"string" - changed
Input schema / properties / protocolType / descriptionPrevious value: -"Service protocol type"New value: +"Service protocol: HTTPS or ALL (HTTP+HTTPS)" - changed
Input schema / properties / protocolType / enumPrevious value: -[ - "HTTP", - "HTTPS", - "ALL" -]New value: +[ + "HTTPS", + "ALL" +] - changed
Input schema / properties / regionType / descriptionPrevious value: -"Service area (KOREA, JAPAN, or GLOBAL)"New value: +"Service region: KOREA, JAPAN, or GLOBAL" - added
Input schema / properties / removeVaryHeaderAdded value: +{ + "default": true, + "description": "Remove Vary headers (other than Accept-Encoding) before caching", + "type": "boolean" +} - added
Input schema / properties / trueClientIpHeaderAdded value: +{ + "default": false, + "description": "Forward the client IP header to the origin", + "type": "boolean" +}
- Changed
ncloud_edge_create_profile3 fields changed- added
Input schema / properties / nameAdded value: +{ + "description": "Name for the new profile (3-35 chars: letters, digits, '-', '_')", + "type": "string" +} - removed
Input schema / properties / profileNameRemoved value: -{ - "description": "Name for the new Global Edge profile", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "profileName" -]New value: +[ + "name" +]
- Changed
ncloud_edge_delete_certificate3 fields changed- removed
Input schema / properties / certificateIdRemoved value: -{ - "description": "Certificate ID to delete", - "type": "number" -} - added
Input schema / properties / slotIdAdded value: +{ + "description": "Certificate slot ID to delete", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "certificateId" -]New value: +[ + "slotId" +]
- Changed
ncloud_edge_delete_edge3 fields changed- removed
Input schema / properties / edgeIdRemoved value: -{ - "description": "Edge ID to delete", - "type": "number" -} - added
Input schema / properties / edgeIdsAdded value: +{ + "description": "Edge IDs to delete", + "items": { + "type": "number" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "edgeId" -]New value: +[ + "edgeIds" +]
- Changed
ncloud_edge_get_certificate5 fields changed- removed
Input schema / properties / certificateIdRemoved value: -{ - "description": "Certificate ID to query", - "type": "number" -} - added
Input schema / properties / offsetAdded value: +{ + "description": "Items per page (default 15)", + "type": "number" +} - added
Input schema / properties / pageNoAdded value: +{ + "description": "Page number (default 1)", + "type": "number" +} - added
Input schema / properties / slotIdAdded value: +{ + "description": "Certificate slot ID", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "certificateId" -]New value: +[ + "slotId" +]
- Changed
ncloud_edge_get_edge_stats5 fields changed- added
Input schema / properties / dateFromAdded value: +{ + "description": "Start date-time (ISO 8601 UTC, e.g. 2025-07-17T07:00:00Z)", + "type": "string" +} - added
Input schema / properties / dateToAdded value: +{ + "description": "End date-time (ISO 8601 UTC, e.g. 2025-07-17T08:00:00Z)", + "type": "string" +} - removed
Input schema / properties / endDateTimeRemoved value: -{ - "description": "End date-time for statistics (ISO 8601 format, e.g. 2024-01-02T00:00:00Z)", - "type": "string" -} - removed
Input schema / properties / startDateTimeRemoved value: -{ - "description": "Start date-time for statistics (ISO 8601 format, e.g. 2024-01-01T00:00:00Z)", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "profileId", - "edgeId", - "startDateTime", - "endDateTime" -]New value: +[ + "profileId", + "edgeId", + "dateFrom", + "dateTo" +]
- Changed
ncloud_edge_get_edge_status2 fields changed- removed
Input schema / properties / profileIdRemoved value: -{ - "description": "Profile ID that the edge belongs to", - "type": "number" -} - changed
Input schema / requiredPrevious value: -[ - "profileId", - "edgeId" -]New value: +[ + "edgeId" +]
- Removed
ncloud_edge_get_purge_history - Added
ncloud_edge_get_purge_request - Changed
ncloud_edge_list_certificates3 fields changed- added
Input schema / properties / offsetAdded value: +{ + "description": "Items per page (default 15)", + "type": "number" +} - changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination (default 1)"New value: +"Page number (default 1)" - removed
Input schema / properties / pageSizeRemoved value: -{ - "description": "Number of items per page (default 15)", - "type": "number" -}
- Changed
ncloud_edge_list_edges2 fields changed- removed
Input schema / properties / pageNoRemoved value: -{ - "description": "Page number for pagination (default 1)", - "type": "number" -} - removed
Input schema / properties / pageSizeRemoved value: -{ - "description": "Number of items per page (default 15)", - "type": "number" -}
- Changed
ncloud_edge_list_profiles3 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - removed
Input schema / properties / pageNoRemoved value: -{ - "description": "Page number for pagination (default 1)", - "type": "number" -} - removed
Input schema / properties / pageSizeRemoved value: -{ - "description": "Number of items per page (default 15)", - "type": "number" -}
- Changed
ncloud_edge_provision_certificate8 fields changed- removed
Input schema / properties / certificateNoRemoved value: -{ - "description": "Certificate number from Certificate Manager to provision", - "type": "number" -} - added
Input schema / properties / cipherProfileAdded value: +{ + "description": "Cipher profile (STRICT not allowed with TLS_ALL_VERSIONS)", + "enum": [ + "DEFAULT", + "GENERAL", + "STRICT" + ], + "type": "string" +} - added
Input schema / properties / cmCertificateIdsAdded value: +{ + "description": "Certificate Manager certificate numbers", + "items": { + "type": "number" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / serviceRegion / defaultRemoved value: -"KR_JP" - changed
Input schema / properties / serviceRegion / descriptionPrevious value: -"Certificate application scope: KR_JP (Korea/Japan) or GLOBAL"New value: +"Service region: KR_JP (one KR/JP certificate) or KR_JP_GLOBAL (one KR/JP + one global certificate)" - changed
Input schema / properties / serviceRegion / enumPrevious value: -[ - "KR_JP", - "GLOBAL" -]New value: +[ + "KR_JP", + "KR_JP_GLOBAL" +] - added
Input schema / properties / tlsVersionAdded value: +{ + "description": "Supported TLS versions (TLS_MIN_VERSION_1_2 recommended)", + "enum": [ + "TLS_ALL_VERSIONS", + "TLS_MIN_VERSION_1_2" + ], + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "certificateNo" -]New value: +[ + "serviceRegion", + "cmCertificateIds", + "tlsVersion", + "cipherProfile" +]
- Added
ncloud_edge_remove_certificates_from_slot - Added
ncloud_edge_rename_profile - Changed
ncloud_edge_start_edge4 fields changed- removed
Input schema / properties / edgeIdRemoved value: -{ - "description": "Edge ID to start", - "type": "number" -} - added
Input schema / properties / edgeIdsAdded value: +{ + "description": "Edge IDs to activate", + "items": { + "type": "number" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / profileIdRemoved value: -{ - "description": "Profile ID that the edge belongs to", - "type": "number" -} - changed
Input schema / requiredPrevious value: -[ - "profileId", - "edgeId" -]New value: +[ + "edgeIds" +]
- Changed
ncloud_edge_stop_edge4 fields changed- removed
Input schema / properties / edgeIdRemoved value: -{ - "description": "Edge ID to stop", - "type": "number" -} - added
Input schema / properties / edgeIdsAdded value: +{ + "description": "Edge IDs to stop", + "items": { + "type": "number" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / profileIdRemoved value: -{ - "description": "Profile ID that the edge belongs to", - "type": "number" -} - changed
Input schema / requiredPrevious value: -[ - "profileId", - "edgeId" -]New value: +[ + "edgeIds" +]
- Added
ncloud_edge_update_certificate_tls - Changed
ncloud_export_logs1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_functions_create_trigger4 fields changed- changed
Input schema / properties / link / descriptionPrevious value: -"github only: API Gateway endpoint to create the webhook on (required when creating; ignored on update)"New value: +"github only: API Gateway endpoint to create the webhook on — productName + apiName + stageName (required when creating; ignored on update)" - added
Input schema / properties / link / properties / productIdAdded value: +{ + "description": "API Gateway product ID (API v2.0 / Government zone)", + "type": "string" +} - changed
Input schema / properties / link / properties / productName / descriptionPrevious value: -"API Gateway product name"New value: +"API Gateway product name (API v2.1)" - changed
Input schema / properties / link / requiredPrevious value: -[ - "productName", - "apiName", - "stageName" -]New value: +[ + "apiName", + "stageName" +]
- Changed
ncloud_functions_get_action_activations1 field changed- changed
Input schema / properties / end / descriptionPrevious value: -"End of the window as a Unix timestamp in MILLISECONDS (default: now)"New value: +"End of the window as a Unix timestamp in MILLISECONDS (default: now)."
- Changed
ncloud_functions_get_activations1 field changed- changed
Input schema / properties / end / descriptionPrevious value: -"End of the window as a Unix timestamp in MILLISECONDS (default: now)"New value: +"End of the window as a Unix timestamp in MILLISECONDS (default: now)."
- Changed
ncloud_functions_get_trigger_activations1 field changed- changed
Input schema / properties / end / descriptionPrevious value: -"End of the window as a Unix timestamp in MILLISECONDS (default: now)"New value: +"End of the window as a Unix timestamp in MILLISECONDS (default: now)."
- Added
ncloud_get_caller_identity - Changed
ncloud_get_contract_demand_cost_list1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (e.g. KR)"New value: +"Region code (KR, JPN, SGN, USWN, DEN)"
- Changed
ncloud_get_contract_summary_list1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (e.g. KR)"New value: +"Region code (KR, JPN, SGN, USWN, DEN)"
- Changed
ncloud_get_contract_usage_list1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (e.g. KR)"New value: +"Region code (KR, JPN, SGN, USWN, DEN)"
- Changed
ncloud_get_contract_usage_list_by_daily1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (e.g. KR)"New value: +"Region code (KR, JPN, SGN, USWN, DEN)"
- Changed
ncloud_get_dashboard_widget_image6 fields changed- added
Input schema / properties / endTimeAdded value: +{ + "description": "End time in Unix epoch milliseconds", + "type": "number" +} - added
Input schema / properties / savePathAdded value: +{ + "description": "Local file path to save the image to; when given, the image bytes are not returned inline", + "type": "string" +} - added
Input schema / properties / startTimeAdded value: +{ + "description": "Start time in Unix epoch milliseconds", + "type": "number" +} - changed
Input schema / properties / widgetId / descriptionPrevious value: -"Widget ID to get image for"New value: +"Widget ID (see ncloud_get_dashboard_widgets)" - added
Input schema / properties / widgetResolutionModeAdded value: +{ + "description": "Resolution: AUTO (same as dashboard, default) or HIGH (finer)", + "enum": [ + "AUTO", + "HIGH" + ], + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "dashboardId", - "widgetId" -]New value: +[ + "dashboardId", + "widgetId", + "startTime", + "endTime" +]
- Changed
ncloud_get_log_count_by_period1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_get_log_count_by_type1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_get_log_count_recent1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_get_log_count_total1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_get_log_export_history1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_get_log_usage1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Added
ncloud_get_login_alias - Changed
ncloud_get_metrics_group2 fields changed- added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) the metrics group belongs to", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "metricsGroupId" -]New value: +[ + "prodKey", + "metricsGroupId" +]
- Changed
ncloud_get_monitor_group2 fields changed- added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) the monitor group belongs to", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "monitorGroupId" -]New value: +[ + "prodKey", + "monitorGroupId" +]
- Changed
ncloud_get_product_list1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (e.g. KR, JPN, SGN)"New value: +"Region code (KR, JPN, SGN, USWN, DEN)"
- Changed
ncloud_get_product_price_list1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (e.g. KR, JPN, SGN)"New value: +"Region code (KR, JPN, SGN, USWN, DEN)"
- Changed
ncloud_get_rule_group3 fields changed- added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) the rule group belongs to", + "type": "string" +} - changed
Input schema / properties / ruleGroupId / descriptionPrevious value: -"Rule group ID to retrieve details for"New value: +"Rule group (Event Rule) ID to retrieve" - changed
Input schema / requiredPrevious value: -[ - "ruleGroupId" -]New value: +[ + "prodKey", + "ruleGroupId" +]
- Changed
ncloud_get_rules_by_metrics_group4 fields changed- changed
Input schema / properties / metricsGroupIds / descriptionPrevious value: -"Array of metrics group IDs to query"New value: +"Metrics group IDs to query" - added
Input schema / properties / metricsGroupIds / minItemsAdded value: +1 - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "metricsGroupIds" -]New value: +[ + "prodKey", + "metricsGroupIds" +]
- Changed
ncloud_get_rules_by_monitor_group4 fields changed- changed
Input schema / properties / monitorGroupIds / descriptionPrevious value: -"Array of monitor group IDs to query"New value: +"Monitor group IDs to query" - added
Input schema / properties / monitorGroupIds / minItemsAdded value: +1 - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "monitorGroupIds" -]New value: +[ + "prodKey", + "monitorGroupIds" +]
- Changed
ncloud_get_servers_top4 fields changed- removed
Input schema / properties / metricTypeRemoved value: -{ - "description": "Metric type to rank servers by (cpu, memory, or fs)", - "enum": [ - "cpu", - "memory", - "fs" - ], - "type": "string" -} - added
Input schema / properties / prodAdded value: +{ + "description": "Server environment: VPC (default) or Classic", + "enum": [ + "VPC", + "Classic" + ], + "type": "string" +} - added
Input schema / properties / queryAdded value: +{ + "description": "Metric to rank by: avg_cpu_used_rto (CPU), mem_usert (memory), avg_fs_usert (filesystem)", + "enum": [ + "avg_cpu_used_rto", + "mem_usert", + "avg_fs_usert" + ], + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "metricType" -]New value: +[ + "query" +]
- Removed
ncloud_imageoptimizer_create_project - Removed
ncloud_imageoptimizer_create_rule - Removed
ncloud_imageoptimizer_delete_project - Removed
ncloud_imageoptimizer_delete_rule - Removed
ncloud_imageoptimizer_get_project - Removed
ncloud_imageoptimizer_list_projects - Removed
ncloud_imageoptimizer_list_rules - Changed
ncloud_kms_add_acl_rule4 fields changed- removed
Input schema / properties / ipRemoved value: -{ - "description": "IP address to allow (e.g., '192.168.1.1' or CIDR '192.168.1.0/24')", - "type": "string" -} - added
Input schema / properties / ipListAdded value: +{ + "description": "IPv4 addresses to allow (e.g. ['192.168.1.1'])", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / memoRemoved value: -{ - "description": "Description for this ACL rule", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "keyTag", - "ip" -]New value: +[ + "keyTag", + "ipList" +]
- Changed
ncloud_kms_create_token_set2 fields changed- added
Input schema / properties / accessTokenHoursAdded value: +{ + "anyOf": [ + { + "maximum": 17520, + "minimum": 1, + "type": "integer" + }, + { + "const": "UL", + "type": "string" + } + ], + "description": "Access token validity in hours (1-17520, default 72); 'UL' for unlimited" +} - added
Input schema / properties / refreshTokenHoursAdded value: +{ + "anyOf": [ + { + "maximum": 17520, + "minimum": 1, + "type": "integer" + }, + { + "const": "UL", + "type": "string" + } + ], + "description": "Refresh token validity in hours (1-17520, default 2160); 'UL' for unlimited" +}
- Changed
ncloud_kms_delete_acl_rule3 fields changed- added
Input schema / properties / ipListAdded value: +{ + "description": "IPv4 addresses to remove from the ACL (required)", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / ruleIdRemoved value: -{ - "description": "ACL rule ID to delete (required)", - "minLength": 1, - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "keyTag", - "ruleId" -]New value: +[ + "keyTag", + "ipList" +]
- Changed
ncloud_kms_get_key_activity_logs3 fields changed- added
Input schema / properties / keywordAdded value: +{ + "description": "Keyword filter", + "type": "string" +} - added
Input schema / properties / timestampFromAdded value: +{ + "description": "Start of the range (Unix epoch milliseconds)", + "type": "number" +} - added
Input schema / properties / timestampToAdded value: +{ + "description": "End of the range (Unix epoch milliseconds)", + "type": "number" +}
- Changed
ncloud_kms_get_public_key1 field changed- added
Input schema / properties / keyVersionAdded value: +{ + "description": "Key version to query (1-100). Omit for the latest version; disabled versions cannot be queried", + "maximum": 100, + "minimum": 1, + "type": "integer" +}
- Added
ncloud_kms_migrate_key - Changed
ncloud_list_export_buckets1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (default kr)"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_list_log_servers1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (kr, sgn, jpn). Default kr"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_list_maintenances2 fields changed- changed
Input schema / properties / from / descriptionPrevious value: -"Filter start (epoch ms), used with 'to' and 'timeType'"New value: +"Filter start (epoch ms), used with 'to' and 'timeType'; the range to-from must not exceed 31 days" - changed
Input schema / properties / to / descriptionPrevious value: -"Filter end (epoch ms)"New value: +"Filter end (epoch ms); at most 31 days after 'from'"
- Changed
ncloud_list_metrics_groups2 fields changed- changed
Input schema / properties / prodKey / descriptionPrevious value: -"Product key to filter metrics groups"New value: +"Product key (cw_key) to list metrics groups for (required)" - added
Input schema / requiredAdded value: +[ + "prodKey" +]
- Added
ncloud_livestation_create_vod_channel - Added
ncloud_livestation_delete_vod_channel - Added
ncloud_livestation_get_vod_channel - Added
ncloud_livestation_get_vod_service_url - Added
ncloud_livestation_list_vod_channels - Added
ncloud_livestation_start_vod_channel - Added
ncloud_livestation_stop_vod_channel - Added
ncloud_livestation_switch_stream - Added
ncloud_livestation_update_vod_channel - Changed
ncloud_ncr_delete_image1 field changed- changed
Input schema / properties / imageName / descriptionPrevious value: -"Name of the image to delete"New value: +"Name of the image to delete (URI-encoded automatically)"
- Changed
ncloud_ncr_delete_tag1 field changed- changed
Input schema / properties / imageName / descriptionPrevious value: -"Name of the image"New value: +"Name of the image (URI-encoded automatically)"
- Changed
ncloud_ncr_get_image1 field changed- changed
Input schema / properties / imageName / descriptionPrevious value: -"Name of the image to query"New value: +"Name of the image to query (e.g. 'hello/world' — URI-encoded automatically)"
- Changed
ncloud_ncr_get_tag_detail1 field changed- changed
Input schema / properties / imageName / descriptionPrevious value: -"Name of the image"New value: +"Name of the image (URI-encoded automatically)"
- Changed
ncloud_ncr_list_images6 fields changed- changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (sent as 'page', > 0)" - added
Input schema / properties / pageNo / minimumAdded value: +1 - changed
Input schema / properties / pageNo / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (sent as 'pagesize', > 0)" - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer"
- Changed
ncloud_ncr_list_registries6 fields changed- changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (sent as 'page', > 0)" - added
Input schema / properties / pageNo / minimumAdded value: +1 - changed
Input schema / properties / pageNo / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (sent as 'pagesize', > 0)" - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer"
- Changed
ncloud_ncr_list_tags7 fields changed- changed
Input schema / properties / imageName / descriptionPrevious value: -"Name of the image"New value: +"Name of the image (URI-encoded automatically)" - changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (sent as 'page', > 0)" - added
Input schema / properties / pageNo / minimumAdded value: +1 - changed
Input schema / properties / pageNo / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (sent as 'pagesize', > 0)" - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer"
- Changed
ncloud_ncr_update_image5 fields changed- changed
Input schema / properties / description / descriptionPrevious value: -"New description for the image"New value: +"Short description (max 100 characters)" - added
Input schema / properties / description / maxLengthAdded value: +100 - added
Input schema / properties / full_descriptionAdded value: +{ + "description": "Detailed description (Markdown supported)", + "type": "string" +} - changed
Input schema / properties / imageName / descriptionPrevious value: -"Name of the image to update"New value: +"Name of the image to update (URI-encoded automatically)" - changed
Input schema / requiredPrevious value: -[ - "registryName", - "imageName", - "description" -]New value: +[ + "registryName", + "imageName" +]
- Changed
ncloud_ncs_put_object_lock_configuration7 fields changed- changed
Input schema / properties / days / descriptionPrevious value: -"Default retention period in days (exactly one of days / years)"New value: +"Default retention period in days, 1-36,500 (with mode; exactly one of days / years)" - added
Input schema / properties / days / maximumAdded value: +36500 - added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "description": "If true, returns the XML that would be sent without applying", + "type": "boolean" +} - changed
Input schema / properties / mode / descriptionPrevious value: -"GOVERNANCE | COMPLIANCE"New value: +"Default retention mode GOVERNANCE | COMPLIANCE. Omit to set no default retention rule" - changed
Input schema / properties / years / descriptionPrevious value: -"Default retention period in years (exactly one of days / years)"New value: +"Default retention period in years, 1-100 (with mode; exactly one of days / years)" - added
Input schema / properties / years / maximumAdded value: +100 - changed
Input schema / requiredPrevious value: -[ - "bucketName", - "mode" -]New value: +[ + "bucketName" +]
- Changed
ncloud_nks_add_subnet2 fields changed- changed
Input schema / properties / subnetNoList / descriptionPrevious value: -"List of subnet numbers to add"New value: +"List of subnet numbers to add (sent as subnets[].number)" - added
Input schema / properties / subnetNoList / minItemsAdded value: +1
- Changed
ncloud_nks_create_access_entry8 fields changed- added
Input schema / properties / entryAdded value: +{ + "description": "NRN of the IAM USER or ROLE", + "type": "string" +} - added
Input schema / properties / groupsAdded value: +{ + "description": "Kubernetes group names to bind the principal to", + "items": { + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / kubernetesGroupsRemoved value: -{ - "description": "Kubernetes groups", - "items": { - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / policiesAdded value: +{ + "description": "NKS access policies to attach (type + scope, namespaces when scope is 'namespace')", + "items": { + "additionalProperties": false, + "properties": { + "namespaces": { + "description": "Target namespaces — required when scope is 'namespace'", + "items": { + "type": "string" + }, + "type": "array" + }, + "scope": { + "description": "Policy scope", + "enum": [ + "cluster", + "namespace" + ], + "type": "string" + }, + "type": { + "description": "NKS access policy type", + "enum": [ + "NKSClusterAdminPolicy", + "NKSAdminPolicy", + "NKSEditPolicy", + "NKSViewPolicy" + ], + "type": "string" + } + }, + "required": [ + "type", + "scope" + ], + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / principalArnRemoved value: -{ - "description": "IAM principal ARN", - "type": "string" -} - changed
Input schema / properties / type / descriptionPrevious value: -"Access entry type"New value: +"IAM principal type" - added
Input schema / properties / type / enumAdded value: +[ + "USER", + "ROLE" +] - changed
Input schema / requiredPrevious value: -[ - "clusterUuid" -]New value: +[ + "clusterUuid", + "type", + "entry" +]
- Changed
ncloud_nks_create_cluster14 fields changed- added
Input schema / properties / addonsAdded value: +{ + "description": "Add-ons to install together with the cluster", + "items": { + "additionalProperties": false, + "properties": { + "addonName": { + "description": "Add-on name (from ncloud_nks_list_available_addons)", + "type": "string" + }, + "configurationValues": { + "additionalProperties": {}, + "description": "Add-on configuration values (schema from ncloud_nks_get_available_addon_version)", + "type": "object" + }, + "version": { + "description": "Add-on version (from ncloud_nks_get_available_addon)", + "type": "string" + } + }, + "required": [ + "addonName" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / authTypeAdded value: +{ + "description": "Cluster authentication mode. IAM access entries (ncloud_nks_*_access_entry) require API. ⚠️ Once set to API it cannot be changed back", + "enum": [ + "API", + "CONFIG_MAP" + ], + "type": "string" +} - added
Input schema / properties / bootstrapAccessEntryAdded value: +{ + "description": "Auto-create an IAM access entry for the creating principal (authType=API only)", + "type": "boolean" +} - changed
Input schema / properties / isRegional / descriptionPrevious value: -"Multi-zone (Regional) cluster. Default: false"New value: +"Multi-zone (Regional) cluster. Default: false. Public zone only (not in the Government-zone guide)" - added
Input schema / properties / kmsKeyTagAdded value: +{ + "description": "KMS key tag for Kubernetes secret encryption (from the Key Management Service console)", + "type": "string" +} - added
Input schema / properties / lbPrivateSubnetNoListAdded value: +{ + "description": "Public zone only: up to 2 private LB subnet numbers in different zones (multi-zone). Alternative to lbPrivateSubnetNo", + "items": { + "type": "number" + }, + "maxItems": 2, + "type": "array" +} - changed
Input schema / properties / lbPublicSubnetNo / descriptionPrevious value: -"Load balancer public subnet number"New value: +"Load balancer public subnet number. Required unless lbPublicSubnetNoList is given (Public zone) — the Government-zone guide lists it as required" - added
Input schema / properties / lbPublicSubnetNoListAdded value: +{ + "description": "Public zone only: up to 2 public LB subnet numbers in different zones (multi-zone). Alternative to lbPublicSubnetNo", + "items": { + "type": "number" + }, + "maxItems": 2, + "type": "array" +} - added
Input schema / properties / nodePool / items / properties / fabricClusterAdded value: +{ + "additionalProperties": false, + "description": "Fabric cluster to place the node pool in (poolName or poolNo)", + "properties": { + "poolName": { + "description": "Fabric cluster pool name", + "type": "string" + }, + "poolNo": { + "description": "Fabric cluster pool number", + "type": "number" + } + }, + "type": "object" +} - added
Input schema / properties / nodePool / items / properties / subnetNoAdded value: +{ + "description": "Subnet number for the node pool (single subnet)", + "type": "number" +} - added
Input schema / properties / nodePool / items / properties / subnetNoListAdded value: +{ + "description": "Subnet numbers for the node pool (multiple subnets)", + "items": { + "type": "number" + }, + "type": "array" +} - added
Input schema / properties / subnetLbNoAdded value: +{ + "description": "Load balancer subnet number (legacy single LB-subnet field; conditional per the guide)", + "type": "number" +} - added
Input schema / properties / zoneNoAdded value: +{ + "description": "Zone number — documented alternative to zoneCode", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "name", - "clusterType", - "loginKeyName", - "regionCode", - "vpcNo", - "subnetNoList", - "lbPublicSubnetNo" -]New value: +[ + "name", + "clusterType", + "loginKeyName", + "regionCode", + "vpcNo", + "subnetNoList" +]
- Changed
ncloud_nks_delete_access_entry3 fields changed- removed
Input schema / properties / accessEntryNoRemoved value: -{ - "description": "Access entry number to delete", - "type": "number" -} - added
Input schema / properties / entryUuidAdded value: +{ + "description": "IAM access entry UUID to delete", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "clusterUuid", - "accessEntryNo" -]New value: +[ + "clusterUuid", + "entryUuid" +]
- Changed
ncloud_nks_get_access_entry3 fields changed- removed
Input schema / properties / accessEntryNoRemoved value: -{ - "description": "Access entry number", - "type": "number" -} - added
Input schema / properties / entryUuidAdded value: +{ + "description": "IAM access entry UUID (from ncloud_nks_list_access_entries)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "clusterUuid", - "accessEntryNo" -]New value: +[ + "clusterUuid", + "entryUuid" +]
- Changed
ncloud_nks_list_node_pools1 field changed- added
Input schema / properties / hypervisorCodeAdded value: +{ + "description": "Hypervisor filter: XEN (default) or KVM", + "enum": [ + "XEN", + "KVM" + ], + "type": "string" +}
- Changed
ncloud_nks_set_ip_acl6 fields changed- added
Input schema / properties / defaultActionAdded value: +{ + "description": "Default action for addresses not matched by any entry", + "enum": [ + "allow", + "deny" + ], + "type": "string" +} - changed
Input schema / properties / entries / descriptionPrevious value: -"IP ACL entries"New value: +"IP ACL entries (optional)" - changed
Input schema / properties / entries / items / properties / action / descriptionPrevious value: -"ACL action (allow or deny)"New value: +"ACL action for this entry" - added
Input schema / properties / entries / items / properties / action / enumAdded value: +[ + "allow", + "deny" +] - added
Input schema / properties / entries / items / properties / commentAdded value: +{ + "description": "Free-text comment", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "clusterUuid", - "entries" -]New value: +[ + "clusterUuid", + "defaultAction" +]
- Changed
ncloud_nks_update_access_entry6 fields changed- removed
Input schema / properties / accessEntryNoRemoved value: -{ - "description": "Access entry number", - "type": "number" -} - added
Input schema / properties / entryUuidAdded value: +{ + "description": "IAM access entry UUID", + "type": "string" +} - added
Input schema / properties / groupsAdded value: +{ + "description": "Kubernetes group names (replaces the existing list)", + "items": { + "type": "string" + }, + "type": "array" +} - removed
Input schema / properties / kubernetesGroupsRemoved value: -{ - "description": "Kubernetes groups", - "items": { - "type": "string" - }, - "type": "array" -} - added
Input schema / properties / policiesAdded value: +{ + "description": "NKS access policies (replaces the existing list)", + "items": { + "additionalProperties": false, + "properties": { + "namespaces": { + "description": "Target namespaces — required when scope is 'namespace'", + "items": { + "type": "string" + }, + "type": "array" + }, + "scope": { + "description": "Policy scope", + "enum": [ + "cluster", + "namespace" + ], + "type": "string" + }, + "type": { + "description": "NKS access policy type", + "enum": [ + "NKSClusterAdminPolicy", + "NKSAdminPolicy", + "NKSEditPolicy", + "NKSViewPolicy" + ], + "type": "string" + } + }, + "required": [ + "type", + "scope" + ], + "type": "object" + }, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "clusterUuid", - "accessEntryNo" -]New value: +[ + "clusterUuid", + "entryUuid" +]
- Changed
ncloud_nks_update_lb_subnet5 fields changed- added
Input schema / properties / igwYnAdded value: +{ + "description": "Subnet type: Y = public LB subnet, N = private (default)", + "enum": [ + "Y", + "N" + ], + "type": "string" +} - removed
Input schema / properties / lbPrivateSubnetNoRemoved value: -{ - "description": "New LB private subnet number", - "type": "number" -} - removed
Input schema / properties / lbPublicSubnetNoRemoved value: -{ - "description": "New LB public subnet number", - "type": "number" -} - added
Input schema / properties / lbSubnetNoAdded value: +{ + "description": "Load balancer subnet instance number (required unless lbSubnetNoList is given)", + "type": "number" +} - added
Input schema / properties / lbSubnetNoListAdded value: +{ + "description": "Public zone only: up to 2 LB subnet instance numbers in different zones (multi-zone). Alternative to lbSubnetNo", + "items": { + "type": "number" + }, + "maxItems": 2, + "type": "array" +}
- Changed
ncloud_nks_update_node_pool_subnet2 fields changed- changed
Input schema / properties / subnetNoList / descriptionPrevious value: -"New subnet number list"New value: +"New subnet number list (sent as subnets[])" - added
Input schema / properties / subnetNoList / minItemsAdded value: +1
- Changed
ncloud_pca_create_ocsp1 field changed- changed
Input schema / properties / ocspServers / descriptionPrevious value: -"OCSP URL (format: https://pca.apigw.ntruss.com/ext/{caTag}/ocsp)"New value: +"OCSP URL (format: https://<Private CA host>/ext/{caTag}/ocsp — pca.apigw.ntruss.com in the Public zone, privateca.apigw.gov-ntruss.com in the Government zone)"
- Changed
ncloud_query_monitoring_data7 fields changed- changed
Input schema / properties / aggregation / enumPrevious value: -[ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" -]New value: +[ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" +] - changed
Input schema / properties / dimensions / descriptionPrevious value: -"Dimension filters as key-value pairs (e.g., {\"instanceNo\": \"12345\"})"New value: +"Dimensions identifying the resource as key-value pairs (required, e.g., {\"instanceNo\": \"12345\"})" - changed
Input schema / properties / interval / descriptionPrevious value: -"Aggregation interval (default: Min5)"New value: +"Aggregation interval (default: Min1)" - removed
Input schema / properties / prodNameRemoved value: -{ - "description": "Product name (e.g., \"System/Server(VPC)\")", - "type": "string" -} - added
Input schema / properties / productNameAdded value: +{ + "description": "Product name (e.g., \"System/Server(VPC)\")", + "type": "string" +} - added
Input schema / properties / queryAggregationAdded value: +{ + "$ref": "#/properties/aggregation", + "description": "How to aggregate query results when the query interval is coarser than stored data (default: AVG)" +} - changed
Input schema / requiredPrevious value: -[ - "cw_key", - "prodName", - "metric", - "timeStart", - "timeEnd" -]New value: +[ + "cw_key", + "metric", + "timeStart", + "timeEnd", + "dimensions" +]
- Changed
ncloud_query_monitoring_data_multiple5 fields changed- removed
Input schema / properties / aggregationRemoved value: -{ - "description": "Aggregation type (default: AVG)", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" -} - removed
Input schema / properties / intervalRemoved value: -{ - "description": "Aggregation interval (default: Min5)", - "enum": [ - "Min1", - "Min5", - "Min30", - "Hour2", - "Day1" - ], - "type": "string" -} - added
Input schema / properties / metricInfoListAdded value: +{ + "description": "Array of metric queries to execute (max 20)", + "items": { + "additionalProperties": false, + "properties": { + "aggregation": { + "description": "Aggregation type (default: AVG)", + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + }, + "dimensions": { + "additionalProperties": { + "type": "string" + }, + "description": "Dimensions identifying the resource as key-value pairs", + "type": "object" + }, + "interval": { + "description": "Aggregation interval", + "enum": [ + "Min1", + "Min5", + "Min30", + "Hour2", + "Day1" + ], + "type": "string" + }, + "metric": { + "description": "Metric name to query", + "type": "string" + }, + "prodKey": { + "description": "Product key (cw_key)", + "type": "string" + }, + "queryAggregation": { + "$ref": "#/properties/metricInfoList/items/properties/aggregation", + "description": "Query result aggregation (default: AVG)" + } + }, + "required": [ + "prodKey", + "metric", + "interval", + "dimensions" + ], + "type": "object" + }, + "maxItems": 20, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / metricsRemoved value: -{ - "description": "Array of metric queries to execute", - "items": { - "additionalProperties": false, - "properties": { - "dimensions": { - "additionalProperties": { - "type": "string" - }, - "description": "Dimension filters", - "type": "object" - }, - "metricGroupId": { - "description": "Metric group ID", - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric group item ID", - "type": "string" - }, - "prodKey": { - "description": "Product key (cw_key)", - "type": "string" - } - }, - "required": [ - "prodKey", - "metricGroupItemId", - "metricGroupId" - ], - "type": "object" - }, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "metrics", - "timeStart", - "timeEnd" -]New value: +[ + "metricInfoList", + "timeStart", + "timeEnd" +]
- Changed
ncloud_query_widget_preview11 fields changed- removed
Input schema / properties / aggregationRemoved value: -{ - "description": "Aggregation type", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" -} - removed
Input schema / properties / dimensionsRemoved value: -{ - "additionalProperties": { - "type": "string" - }, - "description": "Dimension filters as key-value pairs", - "type": "object" -} - removed
Input schema / properties / intervalRemoved value: -{ - "description": "Aggregation interval", - "enum": [ - "Min1", - "Min5", - "Min30", - "Hour2", - "Day1" - ], - "type": "string" -} - removed
Input schema / properties / metricRemoved value: -{ - "description": "Metric name to query", - "type": "string" -} - added
Input schema / properties / metricsInfoAdded value: +{ + "description": "Metric definitions to preview (WidgetMetricInfoDto[])", + "items": { + "additionalProperties": false, + "properties": { + "color": { + "description": "Chart color (e.g., #1f77b4)", + "type": "string" + }, + "dimensions": { + "additionalProperties": { + "type": "string" + }, + "description": "Dimension filters as key-value pairs", + "type": "object" + }, + "displayName": { + "description": "Metric display name on the widget", + "type": "string" + }, + "metric": { + "description": "Metric name to query", + "type": "string" + }, + "period": { + "description": "Aggregation interval", + "enum": [ + "Min1", + "Min5", + "Min30", + "Hour2", + "Day1" + ], + "type": "string" + }, + "prodKey": { + "description": "Product key (cw_key)", + "type": "string" + }, + "productName": { + "description": "Product name (e.g., \"System/Server(VPC)\")", + "type": "string" + }, + "resourceId": { + "description": "Resource ID", + "type": "string" + }, + "resourceName": { + "description": "Resource name", + "type": "string" + }, + "statistic": { + "description": "Aggregation function", + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + } + }, + "required": [ + "prodKey", + "metric", + "statistic", + "period" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / periodEndAdded value: +{ + "description": "End time in Unix epoch milliseconds", + "type": "number" +} - added
Input schema / properties / periodStartAdded value: +{ + "description": "Start time in Unix epoch milliseconds", + "type": "number" +} - removed
Input schema / properties / prodKeyRemoved value: -{ - "description": "Product key (cw_key)", - "type": "string" -} - removed
Input schema / properties / timeEndRemoved value: -{ - "description": "End time in Unix epoch milliseconds", - "type": "number" -} - removed
Input schema / properties / timeStartRemoved value: -{ - "description": "Start time in Unix epoch milliseconds", - "type": "number" -} - changed
Input schema / requiredPrevious value: -[ - "prodKey", - "metric", - "timeStart", - "timeEnd" -]New value: +[ + "periodStart", + "periodEnd", + "metricsInfo" +]
- Changed
ncloud_remove_resource_from_rules3 fields changed- changed
Input schema / properties / resourceId / descriptionPrevious value: -"Resource ID to remove from rules"New value: +"Resource ID (monitoring target) to remove from rules" - added
Input schema / properties / ruleGroupIdsAdded value: +{ + "description": "Event Rule (rule group) IDs to remove the resource from", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "prodKey", - "resourceId" -]New value: +[ + "prodKey", + "resourceId", + "ruleGroupIds" +]
- Changed
ncloud_search_event_by_id8 fields changed- added
Input schema / properties / endTimeAdded value: +{ + "description": "End time in Unix epoch milliseconds", + "type": "number" +} - added
Input schema / properties / onlyFetchUnCloseEventAdded value: +{ + "description": "Only return events that are not closed yet (default: false)", + "type": "boolean" +} - added
Input schema / properties / pageNumAdded value: +{ + "description": "Page number (default: 1)", + "type": "number" +} - added
Input schema / properties / pageSizeAdded value: +{ + "description": "Number of results per page (default: 20)", + "type": "number" +} - added
Input schema / properties / queryAdded value: +{ + "description": "Search by rule name, metric name or resource name", + "type": "string" +} - changed
Input schema / properties / ruleId / descriptionPrevious value: -"Rule ID associated with the event"New value: +"Event Rule ID associated with the event" - added
Input schema / properties / startTimeAdded value: +{ + "description": "Start time in Unix epoch milliseconds", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "eventId", - "ruleId" -]New value: +[ + "eventId", + "ruleId", + "startTime", + "endTime" +]
- Changed
ncloud_search_event_count3 fields changed- removed
Input schema / properties / eventLevelRemoved value: -{ - "description": "Event severity level filter", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" -} - removed
Input schema / properties / prodKeyRemoved value: -{ - "description": "Product key to filter events", - "type": "string" -} - removed
Input schema / properties / ruleGroupIdRemoved value: -{ - "description": "Rule group ID to filter events", - "type": "string" -}
- Changed
ncloud_search_events7 fields changed- added
Input schema / properties / eventIdAdded value: +{ + "description": "Event ID to filter", + "type": "string" +} - removed
Input schema / properties / eventLevelRemoved value: -{ - "description": "Event severity level filter", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" -} - added
Input schema / properties / onlyFetchUnCloseEventAdded value: +{ + "description": "Only return events that are not closed yet (default: false)", + "type": "boolean" +} - removed
Input schema / properties / prodKeyRemoved value: -{ - "description": "Product key to filter events", - "type": "string" -} - added
Input schema / properties / queryAdded value: +{ + "description": "Search by rule name, metric name or resource name", + "type": "string" +} - removed
Input schema / properties / ruleGroupIdRemoved value: -{ - "description": "Rule group ID to filter events", - "type": "string" -} - added
Input schema / properties / ruleIdAdded value: +{ + "description": "Event Rule ID to filter events", + "type": "string" +}
- Changed
ncloud_search_logs1 field changed- changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code (kr, sgn, jpn, uswn, den). Default kr"New value: +"Region code as a lowercase path segment (kr, jpn, sgn, uswn, den). Default: the client's active region"
- Changed
ncloud_search_metric_list4 fields changed- added
Input schema / properties / dimValuesAdded value: +{ + "description": "Dimension filters ([{name, value}])", + "items": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "name", + "value" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / dimensionsSelectedListAdded value: +{ + "description": "Search by specific dimension values ([{name, values[]}])", + "items": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "values": { + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "name", + "values" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / idDimensionsAdded value: +{ + "description": "idDimension names to query", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / queryAdded value: +{ + "description": "Keyword to search metric names", + "type": "string" +}
- Added
ncloud_secret_cancel_deletion - Added
ncloud_secret_cancel_rotation - Added
ncloud_secret_create_secret - Added
ncloud_secret_delete_rotation_trigger - Added
ncloud_secret_delete_secret - Added
ncloud_secret_disable_auto_rotation - Added
ncloud_secret_disable_secret - Added
ncloud_secret_enable_auto_rotation - Added
ncloud_secret_enable_secret - Added
ncloud_secret_execute_rotation - Added
ncloud_secret_get_secret - Added
ncloud_secret_get_secret_logs - Added
ncloud_secret_get_secret_stage_value - Added
ncloud_secret_get_secret_value - Added
ncloud_secret_job_add_pending_stage - Added
ncloud_secret_job_complete - Added
ncloud_secret_job_fail - Added
ncloud_secret_job_generate_random_secret - Added
ncloud_secret_job_start - Added
ncloud_secret_job_update_pending_stage - Added
ncloud_secret_list_protection_keys - Added
ncloud_secret_list_secrets - Added
ncloud_secret_list_triggers - Added
ncloud_secret_request_deletion - Added
ncloud_secret_retry_rotation - Added
ncloud_secret_rollback_rotation - Added
ncloud_secret_update_memo - Added
ncloud_secret_update_protection_key - Added
ncloud_secret_update_rotation_period - Added
ncloud_secret_update_rotation_trigger - Added
ncloud_secret_update_secret_stage_value - Added
ncloud_secret_update_secret_value - Changed
ncloud_send_monitoring_data7 fields changed- added
Input schema / properties / cw_keyAdded value: +{ + "description": "Product key (cw_key) of the custom schema", + "type": "string" +} - added
Input schema / properties / data / anyOfAdded value: +[ + { + "additionalProperties": {}, + "type": "object" + }, + { + "items": { + "additionalProperties": {}, + "type": "object" + }, + "type": "array" + } +] - changed
Input schema / properties / data / descriptionPrevious value: -"Array of data entries to send"New value: +"Data record (object) or records (array) with the schema's metric/dimension fields, e.g. {\"cpu\": 1.5, \"instanceId\": \"i-1\"}" - removed
Input schema / properties / data / itemsRemoved value: -{ - "additionalProperties": false, - "properties": { - "dimensions": { - "additionalProperties": { - "type": "string" - }, - "description": "Dimension key-value pairs identifying the resource", - "type": "object" - }, - "metrics": { - "description": "Array of metric data points", - "items": { - "additionalProperties": false, - "properties": { - "metricGroupId": { - "description": "Metric group ID", - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric group item ID", - "type": "string" - }, - "timestamp": { - "description": "Timestamp in Unix epoch milliseconds (default: current time)", - "type": "number" - }, - "value": { - "description": "Metric value", - "type": "number" - } - }, - "required": [ - "metricGroupId", - "metricGroupItemId", - "value" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "dimensions", - "metrics" - ], - "type": "object" -} - removed
Input schema / properties / data / typeRemoved value: -"array" - removed
Input schema / properties / prodKeyRemoved value: -{ - "description": "Product key (cw_key) for the custom schema", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "prodKey", - "data" -]New value: +[ + "cw_key", + "data" +]
- Added
ncloud_ses_get_node_storage - Added
ncloud_set_login_alias - Added
ncloud_set_server_log_collection - Changed
ncloud_sourcedeploy_get_target_groups3 fields changed- removed
Input schema / properties / autoScalingGroupNoRemoved value: -{ - "description": "Auto Scaling group number", - "type": "number" -} - added
Input schema / properties / autoScalingNameAdded value: +{ + "description": "Auto Scaling group name (see ncloud_sourcedeploy_get_autoscaling_groups)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "autoScalingGroupNo" -]New value: +[ + "autoScalingName" +]
- Changed
ncloud_update_fabric_cluster4 fields changed- changed
Input schema / properties / fabricClusterDescription / descriptionPrevious value: -"New description for the fabric cluster"New value: +"New description for the fabric cluster (up to 1000 bytes; an empty string clears it)" - changed
Input schema / properties / fabricClusterName / descriptionPrevious value: -"New fabric cluster name"New value: +"New fabric cluster name (3-30 chars: lowercase letters, digits, '-'; starts with a letter, ends with a letter or digit)" - added
Input schema / properties / fabricClusterName / minLengthAdded value: +3 - added
Input schema / properties / fabricClusterName / patternAdded value: +"^[a-z][a-z0-9-]*[a-z0-9]$"
- Changed
ncloud_update_maintenance3 fields changed- added
Input schema / properties / dimensions / additionalProperties / itemsAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "type": "object" +} - added
Input schema / properties / dimensions / additionalProperties / typeAdded value: +"array" - changed
Input schema / properties / dimensions / descriptionPrevious value: -"Target dimensions"New value: +"Target resources keyed by cw_key: {\"<cw_key>\": [{\"instanceNo\": \"1111\", \"type\": \"svr\"}]}"
- Changed
ncloud_update_metrics_group8 fields changed- added
Input schema / properties / groupDescAdded value: +{ + "description": "Description (<= 300 chars)", + "type": "string" +} - changed
Input schema / properties / groupName / descriptionPrevious value: -"New name for the metrics group"New value: +"Name of the metrics group (1-100 chars)" - removed
Input schema / properties / metricListRemoved value: -{ - "description": "Updated metric configurations", - "items": { - "additionalProperties": false, - "properties": { - "aggregation": { - "description": "Aggregation type", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" - }, - "condition": { - "description": "Threshold condition", - "enum": [ - "GT", - "GTE", - "LT", - "LTE", - "EQ" - ], - "type": "string" - }, - "duration": { - "description": "Duration in minutes", - "type": "number" - }, - "eventLevel": { - "description": "Event severity level", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric item ID", - "type": "string" - }, - "threshold": { - "description": "Threshold value", - "type": "number" - } - }, - "required": [ - "metricGroupItemId", - "condition", - "threshold", - "duration", - "eventLevel" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / metricsGroupItemsAdded value: +{ + "description": "Metric items (at least one)", + "items": { + "additionalProperties": false, + "properties": { + "calculation": { + "description": "Aggregation of the metric", + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + }, + "condition": { + "description": "Threshold operator (LT, LE, EQ, GE, GT)", + "enum": [ + "LT", + "LE", + "EQ", + "GE", + "GT" + ], + "type": "string" + }, + "desc": { + "description": "Metric description", + "type": "string" + }, + "dimensions": { + "description": "Dimension filters, e.g. [{dim:\"type\", val:\"svr\"}]", + "items": { + "additionalProperties": false, + "properties": { + "dim": { + "description": "Dimension name defined in the schema (e.g. \"type\")", + "type": "string" + }, + "val": { + "description": "Dimension value (e.g. \"svr\")", + "type": "string" + } + }, + "required": [ + "dim", + "val" + ], + "type": "object" + }, + "type": "array" + }, + "duration": { + "description": "Duration (>= 1)", + "type": "number" + }, + "eventLevel": { + "description": "Event level", + "enum": [ + "INFO", + "WARNING", + "CRITICAL" + ], + "type": "string" + }, + "metric": { + "description": "Metric name (e.g. avg_cpu_used_rto)", + "type": "string" + }, + "metricGroupItemId": { + "description": "Metric group item ID (when updating an existing item)", + "type": "string" + }, + "threshold": { + "description": "Threshold value", + "type": "number" + } + }, + "required": [ + "metric", + "eventLevel", + "condition", + "calculation", + "duration", + "threshold" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) for the target service", + "type": "string" +} - added
Input schema / properties / prodTypeAdded value: +{ + "description": "Product type: system (Ncloud product) or custom (Custom Schema)", + "enum": [ + "system", + "custom" + ], + "type": "string" +} - added
Input schema / properties / temporaryGroupAdded value: +{ + "default": false, + "description": "true: create the Event Rule without creating a metrics group (default false)", + "type": "boolean" +} - changed
Input schema / requiredPrevious value: -[ - "metricsGroupId" -]New value: +[ + "metricsGroupId", + "prodKey", + "groupName", + "metricsGroupItems" +]
- Changed
ncloud_update_monitor_group9 fields changed- added
Input schema / properties / groupDescAdded value: +{ + "description": "Description of the monitor group", + "type": "string" +} - changed
Input schema / properties / groupName / descriptionPrevious value: -"New name for the monitor group"New value: +"Name of the monitor group" - added
Input schema / properties / monitorGroupItemListAdded value: +{ + "description": "Monitoring targets ([{resourceId, nrn?}])", + "items": { + "additionalProperties": false, + "properties": { + "nrn": { + "description": "Resource NRN (Resource Manager)", + "type": "string" + }, + "resourceId": { + "description": "Monitoring target resource ID (e.g. server instance number)", + "type": "string" + }, + "resourceName": { + "description": "Resource name", + "type": "string" + } + }, + "required": [ + "resourceId" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) for the target service", + "type": "string" +} - added
Input schema / properties / prodNameAdded value: +{ + "description": "Product name", + "type": "string" +} - removed
Input schema / properties / resourceListRemoved value: -{ - "description": "Updated array of resource dimension objects", - "items": { - "additionalProperties": { - "type": "string" - }, - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / temporaryGroupAdded value: +{ + "description": "true: create the Event Rule without creating a monitor group", + "type": "boolean" +} - added
Input schema / properties / typeAdded value: +{ + "description": "Target group type: NORMAL (default) or ASG (Auto Scaling Group)", + "enum": [ + "NORMAL", + "ASG" + ], + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "monitorGroupId" -]New value: +[ + "monitorGroupId", + "prodKey", + "monitorGroupItemList" +]
- Changed
ncloud_update_product_schema12 fields changed- added
Input schema / properties / fields / items / properties / aggregationsAdded value: +{ + "additionalProperties": { + "items": { + "enum": [ + "COUNT", + "SUM", + "MAX", + "MIN", + "AVG" + ], + "type": "string" + }, + "type": "array" + }, + "description": "Metric fields only: aggregation functions per interval, e.g. {\"Min1\": [\"AVG\"], \"Min5\": [\"AVG\",\"MAX\"]}", + "propertyNames": { + "enum": [ + "Min1", + "Min5", + "Min30", + "Hour2", + "Day1" + ] + }, + "type": "object" +} - added
Input schema / properties / fields / items / properties / counterAdded value: +{ + "description": "Counter metric (default false)", + "type": "boolean" +} - added
Input schema / properties / fields / items / properties / dataTypeAdded value: +{ + "description": "Data type (dimension fields must be STRING)", + "enum": [ + "STRING", + "INTEGER", + "LONG", + "FLOAT" + ], + "type": "string" +} - added
Input schema / properties / fields / items / properties / descAdded value: +{ + "description": "Field description", + "type": "string" +} - changed
Input schema / properties / fields / items / properties / dimension / descriptionPrevious value: -"Whether this field is a dimension"New value: +"true if this field is a dimension (default false)" - removed
Input schema / properties / fields / items / properties / fieldNameRemoved value: -{ - "description": "Field name", - "type": "string" -} - removed
Input schema / properties / fields / items / properties / fieldTypeRemoved value: -{ - "description": "Field data type", - "enum": [ - "STRING", - "INTEGER", - "LONG", - "FLOAT" - ], - "type": "string" -} - added
Input schema / properties / fields / items / properties / idDimensionAdded value: +{ + "description": "Dimension used to identify resources in event rules (exactly one dimension must be the idDimension)", + "type": "boolean" +} - added
Input schema / properties / fields / items / properties / metricAdded value: +{ + "description": "true if this field is a metric (default false)", + "type": "boolean" +} - added
Input schema / properties / fields / items / properties / metricTypeAdded value: +{ + "description": "Metric type", + "enum": [ + "BASIC", + "EXTENDED", + "CUSTOM" + ], + "type": "string" +} - added
Input schema / properties / fields / items / properties / nameAdded value: +{ + "description": "Field name", + "type": "string" +} - changed
Input schema / properties / fields / items / requiredPrevious value: -[ - "fieldName", - "fieldType" -]New value: +[ + "name", + "dataType" +]
- Changed
ncloud_update_rule_group15 fields changed- added
Input schema / properties / asgPolicyListAdded value: +{ + "description": "Auto Scaling group policies", + "items": { + "additionalProperties": false, + "properties": { + "autoScalingGroupNo": { + "description": "Auto Scaling group number", + "type": "number" + }, + "autoScalingPolicyNo": { + "description": "Auto Scaling policy number", + "type": "number" + }, + "policyName": { + "description": "Auto Scaling policy name", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / cfgRuleListRemoved value: -{ - "description": "Updated rule configurations", - "items": { - "additionalProperties": false, - "properties": { - "aggregation": { - "description": "Aggregation type", - "enum": [ - "AVG", - "MIN", - "MAX", - "SUM", - "COUNT" - ], - "type": "string" - }, - "condition": { - "description": "Threshold condition", - "enum": [ - "GT", - "GTE", - "LT", - "LTE", - "EQ" - ], - "type": "string" - }, - "duration": { - "description": "Duration in minutes", - "type": "number" - }, - "eventLevel": { - "description": "Event severity level", - "enum": [ - "CRITICAL", - "WARNING", - "INFO" - ], - "type": "string" - }, - "metricGroupItemId": { - "description": "Metric item ID", - "type": "string" - }, - "threshold": { - "description": "Threshold value", - "type": "number" - } - }, - "required": [ - "metricGroupItemId", - "condition", - "threshold", - "duration", - "eventLevel" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / groupDescAdded value: +{ + "description": "Description (<= 300 chars)", + "type": "string" +} - changed
Input schema / properties / groupName / descriptionPrevious value: -"New name for the rule group"New value: +"Name of the rule group (1-1000 chars)" - removed
Input schema / properties / metricsGroupIdRemoved value: -{ - "description": "New metrics group ID", - "type": "string" -} - added
Input schema / properties / metricsGroupKeyAdded value: +{ + "description": "Metrics group (rule template) IDs to apply (at least one)", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / monitorGroupIdRemoved value: -{ - "description": "New monitor group ID", - "type": "string" -} - added
Input schema / properties / monitorGroupKeyAdded value: +{ + "description": "Monitor group (target group) IDs to monitor (at least one)", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / personalNotificationRecipientsAdded value: +{ + "description": "Personal notification recipients", + "items": { + "$ref": "#/properties/recipientNotifications/items" + }, + "type": "array" +} - added
Input schema / properties / prodKeyAdded value: +{ + "description": "Product key (cw_key) for the target service", + "type": "string" +} - removed
Input schema / properties / recipientNotificationRemoved value: -{ - "description": "Updated notification recipients", - "items": { - "additionalProperties": false, - "properties": { - "notificationType": { - "description": "Notification type", - "enum": [ - "EMAIL", - "SMS", - "WEBHOOK" - ], - "type": "string" - }, - "recipient": { - "description": "Notification recipient", - "type": "string" - } - }, - "required": [ - "notificationType", - "recipient" - ], - "type": "object" - }, - "type": "array" -} - added
Input schema / properties / recipientNotificationsAdded value: +{ + "description": "Notification recipient groups", + "items": { + "additionalProperties": false, + "properties": { + "enableNotiWhenEventClose": { + "description": "Send a notification when the event closes", + "type": "boolean" + }, + "groupName": { + "description": "Notification recipient group name", + "type": "string" + }, + "groupNum": { + "description": "Notification recipient group number", + "type": "number" + }, + "notifyTypes": { + "description": "Notification methods (SMS, EMAIL)", + "items": { + "enum": [ + "SMS", + "EMAIL" + ], + "type": "string" + }, + "type": "array" + }, + "reminderTime": { + "description": "Reminder interval in minutes (5-720)", + "type": "number" + } + }, + "type": "object" + }, + "type": "array" +} - changed
Input schema / properties / ruleGroupId / descriptionPrevious value: -"Rule group ID to update"New value: +"Rule group (Event Rule) ID to update" - added
Input schema / properties / suspendRuleItemsAdded value: +{ + "description": "Rule items to suspend ([{resourceId, metricGroupItemId}])", + "items": { + "additionalProperties": false, + "properties": { + "metricGroupItemId": { + "description": "Metric item ID", + "type": "string" + }, + "resourceId": { + "description": "Monitoring target ID", + "type": "string" + } + }, + "required": [ + "resourceId", + "metricGroupItemId" + ], + "type": "object" + }, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "ruleGroupId" -]New value: +[ + "ruleGroupId", + "prodKey", + "groupName", + "metricsGroupKey", + "monitorGroupKey" +]
- Added
ncloud_wms_get_monitor - Added
ncloud_wms_get_result_detail - Added
ncloud_wms_get_results - Added
ncloud_wms_list_monitors - Added
ncloud_wms_set_status
99 tool updates
v1.16.0- Changed
ncloud_cdss_create_cluster2 fields changed- changed
Input schema / properties / kafkaManagerUserName / descriptionPrevious value: -"CMAK access account ID"New value: +"CMAK access account ID (still required by the API; CMAK itself is being phased out by Ncloud)" - changed
Input schema / properties / kafkaManagerUserPassword / descriptionPrevious value: -"CMAK access account password"New value: +"CMAK access account password (still required by the API; CMAK itself is being phased out by Ncloud)"
- Changed
ncloud_cdss_create_cluster_g32 fields changed- changed
Input schema / properties / kafkaManagerUserName / descriptionPrevious value: -"CMAK access account ID"New value: +"CMAK access account ID (still required by the API; CMAK itself is being phased out by Ncloud)" - changed
Input schema / properties / kafkaManagerUserPassword / descriptionPrevious value: -"CMAK access account password"New value: +"CMAK access account password (still required by the API; CMAK itself is being phased out by Ncloud)"
- Removed
ncloud_cdss_restart_cmak - Changed
ncloud_delete_certificate2 fields changed- changed
Input schema / properties / certificateName / descriptionPrevious value: -"Certificate name (must match exactly for verification)"New value: +"Certificate name (must match exactly for verification; older certificates may have up to 30 chars)" - added
Input schema / properties / certificateName / minLengthAdded value: +1
- Added
ncloud_mailer_create_address_book - Added
ncloud_mailer_create_category - Added
ncloud_mailer_create_template - Added
ncloud_mailer_delete_address_book - Added
ncloud_mailer_delete_addresses - Added
ncloud_mailer_delete_category - Added
ncloud_mailer_delete_recipient_group - Added
ncloud_mailer_delete_template - Added
ncloud_mailer_delete_unsubscribers - Added
ncloud_mailer_get_address_book - Added
ncloud_mailer_get_send_block_list - Added
ncloud_mailer_get_template - Added
ncloud_mailer_get_template_structure - Added
ncloud_mailer_register_unsubscribers - Added
ncloud_mailer_restore_template - Added
ncloud_mailer_update_template - Changed
ncloud_nks_create_cluster2 fields changed- changed
Input schema / properties / log / descriptionPrevious value: -"Log settings (audit log)"New value: +"Log settings. audit=true sends the Kubernetes audit log to Cloud Log Analytics and, since 2026-09-17, is rejected (400) unless the account has an active CLA subscription" - changed
Input schema / properties / nodePool / items / properties / zoneCode / descriptionPrevious value: -"Zone code (required for Regional clusters)"New value: +"Zone code (e.g., KR-1). Required for Regional clusters and, since 2026-09-17, must match the zone of the subnets assigned to this node pool — a mismatch is rejected with 400"
- Changed
ncloud_nks_create_node_pool1 field changed- changed
Input schema / properties / zoneCode / descriptionPrevious value: -"Zone code (required for Regional clusters)"New value: +"Zone code (e.g., KR-1). Required for Regional clusters and, since 2026-09-17, must match the zone of the subnets assigned to this node pool — a mismatch is rejected with 400"
- Changed
ncloud_register_external_certificate3 fields changed- changed
Input schema / properties / certificateName / descriptionPrevious value: -"Certificate name (3-30 chars, alphanumeric and '-', no duplicates)"New value: +"Certificate name: 3-20 chars, must start with a letter, English letters/digits/'-' only, unique within the account (limit reduced from 30 to 20 chars on 2026-09-17)" - added
Input schema / properties / certificateName / maxLengthAdded value: +20 - added
Input schema / properties / certificateName / minLengthAdded value: +3
- Added
ncloud_sens_cancel_alimtalk_reservation - Added
ncloud_sens_cancel_sms_reservation - Added
ncloud_sens_create_project - Added
ncloud_sens_delete_brandmessage_image - Added
ncloud_sens_delete_project - Added
ncloud_sens_delete_sms_unsubscribes - Added
ncloud_sens_get_alimtalk_reservation_status - Added
ncloud_sens_get_alimtalk_status - Added
ncloud_sens_get_brandmessage_image - Added
ncloud_sens_get_brandmessage_status - Added
ncloud_sens_get_mail - Added
ncloud_sens_get_mail_request - Added
ncloud_sens_get_project - Added
ncloud_sens_get_sms_reservation_status - Changed
ncloud_sens_get_sms_status2 fields changed- changed
Input schema / properties / messageId / descriptionPrevious value: -"Message ID to check delivery status"New value: +"Message ID (from the send response or ncloud_sens_list_sms_requests)" - added
Input schema / properties / serviceIdAdded value: +{ + "description": "SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled.", + "type": "string" +}
- Added
ncloud_sens_list_alimtalk_channels - Added
ncloud_sens_list_alimtalk_requests - Changed
ncloud_sens_list_alimtalk_templates11 fields changed- changed
Input schema / properties / channelId / descriptionPrevious value: -"KakaoTalk Channel ID (e.g., @channelname)"New value: +"KakaoTalk channel ID (e.g. @channelname, from ncloud_sens_list_alimtalk_channels)" - changed
Input schema / properties / pageIndex / descriptionPrevious value: -"Page index (0-N, default: 0)"New value: +"Page index (0-based, default 0)" - added
Input schema / properties / pageIndex / minimumAdded value: +0 - changed
Input schema / properties / pageIndex / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Number of items per page (1-100, default: 100)"New value: +"Items per page (1-100, default 100)" - added
Input schema / properties / pageSize / maximumAdded value: +100 - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer" - added
Input schema / properties / serviceIdAdded value: +{ + "description": "ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled.", + "type": "string" +} - changed
Input schema / properties / templateCode / descriptionPrevious value: -"Template code (if provided, returns template details including inspection info)"New value: +"Template code → detailed view" - changed
Input schema / properties / templateName / descriptionPrevious value: -"Template name filter (partial match)"New value: +"Filter by name (full or partial match)"
- Added
ncloud_sens_list_brandmessage_images - Added
ncloud_sens_list_brandmessage_requests - Added
ncloud_sens_list_brandmessage_templates - Added
ncloud_sens_list_mail_requests - Added
ncloud_sens_list_mails - Added
ncloud_sens_list_projects - Changed
ncloud_sens_list_sms_requests23 fields changed- added
Input schema / properties / completeEndTime / $refAdded value: +"#/properties/requestStartTime" - changed
Input schema / properties / completeEndTime / descriptionPrevious value: -"Query end time based on delivery completion (within 24 hours of completeStartTime)"New value: +"Window end by completion time (within 24 hours of start)" - removed
Input schema / properties / completeEndTime / typeRemoved value: -"string" - added
Input schema / properties / completeStartTime / $refAdded value: +"#/properties/requestStartTime" - changed
Input schema / properties / completeStartTime / descriptionPrevious value: -"Query start time based on delivery completion (YYYY-MM-DD HH:mm:ss format)"New value: +"Window start by completion time 'YYYY-MM-DD HH:mm:ss'" - removed
Input schema / properties / completeStartTime / typeRemoved value: -"string" - added
Input schema / properties / contentTypeAdded value: +{ + "description": "Filter by content type", + "enum": [ + "COMM", + "AD" + ], + "type": "string" +} - added
Input schema / properties / countryCodeAdded value: +{ + "description": "Filter by country code", + "type": "string" +} - changed
Input schema / properties / from / descriptionPrevious value: -"Filter by caller ID (numbers only)"New value: +"Filter by sender number (digits only)" - changed
Input schema / properties / nextToken / descriptionPrevious value: -"Page location token for pagination"New value: +"Page token from the previous response" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Number of items per page (1-100, default: 20)"New value: +"Items per page (1-100, default 20)" - added
Input schema / properties / pageSize / maximumAdded value: +100 - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer" - added
Input schema / properties / requestEndTime / $refAdded value: +"#/properties/requestStartTime" - changed
Input schema / properties / requestEndTime / descriptionPrevious value: -"Query end time based on delivery request (within 30 days of requestStartTime)"New value: +"Window end by request time (SMS: within 30 days, Alimtalk/Brand: within 31 days of start)" - removed
Input schema / properties / requestEndTime / typeRemoved value: -"string" - changed
Input schema / properties / requestId / descriptionPrevious value: -"Request ID (conditional: one of requestId, requestStartTime+requestEndTime, or completeStartTime+completeEndTime required)"New value: +"Request ID from the send response. One of requestId, requestStartTime+requestEndTime, completeStartTime+completeEndTime is required" - changed
Input schema / properties / requestStartTime / descriptionPrevious value: -"Query start time based on delivery request (YYYY-MM-DD HH:mm:ss format)"New value: +"Window start by request time 'YYYY-MM-DD HH:mm:ss'" - added
Input schema / properties / requestStartTime / patternAdded value: +"^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}$" - added
Input schema / properties / serviceIdAdded value: +{ + "description": "SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled.", + "type": "string" +} - changed
Input schema / properties / statusName / descriptionPrevious value: -"Filter by reception status"New value: +"Filter by delivery result" - changed
Input schema / properties / to / descriptionPrevious value: -"Filter by recipient number (numbers only)"New value: +"Filter by recipient number (digits only)"
- Added
ncloud_sens_list_sms_unsubscribes - Added
ncloud_sens_register_sms_unsubscribes - Changed
ncloud_sens_send_alimtalk31 fields changed- added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "description": "If true, returns the request preview without sending", + "type": "boolean" +} - changed
Input schema / properties / messages / descriptionPrevious value: -"Array of message recipients (up to 100)"New value: +"Recipients (1-100)" - changed
Input schema / properties / messages / items / properties / buttons / descriptionPrevious value: -"Button list (must match template)"New value: +"Buttons (must match the template)" - changed
Input schema / properties / messages / items / properties / buttons / items / properties / linkMobile / descriptionPrevious value: -"Mobile web link (required for WL type)"New value: +"Mobile URL (required for WL)" - changed
Input schema / properties / messages / items / properties / buttons / items / properties / linkPc / descriptionPrevious value: -"PC web link (required for WL type)"New value: +"PC URL (required for WL)" - changed
Input schema / properties / messages / items / properties / buttons / items / properties / name / descriptionPrevious value: -"Button name"New value: +"Button label (≤20 chars; '채널 추가' for AC)" - added
Input schema / properties / messages / items / properties / buttons / items / properties / name / maxLengthAdded value: +20 - changed
Input schema / properties / messages / items / properties / buttons / items / properties / schemeAndroid / descriptionPrevious value: -"Android app link (required for AL type)"New value: +"Android scheme (required for AL)" - changed
Input schema / properties / messages / items / properties / buttons / items / properties / schemeIos / descriptionPrevious value: -"iOS app link (required for AL type)"New value: +"iOS scheme (required for AL)" - changed
Input schema / properties / messages / items / properties / buttons / items / properties / type / descriptionPrevious value: -"Button type"New value: +"DS delivery | WL web link | AL app link | BK bot keyword | MD message | AC add channel" - changed
Input schema / properties / messages / items / properties / content / descriptionPrevious value: -"Message content (must match template)"New value: +"Message content (must match the template)" - changed
Input schema / properties / messages / items / properties / countryCode / descriptionPrevious value: -"Country code (default: 82)"New value: +"Country code (default 82)" - changed
Input schema / properties / messages / items / properties / failoverConfig / descriptionPrevious value: -"SMS failover configuration"New value: +"SMS failover settings (used with useSmsFailover=true)" - changed
Input schema / properties / messages / items / properties / failoverConfig / properties / content / descriptionPrevious value: -"Failover message content"New value: +"Failover content (default = the message content without buttons)" - changed
Input schema / properties / messages / items / properties / failoverConfig / properties / from / descriptionPrevious value: -"Failover caller ID"New value: +"Failover sender number (registered in the console)" - changed
Input schema / properties / messages / items / properties / failoverConfig / properties / subject / descriptionPrevious value: -"Failover message subject (LMS only)"New value: +"Failover subject (LMS only; default = channel name)" - changed
Input schema / properties / messages / items / properties / failoverConfig / properties / type / descriptionPrevious value: -"Failover message type"New value: +"Failover type; omitted = SMS when ≤90 bytes, else LMS" - added
Input schema / properties / messages / items / properties / headerContentAdded value: +{ + "description": "Header (item-list templates only, ≤16 bytes)", + "type": "string" +} - added
Input schema / properties / messages / items / properties / itemAdded value: +{ + "additionalProperties": false, + "description": "Item list (item-list templates)", + "properties": { + "list": { + "description": "Items (2-10)", + "items": { + "additionalProperties": false, + "properties": { + "description": { + "description": "Item value (1-23 chars)", + "maxLength": 23, + "minLength": 1, + "type": "string" + }, + "title": { + "description": "Item name (1-6 chars)", + "maxLength": 6, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "title", + "description" + ], + "type": "object" + }, + "maxItems": 10, + "minItems": 2, + "type": "array" + }, + "summary": { + "additionalProperties": false, + "description": "Item summary", + "properties": { + "description": { + "description": "Summary value (currency symbol/code, digits, comma, space, 2-decimal point)", + "maxLength": 23, + "minLength": 1, + "type": "string" + }, + "title": { + "description": "Summary label (1-6 chars)", + "maxLength": 6, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "title", + "description" + ], + "type": "object" + } + }, + "required": [ + "list" + ], + "type": "object" +} - added
Input schema / properties / messages / items / properties / itemHighlightAdded value: +{ + "additionalProperties": false, + "description": "Item highlight (item-list templates)", + "properties": { + "description": { + "description": "Highlight description", + "type": "string" + }, + "title": { + "description": "Highlight title (≤30 chars / 15 per line; with image ≤21 / 10 per line)", + "type": "string" + } + }, + "required": [ + "title", + "description" + ], + "type": "object" +} - changed
Input schema / properties / messages / items / properties / title / descriptionPrevious value: -"Highlight title (highlight-type templates only)"New value: +"Emphasis title (emphasis-type templates only)" - changed
Input schema / properties / messages / items / properties / to / descriptionPrevious value: -"Recipient phone number (numbers only)"New value: +"Recipient number (digits only)" - added
Input schema / properties / messages / items / properties / to / patternAdded value: +"^\\d+$" - changed
Input schema / properties / messages / items / properties / useSmsFailover / descriptionPrevious value: -"Enable SMS failover delivery"New value: +"Send SMS/LMS when the Alim Talk is not delivered (not for 'B'-prefixed result codes)" - added
Input schema / properties / messages / maxItemsAdded value: +100 - added
Input schema / properties / messages / minItemsAdded value: +1 - changed
Input schema / properties / plusFriendId / descriptionPrevious value: -"KakaoTalk Channel ID (e.g., @channelname)"New value: +"KakaoTalk channel ID (e.g. @channelname)" - changed
Input schema / properties / reserveTime / descriptionPrevious value: -"Reserved send time (YYYY-MM-DD HH:mm format)"New value: +"Scheduled send time 'YYYY-MM-DD HH:mm' (no seconds; must be at least 10 minutes from now)" - added
Input schema / properties / reserveTime / patternAdded value: +"^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}$" - changed
Input schema / properties / reserveTimeZone / descriptionPrevious value: -"Reserved time zone (default: Asia/Seoul)"New value: +"tz database name for reserveTime (default Asia/Seoul)" - added
Input schema / properties / serviceIdAdded value: +{ + "description": "ALIMTALK service ID in NRN form (e.g. ncp:kkobizmsg:kr:1********2:myproject). Defaults to NCLOUD_SENS_ALIMTALK_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (kkoBizMsgService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled.", + "type": "string" +}
- Added
ncloud_sens_send_brandmessage - Added
ncloud_sens_send_mail - Removed
ncloud_sens_send_push - Changed
ncloud_sens_send_sms20 fields changed- changed
Input schema / properties / content / descriptionPrevious value: -"Default message content (SMS: 0-90 bytes, LMS/MMS: 0-2000 bytes)"New value: +"Default content (SMS ≤90 bytes, LMS/MMS ≤2000 bytes)" - changed
Input schema / properties / contentType / descriptionPrevious value: -"Content type: COMM (general, default) or AD (advertisement)"New value: +"COMM (default) | AD (advertising)" - changed
Input schema / properties / countryCode / descriptionPrevious value: -"Country code (default: 82 for Korea)"New value: +"Country code (default 82)" - added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "description": "If true, returns the request preview without sending", + "type": "boolean" +} - added
Input schema / properties / filesAdded value: +{ + "description": "MMS attachments (MMS only)", + "items": { + "additionalProperties": false, + "properties": { + "fileId": { + "description": "File ID from ncloud_sens_upload_sms_attachment", + "type": "string" + } + }, + "required": [ + "fileId" + ], + "type": "object" + }, + "type": "array" +} - changed
Input schema / properties / from / descriptionPrevious value: -"Caller ID (registered phone number, numbers only)"New value: +"Sender number registered in the console (digits only)" - added
Input schema / properties / from / patternAdded value: +"^\\d+$" - changed
Input schema / properties / messages / descriptionPrevious value: -"Array of message recipients (up to 100)"New value: +"Recipients (1-100)" - changed
Input schema / properties / messages / items / properties / content / descriptionPrevious value: -"Individual message content (overrides default content)"New value: +"Per-recipient content (overrides the default)" - changed
Input schema / properties / messages / items / properties / subject / descriptionPrevious value: -"Individual message subject (LMS/MMS only, 0-40 bytes)"New value: +"Per-recipient subject (LMS/MMS, ≤40 bytes)" - changed
Input schema / properties / messages / items / properties / to / descriptionPrevious value: -"Recipient phone number (numbers only)"New value: +"Recipient number (digits only)" - added
Input schema / properties / messages / items / properties / to / patternAdded value: +"^\\d+$" - added
Input schema / properties / messages / maxItemsAdded value: +100 - added
Input schema / properties / messages / minItemsAdded value: +1 - changed
Input schema / properties / reserveTime / descriptionPrevious value: -"Reserved send time (YYYY-MM-DD HH:mm format)"New value: +"Scheduled send time 'YYYY-MM-DD HH:mm' (no seconds; must be at least 10 minutes from now)" - added
Input schema / properties / reserveTime / patternAdded value: +"^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}$" - changed
Input schema / properties / reserveTimeZone / descriptionPrevious value: -"Reserved time zone (default: Asia/Seoul)"New value: +"tz database name for reserveTime (default Asia/Seoul)" - added
Input schema / properties / serviceIdAdded value: +{ + "description": "SMS service ID in NRN form (e.g. ncp:sms:kr:1********2:myproject). Defaults to NCLOUD_SENS_SMS_SERVICE_ID / NCLOUD_SENS_SERVICE_ID. Find it with ncloud_sens_list_projects (smsService.serviceId). A 'Forbidden' reply means the project does not have this channel enabled.", + "type": "string" +} - changed
Input schema / properties / subject / descriptionPrevious value: -"Default message subject (LMS/MMS only, 0-40 bytes)"New value: +"Default subject (LMS/MMS only, ≤40 bytes)" - changed
Input schema / properties / type / descriptionPrevious value: -"Message type: SMS (short), LMS (long), MMS (multimedia)"New value: +"SMS (short) | LMS (long) | MMS (image attachment)"
- Added
ncloud_sens_update_project - Added
ncloud_sens_upload_sms_attachment - Added
ncloud_serverless_batch_create_databases - Added
ncloud_serverless_batch_create_users - Added
ncloud_serverless_batch_delete_databases - Added
ncloud_serverless_batch_delete_logs - Added
ncloud_serverless_batch_delete_users - Added
ncloud_serverless_create_cluster - Added
ncloud_serverless_create_database - Added
ncloud_serverless_create_imported_backup - Added
ncloud_serverless_create_user - Added
ncloud_serverless_delete_cluster - Added
ncloud_serverless_delete_database - Added
ncloud_serverless_delete_imported_backup - Added
ncloud_serverless_delete_user - Added
ncloud_serverless_export_backup - Added
ncloud_serverless_export_logs - Added
ncloud_serverless_get_backup - Added
ncloud_serverless_get_cluster - Added
ncloud_serverless_get_config - Added
ncloud_serverless_get_database - Added
ncloud_serverless_get_imported_backup - Added
ncloud_serverless_get_instance - Added
ncloud_serverless_get_log_config - Added
ncloud_serverless_get_operation - Added
ncloud_serverless_get_user - Added
ncloud_serverless_kill_processes - Added
ncloud_serverless_list_backups - Added
ncloud_serverless_list_clusters - Added
ncloud_serverless_list_config_parameters - Added
ncloud_serverless_list_databases - Added
ncloud_serverless_list_engine_versions - Added
ncloud_serverless_list_events - Added
ncloud_serverless_list_imported_backups - Added
ncloud_serverless_list_instances - Added
ncloud_serverless_list_logs - Added
ncloud_serverless_list_operations - Added
ncloud_serverless_list_processes - Added
ncloud_serverless_list_users - Added
ncloud_serverless_restore_cluster - Added
ncloud_serverless_update_cluster - Added
ncloud_serverless_update_config - Added
ncloud_serverless_update_log_config - Added
ncloud_serverless_update_user
137 tool updates
v1.15.0- Changed
ncloud_cdss_add_nodes3 fields changed- changed
Input schema / properties / newBrokerNodeCount / descriptionPrevious value: -"Number of broker nodes to add (1-10)"New value: +"How many broker nodes to ADD (1-10). This is a delta, not the resulting total" - added
Input schema / properties / newBrokerNodeCount / maximumAdded value: +10 - added
Input schema / properties / newBrokerNodeCount / minimumAdded value: +1
- Changed
ncloud_cdss_apply_config_group5 fields changed- changed
Input schema / properties / configGroupNo / descriptionPrevious value: -"Config group number to apply"New value: +"Config group number to apply (from ncloud_cdss_list_config_groups)" - added
Input schema / properties / kafkaVersionCodeAdded value: +{ + "description": "Kafka version code of the group (from ncloud_cdss_get_kafka_versions)", + "type": "number" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Target cluster instance number"New value: +"Target cluster instance number (from ncloud_cdss_list_clusters)" - changed
Input schema / properties / serviceGroupInstanceNo / typePrevious value: -"string"New value: +"number" - changed
Input schema / requiredPrevious value: -[ - "configGroupNo", - "serviceGroupInstanceNo" -]New value: +[ + "configGroupNo", + "kafkaVersionCode", + "serviceGroupInstanceNo" +]
- Changed
ncloud_cdss_change_kafka_config20 fields changed- added
Input schema / properties / additionalSettingsAdded value: +{ + "description": "Settings without a named parameter above — sent as additionalKafkaConfigGroupDetailList. ⚠️ Value application is unverified: an earlier attempt registered the entry with an empty value", + "items": { + "additionalProperties": false, + "properties": { + "configName": { + "description": "Kafka setting name (e.g. 'compression.type')", + "type": "string" + }, + "configValue": { + "description": "Value to set, as a string", + "type": "string" + } + }, + "required": [ + "configName", + "configValue" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / allowEveryoneIfNoAclFoundAdded value: +{ + "description": "allow.everyone.if.no.acl.found", + "type": "boolean" +} - added
Input schema / properties / authorizerClassNameAdded value: +{ + "description": "authorizer.class.name. ⚠️ Read-only in practice: the server accepts this, answers SUCCESS, and discards it (modifyYn=false)", + "type": "string" +} - added
Input schema / properties / autoCreateTopicsEnableAdded value: +{ + "description": "auto.create.topics.enable", + "type": "boolean" +} - changed
Input schema / properties / configGroupNo / descriptionPrevious value: -"Config group number"New value: +"Config group number (from ncloud_cdss_list_config_groups)" - added
Input schema / properties / deleteTopicEnableAdded value: +{ + "description": "delete.topic.enable", + "type": "boolean" +} - removed
Input schema / properties / kafkaConfigRemoved value: -{ - "additionalProperties": { - "type": "string" - }, - "description": "Kafka config key-value pairs to change", - "type": "object" -} - added
Input schema / properties / kafkaVersionCodeAdded value: +{ + "description": "Kafka version code of the group (from ncloud_cdss_get_kafka_versions)", + "type": "number" +} - added
Input schema / properties / logCleanerEnableAdded value: +{ + "description": "log.cleaner.enable", + "type": "boolean" +} - added
Input schema / properties / logCleanerThreadsAdded value: +{ + "description": "log.cleaner.threads", + "type": "number" +} - added
Input schema / properties / logCleanupPolicyAdded value: +{ + "description": "log.cleanup.policy (e.g. 'delete', 'compact')", + "type": "string" +} - added
Input schema / properties / logFlushIntervalMessagesAdded value: +{ + "description": "log.flush.interval.messages", + "type": "number" +} - added
Input schema / properties / logRetentionBytesAdded value: +{ + "description": "log.retention.bytes (-1 for unlimited)", + "type": "number" +} - added
Input schema / properties / logRetentionHoursAdded value: +{ + "description": "log.retention.hours (e.g. 168)", + "type": "number" +} - added
Input schema / properties / logSegmentBytesAdded value: +{ + "description": "log.segment.bytes (e.g. 1073741824)", + "type": "number" +} - added
Input schema / properties / numIoThreadsAdded value: +{ + "description": "num.io.threads", + "type": "number" +} - added
Input schema / properties / numNetworkThreadsAdded value: +{ + "description": "num.network.threads", + "type": "number" +} - added
Input schema / properties / numPartitionsAdded value: +{ + "description": "num.partitions", + "type": "number" +} - added
Input schema / properties / offsetsTopicReplicationFactorAdded value: +{ + "description": "offsets.topic.replication.factor", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "configGroupNo", - "kafkaConfig" -]New value: +[ + "configGroupNo", + "kafkaVersionCode" +]
- Changed
ncloud_cdss_create_cluster1 field changed- added
Input schema / properties / returnClusterIdAdded value: +{ + "default": false, + "description": "If true, calls the variant that returns the new cluster's serviceGroupInstanceNo", + "type": "boolean" +}
- Added
ncloud_cdss_create_cluster_g3 - Changed
ncloud_cdss_create_config_group6 fields changed- changed
Input schema / properties / configGroupName / descriptionPrevious value: -"Config group name"New value: +"Config group name (3-30 chars: lowercase letters, numbers, hyphen; must start and end with a lowercase letter or number)" - added
Input schema / properties / configGroupName / maxLengthAdded value: +30 - changed
Input schema / properties / description / descriptionPrevious value: -"Config group description"New value: +"Config group description (0-255 chars)" - added
Input schema / properties / description / maxLengthAdded value: +255 - changed
Input schema / properties / kafkaVersionCode / descriptionPrevious value: -"Kafka version code"New value: +"Kafka version code (from ncloud_cdss_get_kafka_versions)" - changed
Input schema / properties / kafkaVersionCode / typePrevious value: -"string"New value: +"number"
- Changed
ncloud_cdss_enable_public_endpoint2 fields changed- added
Input schema / properties / loadBalancerInstanceNoAdded value: +{ + "description": "Load balancer instance number (from ncloud_cdss_get_load_balancers)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo" -]New value: +[ + "serviceGroupInstanceNo", + "loadBalancerInstanceNo" +]
- Changed
ncloud_cdss_get_cluster_server_images2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / generationCodeAdded value: +{ + "description": "Server generation code. Only G3 (3rd generation) is valid", + "enum": [ + "G3" + ], + "type": "string" +}
- Added
ncloud_cdss_get_config_group_clusters - Changed
ncloud_cdss_get_config_group_detail3 fields changed- changed
Input schema / properties / configGroupNo / descriptionPrevious value: -"Config group number"New value: +"Config group number (from ncloud_cdss_list_config_groups)" - added
Input schema / properties / kafkaVersionCodeAdded value: +{ + "description": "Kafka version code of the group (from ncloud_cdss_get_kafka_versions)", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "configGroupNo" -]New value: +[ + "configGroupNo", + "kafkaVersionCode" +]
- Changed
ncloud_cdss_get_kafka_config3 fields changed- changed
Input schema / properties / configGroupNo / descriptionPrevious value: -"Config group number"New value: +"Config group number (from ncloud_cdss_list_config_groups)" - added
Input schema / properties / kafkaVersionCodeAdded value: +{ + "description": "Kafka version code of the group (from ncloud_cdss_get_kafka_versions)", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "configGroupNo" -]New value: +[ + "configGroupNo", + "kafkaVersionCode" +]
- Changed
ncloud_cdss_get_monitoring9 fields changed- added
Input schema / properties / computeInstanceNoAdded value: +{ + "description": "Node instance number (from ncloud_cdss_list_nodes)", + "type": "string" +} - removed
Input schema / properties / endTimeRemoved value: -{ - "description": "End time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / intervalAdded value: +{ + "description": "Aggregation interval (e.g. Min1, Min30, Hour2, Day1)", + "type": "string" +} - added
Input schema / properties / metricAdded value: +{ + "description": "Metric set to retrieve", + "enum": [ + "CLUSTER_ALL_METRICS", + "BROKER_ALL_METRICS" + ], + "type": "string" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (path segment)" - removed
Input schema / properties / startTimeRemoved value: -{ - "description": "Start time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / timeEndAdded value: +{ + "description": "End time as epoch milliseconds", + "type": "number" +} - added
Input schema / properties / timeStartAdded value: +{ + "description": "Start time as epoch milliseconds (e.g. 1745280000000) — NOT an ISO 8601 string", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo" -]New value: +[ + "serviceGroupInstanceNo", + "timeStart", + "timeEnd", + "metric", + "computeInstanceNo" +]
- Added
ncloud_cdss_get_node_product_for_change - Changed
ncloud_cdss_get_node_products4 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / softwareProductCodeAdded value: +{ + "description": "OS type code (from ncloud_cdss_get_os_products)", + "type": "string" +} - added
Input schema / properties / subnetNoAdded value: +{ + "description": "Subnet number (from ncloud_cdss_get_subnet_list)", + "type": "number" +} - added
Input schema / requiredAdded value: +[ + "softwareProductCode", + "subnetNo" +]
- Added
ncloud_cdss_get_node_spec_for_change_g3 - Changed
ncloud_cdss_get_os_monitoring9 fields changed- added
Input schema / properties / computeInstanceNoAdded value: +{ + "description": "Node instance number (from ncloud_cdss_list_nodes)", + "type": "string" +} - removed
Input schema / properties / endTimeRemoved value: -{ - "description": "End time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / intervalAdded value: +{ + "description": "Aggregation interval (e.g. Min1, Min30, Hour2, Day1). Default: Min1", + "type": "string" +} - added
Input schema / properties / metricAdded value: +{ + "description": "Metric set to retrieve. OS_ALL_METRICS is the only valid value", + "enum": [ + "OS_ALL_METRICS" + ], + "type": "string" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (path segment)" - removed
Input schema / properties / startTimeRemoved value: -{ - "description": "Start time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / timeEndAdded value: +{ + "description": "End time as epoch milliseconds", + "type": "number" +} - added
Input schema / properties / timeStartAdded value: +{ + "description": "Start time as epoch milliseconds (e.g. 1745280000000) — NOT an ISO 8601 string", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo" -]New value: +[ + "serviceGroupInstanceNo", + "timeStart", + "timeEnd", + "metric", + "computeInstanceNo" +]
- Changed
ncloud_cdss_get_server_spec_list3 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / softwareProductCodeAdded value: +{ + "description": "G3 OS image code (from ncloud_cdss_get_cluster_server_images)", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "softwareProductCode" +]
- Changed
ncloud_cdss_get_subnet_list3 fields changed- added
Input schema / properties / softwareProductCodeAdded value: +{ + "description": "OS type code (from ncloud_cdss_get_os_products)", + "type": "string" +} - changed
Input schema / properties / vpcNo / descriptionPrevious value: -"VPC number to filter subnets"New value: +"VPC number (from ncloud_cdss_get_vpc_list)" - added
Input schema / requiredAdded value: +[ + "softwareProductCode", + "vpcNo" +]
- Added
ncloud_cdss_get_subnet_list_g3 - Changed
ncloud_cdss_list_config_groups5 fields changed- changed
Input schema / properties / kafkaVersionCode / descriptionPrevious value: -"Filter by Kafka version code"New value: +"Kafka version code (from ncloud_cdss_get_kafka_versions)" - changed
Input schema / properties / kafkaVersionCode / typePrevious value: -"string"New value: +"number" - added
Input schema / properties / pageNoAdded value: +{ + "description": "Page number (default: 1)", + "type": "number" +} - added
Input schema / properties / pageSizeAdded value: +{ + "description": "Page size (default: 10)", + "type": "number" +} - added
Input schema / requiredAdded value: +[ + "kafkaVersionCode" +]
- Changed
ncloud_cdss_reset_cmak_password1 field changed- changed
Input schema / properties / kafkaManagerUserPassword / descriptionPrevious value: -"New CMAK password (8-20 chars, letters+numbers+special)"New value: +"New CMAK password (8-20 chars, letters+numbers+special; excludes ' \" ` ₩ / & and spaces)"
- Changed
ncloud_cdss_restart_kafka_per_node3 fields changed- removed
Input schema / properties / computeInstanceNoRemoved value: -{ - "description": "Node compute instance number to restart", - "type": "string" -} - added
Input schema / properties / computeInstanceNoListAdded value: +{ + "description": "Node server instance numbers to restart (from ncloud_cdss_list_nodes)", + "items": { + "type": [ + "number", + "string" + ] + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "computeInstanceNo" -]New value: +[ + "serviceGroupInstanceNo", + "computeInstanceNoList" +]
- Added
ncloud_cdss_set_config_group_description - Changed
ncloud_cdss_upgrade_precheck5 fields changed- removed
Input schema / properties / configGroupNoRemoved value: -{ - "description": "Config group number for the new version", - "type": "string" -} - removed
Input schema / properties / kafkaVersionCodeRemoved value: -{ - "description": "Target Kafka version code", - "type": "string" -} - added
Input schema / properties / upgradeConfigGroupNoAdded value: +{ + "description": "Config group number for the target version", + "type": "number" +} - added
Input schema / properties / upgradeKafkaVersionCodeAdded value: +{ + "description": "Target Kafka version code (from ncloud_cdss_get_kafka_versions)", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "kafkaVersionCode" -]New value: +[ + "serviceGroupInstanceNo", + "upgradeKafkaVersionCode", + "upgradeConfigGroupNo" +]
- Changed
ncloud_cdss_upgrade_version5 fields changed- removed
Input schema / properties / configGroupNoRemoved value: -{ - "description": "Config group number for the new version", - "type": "string" -} - removed
Input schema / properties / kafkaVersionCodeRemoved value: -{ - "description": "Target Kafka version code", - "type": "string" -} - added
Input schema / properties / upgradeConfigGroupNoAdded value: +{ + "description": "Config group number for the target version (from ncloud_cdss_list_config_groups)", + "type": "number" +} - added
Input schema / properties / upgradeKafkaVersionCodeAdded value: +{ + "description": "Target Kafka version code (from ncloud_cdss_get_kafka_versions)", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "kafkaVersionCode" -]New value: +[ + "serviceGroupInstanceNo", + "upgradeKafkaVersionCode", + "upgradeConfigGroupNo" +]
- Changed
ncloud_create_cache_config_group9 fields changed- removed
Input schema / properties / cloudCacheConfigGroupNameRemoved value: -{ - "description": "Config group name", - "type": "string" -} - added
Input schema / properties / cloudCacheDbmsCodeAdded value: +{ + "description": "DBMS type: Redis (default) | Valkey", + "enum": [ + "Redis", + "Valkey" + ], + "type": "string" +} - removed
Input schema / properties / cloudCacheImageProductCodeRemoved value: -{ - "description": "Cache image product code for the config group", - "type": "string" -} - added
Input schema / properties / cloudCacheVersionAdded value: +{ + "description": "Engine version + mode, e.g. '8.1.6-simple' | '7.2.11-cluster' (use ncloud_list_cache_config_group_versions)", + "type": "string" +} - added
Input schema / properties / configGroupDescriptionAdded value: +{ + "description": "Config group description (max 255 chars)", + "maxLength": 255, + "type": "string" +} - added
Input schema / properties / configGroupNameAdded value: +{ + "description": "Config group name (3-15 chars: lowercase letters, numbers, hyphen; must start with a letter and end with a letter or number)", + "maxLength": 15, + "type": "string" +} - removed
Input schema / properties / descriptionRemoved value: -{ - "description": "Config group description", - "type": "string" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheConfigGroupName", - "cloudCacheImageProductCode" -]New value: +[ + "configGroupName", + "cloudCacheVersion" +]
- Changed
ncloud_create_cache_instance30 fields changed- changed
Input schema / properties / backupFileRetentionPeriod / descriptionPrevious value: -"Backup retention period in days (1-30)"New value: +"Backup retention period in days (1-7, default: 1)" - added
Input schema / properties / backupFileRetentionPeriod / maximumAdded value: +7 - added
Input schema / properties / backupFileRetentionPeriod / minimumAdded value: +1 - changed
Input schema / properties / backupTime / descriptionPrevious value: -"Backup time (HH:mm format)"New value: +"Backup time in HH:mm format (e.g. '01:15'). Required when isBackup=true and isAutomaticBackup=false" - removed
Input schema / properties / cloudCacheConfigGroupNoRemoved value: -{ - "description": "Config group number to apply", - "type": "string" -} - added
Input schema / properties / cloudCacheDbmsCodeAdded value: +{ + "description": "DBMS type: Redis (default) | Valkey", + "enum": [ + "Redis", + "Valkey" + ], + "type": "string" +} - changed
Input schema / properties / cloudCacheImageProductCode / descriptionPrevious value: -"Cache image product code (Redis/Valkey version)"New value: +"Cache image product code. Default: auto-selected" - added
Input schema / properties / cloudCacheModeCodeAdded value: +{ + "description": "Cache mode: SIMPLE (standalone) | CLUSTER. Must match the config group version suffix (-simple / -cluster)", + "enum": [ + "SIMPLE", + "CLUSTER" + ], + "type": "string" +} - changed
Input schema / properties / cloudCachePort / descriptionPrevious value: -"Cache port number (default: 6379)"New value: +"Cache TCP port. Default: 6379; a custom port must be in 10000-20000" - changed
Input schema / properties / cloudCacheProductCode / descriptionPrevious value: -"Cache server product (spec) code"New value: +"Cache server spec code. Default: minimum spec" - changed
Input schema / properties / cloudCacheServerNamePrefix / descriptionPrevious value: -"Server name prefix"New value: +"Server name prefix (3-15 chars: lowercase letters, numbers, hyphen)" - added
Input schema / properties / cloudCacheServerNamePrefix / maxLengthAdded value: +15 - changed
Input schema / properties / cloudCacheServiceName / descriptionPrevious value: -"Cache service name (3-20 chars, lowercase letters and numbers)"New value: +"Cache service name (3-15 chars: letters, numbers, Korean, hyphen)" - added
Input schema / properties / cloudCacheServiceName / maxLengthAdded value: +15 - added
Input schema / properties / configGroupNoAdded value: +{ + "description": "Config group number (from ncloud_list_cache_config_groups or ncloud_create_cache_config_group)", + "type": "string" +} - added
Input schema / properties / engineVersionCodeAdded value: +{ + "description": "Cache engine version code. Default: latest", + "type": "string" +} - added
Input schema / properties / generationCodeAdded value: +{ + "description": "Server generation: G2 | G3", + "enum": [ + "G2", + "G3" + ], + "type": "string" +} - added
Input schema / properties / isAutomaticBackupAdded value: +{ + "description": "Let the server pick the backup time (default: true). If false, backupTime is required", + "type": "boolean" +} - removed
Input schema / properties / isAutomaticFailoverRemoved value: -{ - "description": "Whether to enable automatic failover", - "type": "boolean" -} - changed
Input schema / properties / isBackup / descriptionPrevious value: -"Whether to enable automatic backup"New value: +"Enable backup (default: false)" - added
Input schema / properties / isHaAdded value: +{ + "description": "High availability (default: false)", + "type": "boolean" +} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / properties / shardCopyCount / descriptionPrevious value: -"Number of replicas per shard"New value: +"Replica count per shard, CLUSTER mode only (0-4, default: 0)" - added
Input schema / properties / shardCopyCount / maximumAdded value: +4 - added
Input schema / properties / shardCopyCount / minimumAdded value: +0 - changed
Input schema / properties / shardCount / descriptionPrevious value: -"Number of shards (for cluster mode)"New value: +"Master node count, CLUSTER mode only (3-10, default: 3)" - added
Input schema / properties / shardCount / maximumAdded value: +10 - added
Input schema / properties / shardCount / minimumAdded value: +3 - changed
Input schema / properties / subnetNo / descriptionPrevious value: -"Subnet number"New value: +"Private subnet number to create the instance in" - changed
Input schema / requiredPrevious value: -[ - "cloudCacheServiceName", - "vpcNo", - "subnetNo" -]New value: +[ + "cloudCacheServiceName", + "cloudCacheServerNamePrefix", + "vpcNo", + "subnetNo", + "configGroupNo", + "cloudCacheModeCode" +]
- Changed
ncloud_create_cache_manual_backup3 fields changed- removed
Input schema / properties / cloudCacheManualBackupNameRemoved value: -{ - "description": "Manual backup name", - "type": "string" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheInstanceNo", - "cloudCacheManualBackupName" -]New value: +[ + "cloudCacheInstanceNo" +]
- Removed
ncloud_delete_bucket_cors - Removed
ncloud_delete_bucket_encryption - Removed
ncloud_delete_bucket_lifecycle - Changed
ncloud_delete_cache_config_group4 fields changed- removed
Input schema / properties / cloudCacheConfigGroupNoRemoved value: -{ - "description": "Cloud Cache config group number to delete", - "type": "string" -} - added
Input schema / properties / configGroupNoAdded value: +{ + "description": "Config group number to delete (from ncloud_list_cache_config_groups)", + "type": "string" +} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheConfigGroupNo" -]New value: +[ + "configGroupNo" +]
- Changed
ncloud_delete_cache_manual_backup5 fields changed- added
Input schema / properties / cloudCacheInstanceNoAdded value: +{ + "description": "Cloud Cache instance number the backups belong to", + "type": "string" +} - removed
Input schema / properties / cloudCacheManualBackupNoRemoved value: -{ - "description": "Cloud Cache manual backup number to delete", - "type": "string" -} - added
Input schema / properties / fileNameListAdded value: +{ + "description": "Backup file names to delete (e.g. ['20220315', '20220322']) — from ncloud_list_cache_manual_backup_details", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheManualBackupNo" -]New value: +[ + "cloudCacheInstanceNo", + "fileNameList" +]
- Changed
ncloud_export_cache_backup8 fields changed- added
Input schema / properties / backupTypeModeAdded value: +{ + "description": "Which backup family the file belongs to: SYSTEM | MANUAL", + "enum": [ + "SYSTEM", + "MANUAL" + ], + "type": "string" +} - changed
Input schema / properties / bucketName / descriptionPrevious value: -"Object Storage bucket name"New value: +"Destination Object Storage bucket name" - removed
Input schema / properties / cloudCacheExportObjectListRemoved value: -{ - "description": "List of full object names to export", - "items": { - "type": "string" - }, - "type": "array" -} - removed
Input schema / properties / cloudCacheServerInstanceNoRemoved value: -{ - "description": "Cloud Cache server instance number", - "type": "string" -} - added
Input schema / properties / fileNameAdded value: +{ + "description": "Backup file name to export (e.g. '20210315')", + "type": "string" +} - removed
Input schema / properties / folderPathRemoved value: -{ - "description": "Folder path in the bucket", - "type": "string" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheInstanceNo", - "cloudCacheServerInstanceNo", - "bucketName", - "cloudCacheExportObjectList" -]New value: +[ + "cloudCacheInstanceNo", + "fileName", + "backupTypeMode", + "bucketName" +]
- Changed
ncloud_functions_create_action34 fields changed- changed
Input schema / properties / actionName / descriptionPrevious value: -"Name of the action to create or update"New value: +"Action name: 1-50 chars of letters, digits, '-' and '_'; must not start with '-'; unique across packages/actions/triggers" - added
Input schema / properties / actionName / maxLengthAdded value: +50 - added
Input schema / properties / actionName / minLengthAdded value: +1 - added
Input schema / properties / allowDeprecatedRuntimeAdded value: +{ + "default": false, + "description": "Send a deprecated exec_kind anyway (the API is documented to refuse new actions on them)", + "type": "boolean" +} - changed
Input schema / properties / custom_options / descriptionPrevious value: -"Enable custom options"New value: +"web types only: let the action set HTTP response headers (sent as 'custom-options')" - changed
Input schema / properties / description / descriptionPrevious value: -"Description of the action"New value: +"Description (0-3000 bytes)" - added
Input schema / properties / description / maxLengthAdded value: +3000 - added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "description": "Preview the request without calling the API", + "type": "boolean" +} - added
Input schema / properties / exec_binary / defaultAdded value: +false - changed
Input schema / properties / exec_binary / descriptionPrevious value: -"Whether code is base64 encoded"New value: +"true if exec_code is a base64-encoded file (required for java/dotnet: .jar / .zip)" - changed
Input schema / properties / exec_code / descriptionPrevious value: -"Source code string (required for basic actions)"New value: +"Source code (exec_binary=false) or base64-encoded file (exec_binary=true). Required for basic/web unless exec_kind is 'custom image'." - changed
Input schema / properties / exec_components / descriptionPrevious value: -"Array of '{packageName}/{actionName}' for sequence actions"New value: +"sequence/sequence-web only: actions to run in order, each '{packageName}/{actionName}'" - added
Input schema / properties / exec_imageUriAdded value: +{ + "description": "Custom Image runtime only: '{registryName}/{imageName}:{tag}' (tag defaults to latest)", + "type": "string" +} - changed
Input schema / properties / exec_kind / descriptionPrevious value: -"Runtime string (e.g. 'nodejs:16', 'python:3.9', 'java:11', 'dotnet:6.0', or 'sequence')"New value: +"Runtime, e.g. 'python:3.13', 'nodejs:22', 'java:21', 'custom image'. Ignored for sequence types (forced to 'sequence'). Supported: nodejs:22, python:3.13, java, java:21, swift:3.1.1, php:7.3, go:1.19, dotnet:2.2, custom image" - changed
Input schema / properties / exec_main / descriptionPrevious value: -"Entry function name (required for basic actions)"New value: +"Entry function name, e.g. 'main'. Required for basic/web." - added
Input schema / properties / limits_memory / defaultAdded value: +128 - changed
Input schema / properties / limits_memory / descriptionPrevious value: -"Memory in MB (128, 256, 512, or 1024)"New value: +"Memory in MB: 128 | 256 | 512 | 1024 (default 128). basic/web only." - added
Input schema / properties / limits_memory / enumAdded value: +[ + 128, + 256, + 512, + 1024 +] - added
Input schema / properties / limits_timeout / defaultAdded value: +60000 - changed
Input schema / properties / limits_timeout / descriptionPrevious value: -"Timeout in milliseconds (500~300000)"New value: +"Max execution time in ms, 500-300000 (default 60000). basic/web only." - added
Input schema / properties / limits_timeout / maximumAdded value: +300000 - added
Input schema / properties / limits_timeout / minimumAdded value: +500 - changed
Input schema / properties / limits_timeout / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name (use '-' for unpackaged actions)"New value: +"Package name ('-' = unpackaged action)" - changed
Input schema / properties / parameters / descriptionPrevious value: -"Default parameters as a JSON object"New value: +"Default parameters as a {key: value} JSON object (basic/web only). Precedence: runtime params > trigger params > action params > package params." - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / properties / raw_http / descriptionPrevious value: -"Enable raw HTTP handling"New value: +"web types only: pass the raw HTTP request to the action (sent as 'raw-http')" - changed
Input schema / properties / subnet_no / descriptionPrevious value: -"Subnet number"New value: +"Subnet number to attach (REQUIRED for basic/web on platform=vpc; see ncloud_list_subnets)" - changed
Input schema / properties / subnet_no / typePrevious value: -"number"New value: +"integer" - added
Input schema / properties / typeAdded value: +{ + "default": "basic", + "description": "Action type (query parameter). Cannot be changed once created.", + "enum": [ + "basic", + "web", + "sequence", + "sequence-web" + ], + "type": "string" +} - changed
Input schema / properties / vpc_no / descriptionPrevious value: -"VPC number"New value: +"VPC number to attach (REQUIRED for basic/web on platform=vpc; see ncloud_list_vpcs)" - changed
Input schema / properties / vpc_no / typePrevious value: -"number"New value: +"integer" - removed
Input schema / properties / webRemoved value: -{ - "description": "Enable web action", - "type": "boolean" -} - changed
Input schema / requiredPrevious value: -[ - "actionName", - "exec_kind" -]New value: +[ + "actionName" +]
- Changed
ncloud_functions_create_package7 fields changed- changed
Input schema / properties / description / descriptionPrevious value: -"Description of the package"New value: +"Description (0-3000 bytes)" - added
Input schema / properties / description / maxLengthAdded value: +3000 - added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "description": "Preview the request without calling the API", + "type": "boolean" +} - added
Input schema / properties / packageName / maxLengthAdded value: +50 - added
Input schema / properties / packageName / minLengthAdded value: +1 - changed
Input schema / properties / parameters / descriptionPrevious value: -"Default parameters for the package as a JSON object"New value: +"Default parameters as a {key: value} JSON object. Lowest precedence: runtime params > trigger params > action params > package params." - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_create_trigger22 fields changed- added
Input schema / properties / credentialAdded value: +{ + "additionalProperties": false, + "description": "github only: GitHub credentials", + "properties": { + "accessToken": { + "description": "GitHub access token", + "type": "string" + }, + "repository": { + "description": "Repository name or 'Organization/repository'", + "type": "string" + }, + "username": { + "description": "GitHub user name", + "type": "string" + } + }, + "required": [ + "username", + "accessToken", + "repository" + ], + "type": "object" +} - added
Input schema / properties / cronOptionAdded value: +{ + "description": "cron only. 5-field UNIX cron 'min hour dom mon dow', e.g. '0 8 * * *'. Evaluated in KST (UTC+9) — live-verified 2026-09-15 on KR; the time zone is not documented by Ncloud.", + "type": "string" +} - added
Input schema / properties / descriptionAdded value: +{ + "description": "Description (0-3000 bytes)", + "maxLength": 3000, + "type": "string" +} - added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "description": "Preview the request without calling the API", + "type": "boolean" +} - added
Input schema / properties / eventsAdded value: +{ + "description": "github only: events to trigger on, e.g. ['push'] or ['*']", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / insightLinkAdded value: +{ + "description": "insight only: Cloud Insight event rules to link", + "items": { + "additionalProperties": false, + "properties": { + "enableNotiWhenEventClose": { + "description": "Also invoke when the event closes (default false)", + "type": "boolean" + }, + "prodKey": { + "description": "Cloud Insight event rule prodKey", + "type": "string" + }, + "reminderTime": { + "description": "Reminder interval in minutes (5-720)", + "maximum": 720, + "minimum": 5, + "type": "integer" + }, + "ruleGrpId": { + "description": "Cloud Insight event rule ruleGrpId", + "type": "string" + } + }, + "required": [ + "prodKey", + "ruleGrpId" + ], + "type": "object" + }, + "type": "array" +} - changed
Input schema / properties / link / additionalPropertiesPrevious value: -{}New value: +false - changed
Input schema / properties / link / descriptionPrevious value: -"Link configuration for GitHub type: { productId, apiName, stageName }"New value: +"github only: API Gateway endpoint to create the webhook on (required when creating; ignored on update)" - added
Input schema / properties / link / propertiesAdded value: +{ + "apiName": { + "description": "API Gateway API name", + "type": "string" + }, + "productName": { + "description": "API Gateway product name", + "type": "string" + }, + "stageName": { + "description": "API Gateway stage name", + "type": "string" + } +} - added
Input schema / properties / link / requiredAdded value: +[ + "productName", + "apiName", + "stageName" +] - added
Input schema / properties / objectStorageLinkAdded value: +{ + "description": "object_storage only: bucket event rules to link", + "items": { + "additionalProperties": false, + "properties": { + "bucketName": { + "description": "Object Storage bucket name", + "type": "string" + }, + "eventRuleName": { + "description": "Object Storage event rule name", + "type": "string" + } + }, + "required": [ + "bucketName", + "eventRuleName" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / parametersAdded value: +{ + "additionalProperties": {}, + "description": "Default parameters as a {key: value} JSON object, merged into every invocation (precedence: runtime > trigger > action > package)", + "type": "object" +} - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - added
Input schema / properties / secretManagerLinkAdded value: +{ + "description": "secret_manager only: secrets to link", + "items": { + "additionalProperties": false, + "properties": { + "secretName": { + "description": "Secret Manager secret name", + "type": "string" + } + }, + "required": [ + "secretName" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / sourceCommitLinkAdded value: +{ + "description": "source_commit only: repository webhooks to link", + "items": { + "additionalProperties": false, + "properties": { + "enable": { + "description": "Webhook enabled (default true)", + "type": "boolean" + }, + "repositoryName": { + "description": "SourceCommit repository name", + "type": "string" + }, + "webhookName": { + "description": "SourceCommit webhook name", + "type": "string" + } + }, + "required": [ + "repositoryName", + "webhookName" + ], + "type": "object" + }, + "type": "array" +} - removed
Input schema / properties / triggerRemoved value: -{ - "additionalProperties": {}, - "description": "Trigger configuration object (structure varies by type)", - "type": "object" -} - changed
Input schema / properties / triggerName / descriptionPrevious value: -"Name of the trigger to create or update"New value: +"Trigger name: 1-50 chars of letters, digits, '-' and '_'; must not start with '-'; unique across packages/actions/triggers" - added
Input schema / properties / triggerName / maxLengthAdded value: +50 - added
Input schema / properties / triggerName / minLengthAdded value: +1 - changed
Input schema / properties / type / descriptionPrevious value: -"Trigger type"New value: +"Trigger type (query parameter; immutable after creation)" - changed
Input schema / properties / type / enumPrevious value: -[ - "cron", - "github", - "insight", - "object_storage", - "source_commit" -]New value: +[ + "cron", + "github", + "insight", + "object_storage", + "source_commit", + "secret_manager" +] - changed
Input schema / requiredPrevious value: -[ - "triggerName", - "type", - "trigger" -]New value: +[ + "triggerName", + "type" +]
- Changed
ncloud_functions_delete_action4 fields changed- added
Input schema / properties / packageName / defaultAdded value: +"-" - changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name containing the action"New value: +"Package name ('-' = unpackaged action)" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / requiredPrevious value: -[ - "packageName", - "actionName" -]New value: +[ + "actionName" +]
- Changed
ncloud_functions_delete_package1 field changed- changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_delete_trigger1 field changed- changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_get_action5 fields changed- added
Input schema / properties / includeSecretsAdded value: +{ + "default": false, + "description": "Return source code unredacted (default false). Even when true, the response still reports how many secret-like values were detected.", + "type": "boolean" +} - added
Input schema / properties / packageName / defaultAdded value: +"-" - changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name containing the action"New value: +"Package name ('-' = unpackaged action)" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / requiredPrevious value: -[ - "packageName", - "actionName" -]New value: +[ + "actionName" +]
- Changed
ncloud_functions_get_action_activation_detail5 fields changed- changed
Input schema / properties / activationId / descriptionPrevious value: -"Activation ID to retrieve details for"New value: +"Activation ID" - added
Input schema / properties / packageName / defaultAdded value: +"-" - changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name containing the action"New value: +"Package name ('-' = unpackaged action)" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / requiredPrevious value: -[ - "packageName", - "actionName", - "activationId" -]New value: +[ + "actionName", + "activationId" +]
- Changed
ncloud_functions_get_action_activations14 fields changed- changed
Input schema / properties / end / descriptionPrevious value: -"End time filter (format: yyyy-MM-ddTHH:mm:ss)"New value: +"End of the window as a Unix timestamp in MILLISECONDS (default: now)" - changed
Input schema / properties / end / typePrevious value: -"string"New value: +"integer" - added
Input schema / properties / packageName / defaultAdded value: +"-" - changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name containing the action"New value: +"Package name ('-' = unpackaged action)" - changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (default 1)" - added
Input schema / properties / pageNo / minimumAdded value: +1 - changed
Input schema / properties / pageNo / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (default 20)" - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / properties / start / descriptionPrevious value: -"Start time filter (format: yyyy-MM-ddTHH:mm:ss)"New value: +"Start of the window as a Unix timestamp in MILLISECONDS (default: one month before now). Only the last month is queryable." - changed
Input schema / properties / start / typePrevious value: -"string"New value: +"integer" - changed
Input schema / requiredPrevious value: -[ - "packageName", - "actionName" -]New value: +[ + "actionName" +]
- Changed
ncloud_functions_get_activations11 fields changed- changed
Input schema / properties / end / descriptionPrevious value: -"End time filter (format: yyyy-MM-ddTHH:mm:ss)"New value: +"End of the window as a Unix timestamp in MILLISECONDS (default: now)" - changed
Input schema / properties / end / typePrevious value: -"string"New value: +"integer" - changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (default 1)" - added
Input schema / properties / pageNo / minimumAdded value: +1 - changed
Input schema / properties / pageNo / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (default 20)" - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / properties / start / descriptionPrevious value: -"Start time filter (format: yyyy-MM-ddTHH:mm:ss)"New value: +"Start of the window as a Unix timestamp in MILLISECONDS (default: one month before now). Only the last month is queryable." - changed
Input schema / properties / start / typePrevious value: -"string"New value: +"integer"
- Changed
ncloud_functions_get_package1 field changed- changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_get_trigger1 field changed- changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_get_trigger_activation_detail2 fields changed- changed
Input schema / properties / activationId / descriptionPrevious value: -"Activation ID to retrieve details for"New value: +"Activation ID" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_get_trigger_activations11 fields changed- changed
Input schema / properties / end / descriptionPrevious value: -"End time filter (format: yyyy-MM-ddTHH:mm:ss)"New value: +"End of the window as a Unix timestamp in MILLISECONDS (default: now)" - changed
Input schema / properties / end / typePrevious value: -"string"New value: +"integer" - changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (default 1)" - added
Input schema / properties / pageNo / minimumAdded value: +1 - changed
Input schema / properties / pageNo / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (default 20)" - added
Input schema / properties / pageSize / minimumAdded value: +1 - changed
Input schema / properties / pageSize / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / properties / start / descriptionPrevious value: -"Start time filter (format: yyyy-MM-ddTHH:mm:ss)"New value: +"Start of the window as a Unix timestamp in MILLISECONDS (default: one month before now). Only the last month is queryable." - changed
Input schema / properties / start / typePrevious value: -"string"New value: +"integer"
- Changed
ncloud_functions_invoke_action7 fields changed- added
Input schema / properties / packageName / defaultAdded value: +"-" - changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name containing the action"New value: +"Package name ('-' = unpackaged action)" - changed
Input schema / properties / params / descriptionPrevious value: -"Runtime parameters to pass to the action"New value: +"Runtime parameters passed to the action (highest precedence)" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only." - changed
Input schema / properties / timeout / descriptionPrevious value: -"Invocation timeout in milliseconds (0~60000, default: 60000)"New value: +"Max time to wait for the response in ms (0-60000, default 60000)" - changed
Input schema / properties / timeout / typePrevious value: -"number"New value: +"integer" - changed
Input schema / requiredPrevious value: -[ - "packageName", - "actionName" -]New value: +[ + "actionName" +]
- Changed
ncloud_functions_invoke_trigger2 fields changed- changed
Input schema / properties / params / descriptionPrevious value: -"Runtime parameters to pass to the trigger"New value: +"Runtime parameters passed to the linked actions" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_link_trigger_action3 fields changed- changed
Input schema / properties / actionName / descriptionPrevious value: -"Action name in \"{packageName}/{actionName}\" format"New value: +"Action name. '{packageName}/{actionName}' is also accepted and split automatically." - added
Input schema / properties / packageNameAdded value: +{ + "description": "Package of the action (default '-' = unpackaged)", + "type": "string" +} - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_list_actions2 fields changed- changed
Input schema / properties / packageName / descriptionPrevious value: -"Package name (use '-' for unpackaged actions)"New value: +"Package name ('-' = unpackaged actions)" - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_list_packages1 field changed- changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_list_triggers1 field changed- changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Changed
ncloud_functions_unlink_trigger_action3 fields changed- changed
Input schema / properties / actionName / descriptionPrevious value: -"Action name in \"{packageName}/{actionName}\" format"New value: +"Action name. '{packageName}/{actionName}' is also accepted and split automatically." - added
Input schema / properties / packageNameAdded value: +{ + "description": "Package of the action (default '-' = unpackaged)", + "type": "string" +} - changed
Input schema / properties / platform / descriptionPrevious value: -"Platform type (default: vpc)"New value: +"Platform (default: vpc). Singapore/Japan regions support vpc only."
- Removed
ncloud_get_bucket_cors - Removed
ncloud_get_bucket_encryption - Removed
ncloud_get_bucket_lifecycle - Changed
ncloud_get_cache_image_products3 fields changed- added
Input schema / properties / exclusionProductCodeAdded value: +{ + "description": "Exclude a specific image product code", + "type": "string" +} - added
Input schema / properties / generationCodeAdded value: +{ + "description": "Filter by server generation: G2 | G3", + "enum": [ + "G2", + "G3" + ], + "type": "string" +} - added
Input schema / properties / productCodeAdded value: +{ + "description": "Filter by a specific image product code", + "type": "string" +}
- Changed
ncloud_get_cache_products4 fields changed- added
Input schema / properties / exclusionProductCodeAdded value: +{ + "description": "Exclude a specific server spec product code", + "type": "string" +} - added
Input schema / properties / productCodeAdded value: +{ + "description": "Filter by a specific server spec product code", + "type": "string" +} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - added
Input schema / properties / zoneCodeAdded value: +{ + "description": "Filter by zone code (e.g. KR-1, KR-2)", + "type": "string" +}
- Changed
ncloud_get_cache_target_subnets5 fields changed- added
Input schema / properties / cloudCacheImageProductCodeAdded value: +{ + "description": "Cache image product code (from ncloud_get_cache_image_products)", + "type": "string" +} - removed
Input schema / properties / cloudCacheInstanceNoRemoved value: -{ - "description": "Cloud Cache instance number", - "type": "string" -} - added
Input schema / properties / isPublicAdded value: +{ + "description": "true: public subnets only, false: private subnets only", + "type": "boolean" +} - added
Input schema / properties / vpcNoAdded value: +{ + "description": "VPC number (from ncloud_get_cache_target_vpcs)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheInstanceNo" -]New value: +[ + "vpcNo", + "cloudCacheImageProductCode" +]
- Changed
ncloud_get_server_detail1 field changed- added
Input schema / properties / includeRelatedAdded value: +{ + "default": true, + "description": "Also fetch attached block storages and tags (two extra read calls). false = bare getServerInstanceDetail payload.", + "type": "boolean" +}
- Changed
ncloud_hadoop_list_target_subnets5 fields changed- added
Input schema / properties / cloudHadoopImageProductCodeAdded value: +{ + "description": "Cluster image product code (from ncloud_hadoop_list_image_products)", + "type": "string" +} - added
Input schema / properties / isPublicAdded value: +{ + "description": "true: public subnets only, false: private subnets only", + "type": "boolean" +} - changed
Input schema / properties / vpcNo / descriptionPrevious value: -"VPC number filter"New value: +"VPC number (from ncloud_hadoop_list_target_vpcs)" - removed
Input schema / properties / zoneCodeRemoved value: -{ - "description": "Zone code filter", - "type": "string" -} - added
Input schema / requiredAdded value: +[ + "vpcNo", + "cloudHadoopImageProductCode" +]
- Changed
ncloud_list_cache_backup_details3 fields changed- removed
Input schema / properties / cloudCacheServerInstanceNoRemoved value: -{ - "description": "Cloud Cache server instance number", - "type": "string" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheInstanceNo", - "cloudCacheServerInstanceNo" -]New value: +[ + "cloudCacheInstanceNo" +]
- Changed
ncloud_list_cache_backups3 fields changed- removed
Input schema / properties / cloudCacheInstanceNoRemoved value: -{ - "description": "Cloud Cache instance number", - "type": "string" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - removed
Input schema / requiredRemoved value: -[ - "cloudCacheInstanceNo" -]
- Changed
ncloud_list_cache_buckets2 fields changed- added
Input schema / properties / cloudCacheInstanceNoAdded value: +{ + "description": "Cloud Cache instance number the export will run from", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "cloudCacheInstanceNo" +]
- Changed
ncloud_list_cache_config_group_versions1 field changed- added
Input schema / properties / cloudCacheDbmsCodeAdded value: +{ + "description": "Filter by DBMS type: Redis | Valkey", + "enum": [ + "Redis", + "Valkey" + ], + "type": "string" +}
- Changed
ncloud_list_cache_config_groups10 fields changed- added
Input schema / properties / cloudCacheDbmsCodeAdded value: +{ + "description": "Filter by DBMS type: Redis | Valkey", + "enum": [ + "Redis", + "Valkey" + ], + "type": "string" +} - added
Input schema / properties / cloudCacheImageProductCodeAdded value: +{ + "description": "Filter by Cache image product code", + "type": "string" +} - added
Input schema / properties / cloudCacheInstanceNoAdded value: +{ + "description": "Filter by the Cache instance the group is applied to", + "type": "string" +} - added
Input schema / properties / cloudCacheModeCodeAdded value: +{ + "description": "Filter by mode: SIMPLE | CLUSTER", + "enum": [ + "SIMPLE", + "CLUSTER" + ], + "type": "string" +} - added
Input schema / properties / cloudCacheServiceNameAdded value: +{ + "description": "Filter by Cache service name", + "type": "string" +} - added
Input schema / properties / configGroupNameAdded value: +{ + "description": "Filter by config group name", + "type": "string" +} - added
Input schema / properties / configGroupNoAdded value: +{ + "description": "Filter by config group number", + "type": "string" +} - removed
Input schema / properties / pageNoRemoved value: -{ - "description": "Page number for pagination", - "type": "number" -} - removed
Input schema / properties / pageSizeRemoved value: -{ - "description": "Page size for pagination", - "type": "number" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +}
- Changed
ncloud_list_cache_instances12 fields changed- added
Input schema / properties / cloudCacheDbmsCodeAdded value: +{ + "description": "Filter by DBMS type: Redis | Valkey", + "enum": [ + "Redis", + "Valkey" + ], + "type": "string" +} - added
Input schema / properties / cloudCacheServerInstanceNoListAdded value: +{ + "description": "Filter by Cache server instance numbers", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / cloudCacheServerNameAdded value: +{ + "description": "Filter by Cache server name", + "type": "string" +} - added
Input schema / properties / generationCodeAdded value: +{ + "description": "Filter by server generation: G2 | G3", + "enum": [ + "G2", + "G3" + ], + "type": "string" +} - changed
Input schema / properties / pageNo / descriptionPrevious value: -"Page number for pagination"New value: +"Page number (0-based). Requires pageSize" - added
Input schema / properties / pageNo / minimumAdded value: +0 - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Page size for pagination"New value: +"Page size (min 1). Required when pageNo is given" - added
Input schema / properties / pageSize / minimumAdded value: +1 - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - added
Input schema / properties / subnetNoAdded value: +{ + "description": "Filter by subnet number", + "type": "string" +} - added
Input schema / properties / vpcNoAdded value: +{ + "description": "Filter by VPC number", + "type": "string" +} - added
Input schema / properties / zoneCodeAdded value: +{ + "description": "Filter by zone code (e.g. KR-1, KR-2)", + "type": "string" +}
- Changed
ncloud_list_cache_manual_backup_details4 fields changed- added
Input schema / properties / cloudCacheInstanceNoAdded value: +{ + "description": "Cloud Cache instance number", + "type": "string" +} - removed
Input schema / properties / cloudCacheManualBackupNoRemoved value: -{ - "description": "Cloud Cache manual backup number", - "type": "string" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "cloudCacheManualBackupNo" -]New value: +[ + "cloudCacheInstanceNo" +]
- Changed
ncloud_list_cache_manual_backups4 fields changed- removed
Input schema / properties / cloudCacheInstanceNoRemoved value: -{ - "description": "Filter by Cloud Cache instance number", - "type": "string" -} - removed
Input schema / properties / pageNoRemoved value: -{ - "description": "Page number for pagination", - "type": "number" -} - removed
Input schema / properties / pageSizeRemoved value: -{ - "description": "Page size for pagination", - "type": "number" -} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g., KR, JPN, SGN)", + "type": "string" +}
- Added
ncloud_ncs_abort_multipart_upload - Added
ncloud_ncs_complete_multipart_upload - Changed
ncloud_ncs_copy_object9 fields changed- added
Input schema / properties / contentTypeAdded value: +{ + "description": "Content-Type for the copy (applied with metadataDirective=REPLACE)", + "type": "string" +} - changed
Input schema / properties / copySource / descriptionPrevious value: -"Source object path in format: /{sourceBucket}/{sourceKey}"New value: +"Source object as {sourceBucket}/{sourceKey} (a leading slash is tolerated)" - added
Input schema / properties / copySourceVersionIdAdded value: +{ + "description": "Version ID of the source object to copy (versioning-enabled buckets)", + "type": "string" +} - added
Input schema / properties / metadataDirectiveAdded value: +{ + "description": "COPY (default) keeps the source metadata; REPLACE uses the headers given in this request (contentType)", + "enum": [ + "COPY", + "REPLACE" + ], + "type": "string" +} - added
Input schema / properties / objectLockLegalHoldAdded value: +{ + "description": "x-amz-object-lock-legal-hold for the copy — ON | OFF", + "enum": [ + "ON", + "OFF" + ], + "type": "string" +} - added
Input schema / properties / objectLockModeAdded value: +{ + "description": "x-amz-object-lock-mode for the copy", + "enum": [ + "GOVERNANCE", + "COMPLIANCE" + ], + "type": "string" +} - added
Input schema / properties / objectLockRetainUntilDateAdded value: +{ + "description": "x-amz-object-lock-retain-until-date for the copy, ISO 8601", + "type": "string" +} - added
Input schema / properties / serverSideEncryptionAdded value: +{ + "description": "x-amz-server-side-encryption for the copy — AES256 | aws:kms", + "enum": [ + "AES256", + "aws:kms" + ], + "type": "string" +} - changed
Input schema / properties / storageClass / descriptionPrevious value: -"Storage class for the copy — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Sent as the x-amz-storage-class header; omit to use STANDARD. Copying an object onto itself with a different class is the way to change an existing object's storage class"New value: +"x-amz-storage-class for the copy — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Omit to use STANDARD"
- Changed
ncloud_ncs_create_bucket2 fields changed- added
Input schema / properties / bucketName / patternAdded value: +"^[a-z0-9][a-z0-9-]{1,61}[a-z0-9]$" - added
Input schema / properties / objectLockEnabledAdded value: +{ + "default": false, + "description": "Send x-amz-bucket-object-lock-enabled: true — enables Object Lock (WORM) and versioning on the new bucket. Cannot be enabled later on an existing bucket through this header", + "type": "boolean" +}
- Added
ncloud_ncs_create_multipart_upload - Added
ncloud_ncs_delete_bucket_cors - Added
ncloud_ncs_delete_bucket_encryption - Added
ncloud_ncs_delete_bucket_lifecycle - Changed
ncloud_ncs_delete_object3 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Name of the bucket"New value: +"Name of the Ncloud Storage bucket" - added
Input schema / properties / bypassGovernanceRetentionAdded value: +{ + "default": false, + "description": "Send x-amz-bypass-governance-retention: true to delete an object locked in GOVERNANCE mode (requires the bypass permission)", + "type": "boolean" +} - added
Input schema / properties / versionIdAdded value: +{ + "description": "Version ID to delete permanently. Omit to delete the current version (adds a delete marker on versioned buckets)", + "type": "string" +}
- Changed
ncloud_ncs_delete_objects6 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Name of the bucket"New value: +"Name of the Ncloud Storage bucket" - added
Input schema / properties / bypassGovernanceRetentionAdded value: +{ + "default": false, + "description": "Send x-amz-bypass-governance-retention: true for objects under GOVERNANCE retention", + "type": "boolean" +} - changed
Input schema / properties / keys / descriptionPrevious value: -"Array of object keys to delete"New value: +"Object keys to delete (current versions). Use `objects` instead to target versions" - added
Input schema / properties / objectsAdded value: +{ + "description": "Objects to delete, each optionally with a versionId", + "items": { + "additionalProperties": false, + "properties": { + "key": { + "description": "Object key", + "type": "string" + }, + "versionId": { + "description": "Version ID to delete permanently", + "type": "string" + } + }, + "required": [ + "key" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / quietAdded value: +{ + "default": false, + "description": "Quiet mode — the response lists only failures", + "type": "boolean" +} - changed
Input schema / requiredPrevious value: -[ - "bucketName", - "keys" -]New value: +[ + "bucketName" +]
- Added
ncloud_ncs_get_bucket_cors - Added
ncloud_ncs_get_bucket_encryption - Added
ncloud_ncs_get_bucket_lifecycle - Added
ncloud_ncs_get_bucket_location - Added
ncloud_ncs_get_bucket_versioning - Changed
ncloud_ncs_get_object3 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Name of the bucket"New value: +"Name of the Ncloud Storage bucket" - added
Input schema / properties / rangeAdded value: +{ + "description": "Byte range to fetch, e.g. 'bytes=0-1023'", + "type": "string" +} - added
Input schema / properties / versionIdAdded value: +{ + "description": "Version ID of the object (versioning-enabled buckets). Omit for the current version", + "type": "string" +}
- Added
ncloud_ncs_get_object_attributes - Added
ncloud_ncs_get_object_legal_hold - Added
ncloud_ncs_get_object_lock_configuration - Added
ncloud_ncs_get_object_retention - Changed
ncloud_ncs_head_object2 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Name of the bucket"New value: +"Name of the Ncloud Storage bucket" - added
Input schema / properties / versionIdAdded value: +{ + "description": "Version ID of the object (versioning-enabled buckets). Omit for the current version", + "type": "string" +}
- Changed
ncloud_ncs_list_buckets4 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / continuationTokenAdded value: +{ + "description": "Pagination: continuationToken from the previous response", + "type": "string" +} - added
Input schema / properties / maxBucketsAdded value: +{ + "description": "Buckets per page (1–10,000)", + "maximum": 10000, + "minimum": 1, + "type": "integer" +} - added
Input schema / properties / prefixAdded value: +{ + "description": "Only buckets whose name starts with this prefix", + "type": "string" +}
- Added
ncloud_ncs_list_multipart_uploads - Added
ncloud_ncs_list_object_versions - Changed
ncloud_ncs_list_objects7 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Name of the bucket"New value: +"Name of the Ncloud Storage bucket" - changed
Input schema / properties / continuationToken / descriptionPrevious value: -"Token for pagination (from previous response's nextContinuationToken)"New value: +"Pagination: nextContinuationToken of the previous response" - changed
Input schema / properties / maxKeys / descriptionPrevious value: -"Maximum number of keys to return (default 1000)"New value: +"Maximum number of keys to return (1–1,000, default 1,000)" - added
Input schema / properties / maxKeys / maximumAdded value: +1000 - added
Input schema / properties / maxKeys / minimumAdded value: +1 - changed
Input schema / properties / maxKeys / typePrevious value: -"number"New value: +"integer" - added
Input schema / properties / startAfterAdded value: +{ + "description": "Start listing after this key", + "type": "string" +}
- Added
ncloud_ncs_list_parts - Added
ncloud_ncs_put_bucket_cors - Added
ncloud_ncs_put_bucket_encryption - Added
ncloud_ncs_put_bucket_lifecycle - Added
ncloud_ncs_put_bucket_versioning - Changed
ncloud_ncs_put_object8 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Name of the bucket"New value: +"Name of the Ncloud Storage bucket" - changed
Input schema / properties / contentType / descriptionPrevious value: -"Content-Type header for the object (e.g., 'text/plain', 'application/json')"New value: +"Content-Type of the object (e.g. 'text/plain', 'application/json')" - changed
Input schema / properties / key / descriptionPrevious value: -"Object key (path) to upload to"New value: +"Object key (path) to upload to, e.g. 'folder/file.txt'" - added
Input schema / properties / objectLockLegalHoldAdded value: +{ + "description": "x-amz-object-lock-legal-hold — ON | OFF", + "enum": [ + "ON", + "OFF" + ], + "type": "string" +} - added
Input schema / properties / objectLockModeAdded value: +{ + "description": "x-amz-object-lock-mode — GOVERNANCE | COMPLIANCE (bucket must have Object Lock enabled; give objectLockRetainUntilDate too)", + "enum": [ + "GOVERNANCE", + "COMPLIANCE" + ], + "type": "string" +} - added
Input schema / properties / objectLockRetainUntilDateAdded value: +{ + "description": "x-amz-object-lock-retain-until-date, ISO 8601 (e.g. 2027-01-01T00:00:00Z)", + "type": "string" +} - added
Input schema / properties / serverSideEncryptionAdded value: +{ + "description": "x-amz-server-side-encryption — AES256 (SSE-S3) | aws:kms", + "enum": [ + "AES256", + "aws:kms" + ], + "type": "string" +} - changed
Input schema / properties / storageClass / descriptionPrevious value: -"Storage class to store the object in — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Sent as the x-amz-storage-class header; omit to use STANDARD"New value: +"x-amz-storage-class — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Omit to use STANDARD"
- Added
ncloud_ncs_put_object_legal_hold - Added
ncloud_ncs_put_object_lock_configuration - Added
ncloud_ncs_put_object_retention - Added
ncloud_ncs_restore_object - Added
ncloud_ncs_upload_part - Added
ncloud_ncs_upload_part_copy - Removed
ncloud_put_bucket_cors - Removed
ncloud_put_bucket_encryption - Removed
ncloud_put_bucket_lifecycle - Changed
ncloud_ses_add_node4 fields changed- removed
Input schema / properties / addDataNodeCountRemoved value: -{ - "description": "Number of data nodes to add", - "type": "number" -} - added
Input schema / properties / newDataNodeCountAdded value: +{ + "description": "How many data nodes to ADD. This is a delta, not the resulting total", + "minimum": 1, + "type": "number" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (path segment)" - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "addDataNodeCount" -]New value: +[ + "serviceGroupInstanceNo", + "newDataNodeCount" +]
- Changed
ncloud_ses_change_disk_size5 fields changed- removed
Input schema / properties / dataNodeStorageSizeRemoved value: -{ - "description": "New storage size in GB (100-2000, 10GB increment)", - "type": "number" -} - added
Input schema / properties / diskSizeAdded value: +{ + "description": "New storage size in GB (10GB increments; must be larger than the current size)", + "type": "number" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (sent in the body, as a number)" - changed
Input schema / properties / serviceGroupInstanceNo / typePrevious value: -"string"New value: +"number" - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "dataNodeStorageSize" -]New value: +[ + "serviceGroupInstanceNo", + "diskSize" +]
- Changed
ncloud_ses_change_node_spec7 fields changed- removed
Input schema / properties / computeInstanceNoListRemoved value: -{ - "description": "List of node instance numbers to change", - "items": { - "type": "number" - }, - "type": "array" -} - added
Input schema / properties / dataNodeProductCodeAdded value: +{ + "description": "New data node server type code", + "type": "string" +} - added
Input schema / properties / managerNodeProductCodeAdded value: +{ + "description": "New manager node server type code", + "type": "string" +} - added
Input schema / properties / masterNodeProductCodeAdded value: +{ + "description": "New master node server type code", + "type": "string" +} - removed
Input schema / properties / productCodeRemoved value: -{ - "description": "New server product code", - "type": "string" -} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (path segment)" - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "computeInstanceNoList", - "productCode" -]New value: +[ + "serviceGroupInstanceNo" +]
- Changed
ncloud_ses_change_node_type4 fields changed- removed
Input schema / properties / hotDataNodeCountRemoved value: -{ - "description": "Number of hot data nodes", - "type": "number" -} - added
Input schema / properties / nodeSpecListAdded value: +{ + "description": "Per-node storage role assignments", + "items": { + "additionalProperties": false, + "properties": { + "computeInstanceNo": { + "description": "Node instance number (from ncloud_ses_get_node_list)", + "type": "string" + }, + "nodeStorageRole": { + "description": "Storage role for this node", + "enum": [ + "HOT", + "WARM" + ], + "type": "string" + } + }, + "required": [ + "computeInstanceNo", + "nodeStorageRole" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" +} - removed
Input schema / properties / warmDataNodeCountRemoved value: -{ - "description": "Number of warm data nodes", - "type": "number" -} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "hotDataNodeCount", - "warmDataNodeCount" -]New value: +[ + "serviceGroupInstanceNo", + "nodeSpecList" +]
- Changed
ncloud_ses_create_cluster_g330 fields changed- changed
Input schema / properties / clusterName / descriptionPrevious value: -"Cluster name (3-15 chars, lowercase+numbers+'-')"New value: +"Cluster name (3-15 chars: lowercase letters, numbers, '-'; starts with a letter, ends with a letter or number)" - added
Input schema / properties / clusterName / maxLengthAdded value: +15 - changed
Input schema / properties / dataNodeCount / descriptionPrevious value: -"Number of data nodes (3-10)"New value: +"Number of data nodes (3-10, default: 3)" - added
Input schema / properties / dataNodeCount / maximumAdded value: +10 - added
Input schema / properties / dataNodeCount / minimumAdded value: +3 - added
Input schema / properties / dataNodeProductCodeAdded value: +{ + "description": "Data node server type code", + "type": "string" +} - removed
Input schema / properties / dataNodeServerSpecCodeRemoved value: -{ - "description": "Data node server spec code", - "type": "string" -} - added
Input schema / properties / dataNodeStorageInfraResourceDetailTypeCodeAdded value: +{ + "description": "Data node storage type code. Documented valid value: CB1", + "type": "string" +} - changed
Input schema / properties / dataNodeStorageSize / descriptionPrevious value: -"Data node storage size in GB (100-2000)"New value: +"Data node storage in GB (100-16000, 10GB increments)" - added
Input schema / properties / dataNodeStorageSize / maximumAdded value: +16000 - added
Input schema / properties / dataNodeStorageSize / minimumAdded value: +100 - added
Input schema / properties / generationCodeAdded value: +{ + "description": "Server generation code. G3 for 3rd generation", + "type": "string" +} - added
Input schema / properties / hypervisorCodeAdded value: +{ + "description": "Hypervisor code. KVM for 3rd generation", + "type": "string" +} - changed
Input schema / properties / isMasterOnlyNodeActivated / descriptionPrevious value: -"Enable dedicated master nodes"New value: +"Enable dedicated master nodes. If true, the three masterNode* parameters below are required" - changed
Input schema / properties / loginKeyName / descriptionPrevious value: -"Authentication key name"New value: +"Authentication key name (from ncloud_ses_get_login_keys)" - added
Input schema / properties / managerNodeProductCodeAdded value: +{ + "description": "Manager node server type code (from ncloud_ses_get_server_specs)", + "type": "string" +} - removed
Input schema / properties / managerNodeServerSpecCodeRemoved value: -{ - "description": "Manager node server spec code (from getServerSpecList)", - "type": "string" -} - changed
Input schema / properties / managerNodeSubnetNo / descriptionPrevious value: -"Manager node subnet number"New value: +"Manager node subnet number (from ncloud_ses_get_subnet_list_g3)" - changed
Input schema / properties / masterNodeCount / descriptionPrevious value: -"Number of master nodes (3 or 5)"New value: +"Number of master nodes (3 or 5, default: 3). Required when isMasterOnlyNodeActivated=true" - added
Input schema / properties / masterNodeProductCodeAdded value: +{ + "description": "Master node server type code. Required when isMasterOnlyNodeActivated=true", + "type": "string" +} - removed
Input schema / properties / masterNodeServerSpecCodeRemoved value: -{ - "description": "Master node server spec code", - "type": "string" -} - changed
Input schema / properties / masterNodeSubnetNo / descriptionPrevious value: -"Master node subnet"New value: +"Master node subnet number. Required when isMasterOnlyNodeActivated=true" - changed
Input schema / properties / searchEngineDashboardPort / descriptionPrevious value: -"Dashboard port (1025-65534, not 9090/9200/9300)"New value: +"Dashboard port (1025-65534; 9090, 9200 and 9300 are unavailable)" - changed
Input schema / properties / searchEngineUserName / descriptionPrevious value: -"Admin account ID (3-15 chars)"New value: +"Admin account ID (3-15 chars: lowercase letters, numbers, '-')" - changed
Input schema / properties / searchEngineUserPassword / descriptionPrevious value: -"Admin password (8-20 chars)"New value: +"Admin password (8-20 chars, letters+numbers+special; excludes ' \" ` ₩ / & and spaces)" - changed
Input schema / properties / searchEngineVersionCode / descriptionPrevious value: -"Search engine version code"New value: +"Search engine version code (from ncloud_ses_get_versions)" - added
Input schema / properties / serverSpecCodeAdded value: +{ + "description": "Server spec code. Optional here, unlike the CDSS G3 create where it is required", + "type": "string" +} - changed
Input schema / properties / softwareProductCode / descriptionPrevious value: -"OS type code (from getClusterServerImageList)"New value: +"G3 OS image code (see ncloud_ses_get_cluster_server_images; e.g. SW.VELST.OS.LNX64.ROCKY.08.G003)" - changed
Input schema / properties / vpcNo / descriptionPrevious value: -"VPC number"New value: +"VPC number (from ncloud_ses_get_vpc_list)" - changed
Input schema / requiredPrevious value: -[ - "clusterName", - "searchEngineVersionCode", - "searchEngineDashboardPort", - "searchEngineUserName", - "searchEngineUserPassword", - "softwareProductCode", - "vpcNo", - "managerNodeSubnetNo", - "managerNodeServerSpecCode", - "dataNodeSubnetNo", - "dataNodeCount", - "dataNodeServerSpecCode", - "dataNodeStorageSize", - "loginKeyName" -]New value: +[ + "clusterName", + "searchEngineVersionCode", + "searchEngineDashboardPort", + "searchEngineUserName", + "searchEngineUserPassword", + "softwareProductCode", + "hypervisorCode", + "generationCode", + "vpcNo", + "managerNodeSubnetNo", + "managerNodeProductCode", + "dataNodeSubnetNo", + "dataNodeCount", + "dataNodeProductCode", + "dataNodeStorageSize", + "loginKeyName" +]
- Changed
ncloud_ses_create_snapshot3 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Object Storage bucket name for snapshot storage"New value: +"Object Storage bucket to store the snapshot in (from ncloud_ses_get_snapshot_buckets)" - added
Input schema / properties / snapshotNameAdded value: +{ + "description": "Name for the snapshot", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "bucketName" -]New value: +[ + "serviceGroupInstanceNo", + "snapshotName", + "bucketName" +]
- Changed
ncloud_ses_get_cluster_server_images2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / generationCodeAdded value: +{ + "description": "Server generation code. Only G3 (3rd generation) is valid", + "enum": [ + "G3" + ], + "type": "string" +}
- Changed
ncloud_ses_get_dashboard2 fields changed- added
Input schema / properties / pageNoAdded value: +{ + "description": "Page number", + "type": "number" +} - added
Input schema / properties / pageSizeAdded value: +{ + "description": "Page size", + "type": "number" +}
- Changed
ncloud_ses_get_import_history2 fields changed- added
Input schema / properties / pageNoAdded value: +{ + "description": "Page number", + "type": "number" +} - added
Input schema / properties / pageSizeAdded value: +{ + "description": "Page size", + "type": "number" +}
- Changed
ncloud_ses_get_monitoring9 fields changed- added
Input schema / properties / computeInstanceNoAdded value: +{ + "description": "Node instance number. Required for node-level metrics", + "type": "string" +} - removed
Input schema / properties / endDateTimeRemoved value: -{ - "description": "End time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / intervalAdded value: +{ + "description": "Aggregation interval (e.g. Min1, Min30, Hour2, Day1)", + "type": "string" +} - added
Input schema / properties / metricAdded value: +{ + "description": "Metric set to retrieve", + "enum": [ + "CLUSTER_ALL_METRICS", + "SES_ALL_METRICS" + ], + "type": "string" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (path segment)" - removed
Input schema / properties / startDateTimeRemoved value: -{ - "description": "Start time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / timeEndAdded value: +{ + "description": "End time as epoch milliseconds", + "type": "number" +} - added
Input schema / properties / timeStartAdded value: +{ + "description": "Start time as epoch milliseconds (e.g. 1742747874000) — NOT an ISO 8601 string", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo" -]New value: +[ + "serviceGroupInstanceNo", + "timeStart", + "timeEnd", + "metric" +]
- Added
ncloud_ses_get_node_product_for_change - Changed
ncloud_ses_get_node_products3 fields changed- changed
Input schema / properties / softwareProductCode / descriptionPrevious value: -"OS product code (from getOsProductList)"New value: +"OS product code (from ncloud_ses_get_os_products)" - added
Input schema / properties / subnetNoAdded value: +{ + "description": "Subnet number (from ncloud_ses_get_subnet_list)", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "softwareProductCode" -]New value: +[ + "softwareProductCode", + "subnetNo" +]
- Added
ncloud_ses_get_node_spec_for_change_g3 - Changed
ncloud_ses_get_os_monitoring8 fields changed- removed
Input schema / properties / endDateTimeRemoved value: -{ - "description": "End time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / intervalAdded value: +{ + "description": "Aggregation interval (e.g. Min1, Min30, Hour2, Day1). Default: Min1", + "type": "string" +} - added
Input schema / properties / metricAdded value: +{ + "description": "Metric set to retrieve. OS_ALL_METRICS is the only valid value", + "enum": [ + "OS_ALL_METRICS" + ], + "type": "string" +} - changed
Input schema / properties / serviceGroupInstanceNo / descriptionPrevious value: -"Cluster instance number"New value: +"Cluster instance number (path segment)" - removed
Input schema / properties / startDateTimeRemoved value: -{ - "description": "Start time (ISO 8601 format)", - "type": "string" -} - added
Input schema / properties / timeEndAdded value: +{ + "description": "End time as epoch milliseconds", + "type": "number" +} - added
Input schema / properties / timeStartAdded value: +{ + "description": "Start time as epoch milliseconds (e.g. 1742520660000) — NOT an ISO 8601 string", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "computeInstanceNo" -]New value: +[ + "serviceGroupInstanceNo", + "computeInstanceNo", + "timeStart", + "timeEnd", + "metric" +]
- Changed
ncloud_ses_get_server_specs1 field changed- changed
Input schema / properties / softwareProductCode / descriptionPrevious value: -"OS product code (from getClusterServerImageList)"New value: +"G3 OS image code (from ncloud_ses_get_cluster_server_images)"
- Changed
ncloud_ses_get_snapshot_history2 fields changed- added
Input schema / properties / pageNoAdded value: +{ + "description": "Page number", + "type": "number" +} - added
Input schema / properties / pageSizeAdded value: +{ + "description": "Page size", + "type": "number" +}
- Added
ncloud_ses_get_snapshot_schedule_history - Changed
ncloud_ses_get_subnet_list3 fields changed- added
Input schema / properties / softwareProductCodeAdded value: +{ + "description": "OS product code (from ncloud_ses_get_os_products)", + "type": "string" +} - changed
Input schema / properties / vpcNo / descriptionPrevious value: -"VPC number"New value: +"VPC number (from ncloud_ses_get_vpc_list)" - changed
Input schema / requiredPrevious value: -[ - "vpcNo" -]New value: +[ + "softwareProductCode", + "vpcNo" +]
- Changed
ncloud_ses_get_subnet_list_g34 fields changed- added
Input schema / properties / isPrivateAdded value: +{ + "description": "true: private subnets only, false: public subnets only", + "type": "boolean" +} - added
Input schema / properties / softwareProductCodeAdded value: +{ + "description": "G3 OS image code (from ncloud_ses_get_cluster_server_images)", + "type": "string" +} - changed
Input schema / properties / vpcNo / descriptionPrevious value: -"VPC number"New value: +"VPC number (from ncloud_ses_get_vpc_list)" - changed
Input schema / requiredPrevious value: -[ - "vpcNo" -]New value: +[ + "softwareProductCode", + "vpcNo" +]
- Changed
ncloud_ses_get_upgrade_progress2 fields changed- added
Input schema / properties / regionNoAdded value: +{ + "description": "Region number (from ncloud_get_regions)", + "type": "number" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo" -]New value: +[ + "regionNo", + "serviceGroupInstanceNo" +]
- Changed
ncloud_ses_precheck_upgrade4 fields changed- added
Input schema / properties / regionNoAdded value: +{ + "description": "Region number (from ncloud_get_regions)", + "type": "number" +} - removed
Input schema / properties / searchEngineVersionCodeRemoved value: -{ - "description": "Target version code", - "type": "string" -} - added
Input schema / properties / targetVersionCodeAdded value: +{ + "description": "Target version code (from ncloud_ses_get_versions)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "searchEngineVersionCode" -]New value: +[ + "regionNo", + "serviceGroupInstanceNo", + "targetVersionCode" +]
- Changed
ncloud_ses_run_import8 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Object Storage bucket name"New value: +"Object Storage bucket name (from ncloud_ses_get_import_buckets)" - added
Input schema / properties / dataSourceAdded value: +{ + "description": "Data source type", + "type": "string" +} - removed
Input schema / properties / filePathRemoved value: -{ - "description": "File path in the bucket", - "type": "string" -} - added
Input schema / properties / indexAdded value: +{ + "description": "Target index name. Ignored when isBulkFormat=true — the file's own _index wins", + "type": "string" +} - removed
Input schema / properties / indexNameRemoved value: -{ - "description": "Target index name", - "type": "string" -} - added
Input schema / properties / isBulkFormatAdded value: +{ + "description": "Whether the file is in Elasticsearch bulk format. If true, every line must carry its own _index", + "type": "boolean" +} - added
Input schema / properties / objectKeyAdded value: +{ + "description": "Object key (path) of the file in the bucket", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "bucketName", - "filePath", - "indexName" -]New value: +[ + "serviceGroupInstanceNo", + "bucketName", + "objectKey", + "index", + "dataSource" +]
- Changed
ncloud_ses_set_snapshot_api_key3 fields changed- removed
Input schema / properties / secretAccessKeyRemoved value: -{ - "description": "Object Storage secret key", - "type": "string" -} - added
Input schema / properties / secretKeyAdded value: +{ + "description": "Object Storage secret key", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "accessKeyId", - "secretAccessKey" -]New value: +[ + "serviceGroupInstanceNo", + "accessKeyId", + "secretKey" +]
- Changed
ncloud_ses_set_snapshot_schedule7 fields changed- changed
Input schema / properties / bucketName / descriptionPrevious value: -"Object Storage bucket name"New value: +"Object Storage bucket to store snapshots in" - removed
Input schema / properties / scheduleExpressionRemoved value: -{ - "description": "Cron expression for scheduling", - "type": "string" -} - added
Input schema / properties / scheduledDayAdded value: +{ + "description": "Scheduled day", + "type": "string" +} - added
Input schema / properties / scheduledHourAdded value: +{ + "description": "Scheduled hour", + "type": "string" +} - added
Input schema / properties / scheduledMinuteAdded value: +{ + "description": "Scheduled minute", + "type": "string" +} - added
Input schema / properties / snapshotNameAdded value: +{ + "description": "Name prefix for scheduled snapshots", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "bucketName", - "scheduleExpression" -]New value: +[ + "serviceGroupInstanceNo", + "snapshotName", + "bucketName", + "scheduledDay", + "scheduledHour", + "scheduledMinute" +]
- Changed
ncloud_ses_stop_import2 fields changed- removed
Input schema / properties / importTaskIdRemoved value: -{ - "description": "Import task ID to stop", - "type": "string" -} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "importTaskId" -]New value: +[ + "serviceGroupInstanceNo" +]
- Changed
ncloud_ses_upgrade_version4 fields changed- added
Input schema / properties / regionNoAdded value: +{ + "description": "Region number (from ncloud_get_regions — this is regionNo, not the region code)", + "type": "number" +} - removed
Input schema / properties / searchEngineVersionCodeRemoved value: -{ - "description": "Target version code", - "type": "string" -} - added
Input schema / properties / targetVersionCodeAdded value: +{ + "description": "Target version code (from ncloud_ses_get_versions)", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "serviceGroupInstanceNo", - "searchEngineVersionCode" -]New value: +[ + "regionNo", + "serviceGroupInstanceNo", + "targetVersionCode" +]
28 tool updates
v1.12.0- Changed
ncloud_create_group3 fields changed- changed
Input schema / properties / groupDescription / descriptionPrevious value: -"Description of the group"New value: +"⚠️ Ignored — the Ncloud createGroup API has no description field, so this value is NOT sent. Kept only for backward compatibility; use tags to annotate a group" - changed
Input schema / properties / groupName / descriptionPrevious value: -"Name for the new group"New value: +"Name for the new group (3-30 chars: Korean/Japanese/English letters, digits, '.', '_', '-'; must start with a letter)" - added
Input schema / properties / tagsAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "Tags as a key-value map, max 20 per resource. Example: {\"env\":\"dev\",\"team\":\"a\"}", + "type": "object" +}
- Added
ncloud_create_policy - Changed
ncloud_create_role8 fields changed- changed
Input schema / properties / descCont / descriptionPrevious value: -"Description of the role"New value: +"Description of the role (0-300 bytes)" - changed
Input schema / properties / isMyAccount / descriptionPrevious value: -"Whether the role applies to the current account"New value: +"⚠️ Ignored — createRole has no isMyAccount field, so this value is NOT sent. It belongs to the separate 'add Account role target' API (POST /api/v1/roles/{roleNo}/entities/account). Kept only for backward compatibility" - changed
Input schema / properties / roleName / descriptionPrevious value: -"Role name (3-100 chars, letters/numbers/special chars . _ -, must start with letter)"New value: +"Role name (3-100 chars: Korean/Japanese/English letters, digits, '.', '_', '-'; must start with a letter)" - changed
Input schema / properties / roleType / descriptionPrevious value: -"Role type: Server (VPC server), Account (console/portal access), Service (inter-service access)"New value: +"Role type: Server (VPC server resource, no access key needed), Account (grants the main account's console/portal access to a sub account via role switching), Service (inter-service access)" - changed
Input schema / properties / sessionExpirationSec / descriptionPrevious value: -"Session expiration time in seconds (600, 1800, 3600, or 10800). Not allowed for Server type."New value: +"Session expiration time in seconds: 600, 1800, 3600, or 10800. REQUIRED when roleType is Account" - added
Input schema / properties / sessionExpirationSec / enumAdded value: +[ + 600, + 1800, + 3600, + 10800 +] - added
Input schema / properties / tagsAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "Tags as a key-value map, max 20 per resource. Example: {\"env\":\"dev\",\"team\":\"a\"}", + "type": "object" +} - changed
Input schema / requiredPrevious value: -[ - "roleName", - "roleType", - "isMyAccount" -]New value: +[ + "roleName", + "roleType" +]
- Changed
ncloud_create_sub_account5 fields changed- added
Input schema / properties / apiAllowSourcesAdded value: +{ + "description": "Allowed API access sources. Only applied when useApiAllowSource is true", + "items": { + "additionalProperties": false, + "properties": { + "source": { + "description": "Access source value — an IP address/range for type IP, or an instance number for VPC/VPC_SERVER", + "type": "string" + }, + "type": { + "description": "Access source type — IP: single IP or CIDR range, VPC: a VPC in use, VPC_SERVER: a server in a VPC", + "enum": [ + "IP", + "VPC", + "VPC_SERVER" + ], + "type": "string" + } + }, + "required": [ + "type", + "source" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / consolePermitIpsAdded value: +{ + "description": "Allowed console access IP ranges. Only applied when useConsolePermitIp is true", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / tagsAdded value: +{ + "additionalProperties": { + "type": "string" + }, + "description": "Tags as a key-value map, max 20 per resource. Example: {\"env\":\"dev\",\"team\":\"a\"}", + "type": "object" +} - added
Input schema / properties / useApiAllowSourceAdded value: +{ + "description": "Restrict API access to specific sources. true: only apiAllowSources may call the API, false: any source", + "type": "boolean" +} - added
Input schema / properties / useConsolePermitIpAdded value: +{ + "description": "Restrict console access to specific IP ranges. true: only consolePermitIps may sign in, false: any IP", + "type": "boolean" +}
- Added
ncloud_create_sub_account_access_key - Added
ncloud_datacatalog_create_database - Added
ncloud_datacatalog_create_scanner - Added
ncloud_datacatalog_update_database - Added
ncloud_datacatalog_update_database_tag - Added
ncloud_datacatalog_update_table_schema - Added
ncloud_datacatalog_update_table_tag - Added
ncloud_delete_policies - Added
ncloud_delete_policy - Added
ncloud_delete_sub_account_access_key - Changed
ncloud_detach_policy_from_group3 fields changed- changed
Input schema / properties / policyId / descriptionPrevious value: -"Policy ID to detach"New value: +"Single policy ID to detach. Merged into policyIdList when sent; kept for backward compatibility" - added
Input schema / properties / policyIdListAdded value: +{ + "description": "List of policy IDs to detach. Provide this or policyId", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "groupId", - "policyId" -]New value: +[ + "groupId" +]
- Changed
ncloud_detach_policy_from_sub_account3 fields changed- changed
Input schema / properties / policyId / descriptionPrevious value: -"Policy ID to detach"New value: +"Single policy ID to detach. Merged into policyIdList when sent; kept for backward compatibility" - added
Input schema / properties / policyIdListAdded value: +{ + "description": "List of policy IDs to detach. Provide this or policyId", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "subAccountId", - "policyId" -]New value: +[ + "subAccountId" +]
- Added
ncloud_get_policy_detail - Added
ncloud_get_policy_resources - Added
ncloud_list_sub_account_access_keys - Changed
ncloud_resource_attach_group2 fields changed- changed
Input schema / properties / nrnList / descriptionPrevious value: -"List of Ncloud Resource Names to add to the group"New value: +"List of Ncloud Resource Names to add to the group (see ncloud_resource_list_resources)" - added
Input schema / properties / nrnList / minItemsAdded value: +1
- Changed
ncloud_resource_attach_tag4 fields changed- changed
Input schema / properties / nrnList / descriptionPrevious value: -"List of Ncloud Resource Names to tag"New value: +"List of Ncloud Resource Names to tag (see ncloud_resource_list_resources)" - added
Input schema / properties / nrnList / minItemsAdded value: +1 - changed
Input schema / properties / tagKey / descriptionPrevious value: -"Tag key to attach"New value: +"Tag key to attach (1-128 chars; the special characters _ . / = + - @ are allowed)" - changed
Input schema / properties / tagValue / descriptionPrevious value: -"Tag value to attach"New value: +"Tag value to attach (1-256 chars; the special characters _ . / = + - @ are allowed)"
- Changed
ncloud_resource_detach_group1 field changed- added
Input schema / properties / nrnList / minItemsAdded value: +1
- Changed
ncloud_resource_detach_tag3 fields changed- added
Input schema / properties / nrnList / minItemsAdded value: +1 - changed
Input schema / properties / tagKey / descriptionPrevious value: -"Tag key to remove"New value: +"Tag key to remove (1-128 chars)" - changed
Input schema / properties / tagValue / descriptionPrevious value: -"Tag value (optional, if omitted removes all values for the key)"New value: +"Tag value (optional; omit to remove the key regardless of its value)"
- Changed
ncloud_resource_list_groups3 fields changed- changed
Input schema / properties / groupName / descriptionPrevious value: -"Group name filter"New value: +"Group name filter, exact match" - changed
Input schema / properties / page / descriptionPrevious value: -"Page number (default 0)"New value: +"Page number, 0-based (default 0)" - changed
Input schema / properties / size / descriptionPrevious value: -"Page size (default 20)"New value: +"Page size 1~100 (default 20)"
- Changed
ncloud_resource_list_resources12 fields changed- changed
Input schema / properties / groupName / descriptionPrevious value: -"Group name filter"New value: +"Group name filter, exact match" - changed
Input schema / properties / page / descriptionPrevious value: -"Page number (default 0)"New value: +"Page number, 0-based (default 0)" - changed
Input schema / properties / productName / descriptionPrevious value: -"Product name filter (e.g., 'Server (VPC)', 'VPC')"New value: +"Service CODE of the resource, matched exactly — not the display name shown in the console. Service codes carry no spaces or parentheses: use 'DataQuery', not 'Data Query'. To discover the valid codes for this account, call this tool without a productName filter and read each item's productName (its productDisplayName is the console name). When a productName filter returns nothing, this tool retries once without it and reports the codes that do exist as productNameFilterHint" - changed
Input schema / properties / regionCode / descriptionPrevious value: -"Region code filter (e.g., 'KR', 'JPN')"New value: +"Region code filter, exact match (e.g., 'KR', 'JPN')" - changed
Input schema / properties / resourceId / descriptionPrevious value: -"Resource ID filter"New value: +"Resource ID filter, exact match" - changed
Input schema / properties / resourceName / descriptionPrevious value: -"Resource name filter"New value: +"Resource name filter, exact match" - changed
Input schema / properties / resourceType / descriptionPrevious value: -"Resource type filter"New value: +"Resource type filter, exact match (e.g., 'DataSource', 'Project'). See a returned item's resourceType for valid values" - changed
Input schema / properties / size / descriptionPrevious value: -"Page size (default 20)"New value: +"Page size, documented as 1~100 (default 20). The API was observed returning more than 100 rows for a larger value rather than rejecting or clamping it, so values above 100 work today but are outside the documented range — do not rely on them" - changed
Input schema / properties / tag / descriptionPrevious value: -"Tag filter array [{tagKey, tagValue}]"New value: +"Tag filter array, e.g. [{tagKey: 'env', tagValue: 'dev'}] or [{tagKey: 'env'}] to filter by key alone" - changed
Input schema / properties / tag / items / properties / tagKey / descriptionPrevious value: -"Tag key"New value: +"Tag key (1-128 chars; the special characters _ . / = + - @ are allowed)" - changed
Input schema / properties / tag / items / properties / tagValue / descriptionPrevious value: -"Tag value"New value: +"Tag value (1-256 chars). OPTIONAL — omit it to match every resource carrying the key, whatever its value" - changed
Input schema / properties / tag / items / requiredPrevious value: -[ - "tagKey", - "tagValue" -]New value: +[ + "tagKey" +]
- Added
ncloud_set_sub_account_access_key_status - Added
ncloud_update_policy - Added
ncloud_validate_policy
4 tool updates
v1.11.0- Changed
ncloud_create_snapshot7 fields changed- changed
Input schema / properties / blockStorageInstanceNo / descriptionPrevious value: -"Block storage instance number to create snapshot from"New value: +"Block storage instance number to create snapshot from. Sent to the API as originalBlockStorageInstanceNo. Provide this or originalBlockStorageInstanceNo." - changed
Input schema / properties / blockStorageSnapshotDescription / descriptionPrevious value: -"Description for the snapshot"New value: +"Description for the snapshot (max 1000 bytes)" - changed
Input schema / properties / blockStorageSnapshotName / descriptionPrevious value: -"Name for the snapshot"New value: +"Name for the snapshot (3-30 chars: letters, digits, '-', '_'). Auto-generated when omitted" - added
Input schema / properties / originalBlockStorageInstanceNoAdded value: +{ + "description": "Same as blockStorageInstanceNo, spelled with the Ncloud API's own parameter name. Takes precedence when both are given.", + "type": "string" +} - added
Input schema / properties / regionCodeAdded value: +{ + "description": "Region code (e.g. KR, SGN, JPN). Defaults to the client region", + "type": "string" +} - added
Input schema / properties / snapshotTypeCodeAdded value: +{ + "description": "Snapshot type — XEN (Gen2, HDD/SSD volumes) ONLY: FULL (default) or INCREMENTAL. INCREMENTAL requires an existing full snapshot of the same volume and is capped at 7 per full snapshot. KVM (Gen3, CB1/CB2/FB1/FB2 volumes) has no snapshot type: the API accepts this parameter on a KVM volume but SILENTLY IGNORES it and creates a FULL snapshot (verified against the live API), so do not rely on it there — omit it for KVM volumes.", + "enum": [ + "FULL", + "INCREMENTAL" + ], + "type": "string" +} - removed
Input schema / requiredRemoved value: -[ - "blockStorageInstanceNo" -]
- Changed
ncloud_ncs_copy_object1 field changed- added
Input schema / properties / storageClassAdded value: +{ + "description": "Storage class for the copy — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Sent as the x-amz-storage-class header; omit to use STANDARD. Copying an object onto itself with a different class is the way to change an existing object's storage class", + "enum": [ + "STANDARD", + "ONEZONE_IA", + "DEEP_ARCHIVE" + ], + "type": "string" +}
- Changed
ncloud_ncs_put_object1 field changed- added
Input schema / properties / storageClassAdded value: +{ + "description": "Storage class to store the object in — STANDARD (default): Standard Class | ONEZONE_IA: One Zone-IA (Infrequent Access) Class | DEEP_ARCHIVE: Archive Class. Sent as the x-amz-storage-class header; omit to use STANDARD", + "enum": [ + "STANDARD", + "ONEZONE_IA", + "DEEP_ARCHIVE" + ], + "type": "string" +}
- Changed
ncloud_put_bucket_lifecycle2 fields changed- changed
Input schema / properties / rules / items / properties / transitions / items / properties / storageClass / descriptionPrevious value: -"Target storage class (STANDARD_IA: Low Frequency, GLACIER: Archive)"New value: +"Target storage class (ONEZONE_IA: One Zone-IA (Infrequent Access) Class, DEEP_ARCHIVE: Archive Class). Ncloud Storage has no STANDARD_IA/GLACIER class — those AWS S3 names are rejected" - changed
Input schema / properties / rules / items / properties / transitions / items / properties / storageClass / enumPrevious value: -[ - "STANDARD_IA", - "GLACIER" -]New value: +[ + "ONEZONE_IA", + "DEEP_ARCHIVE" +]
1034 tool updates
v1.10.1- First observed
ncloud_abort_multipart_upload - First observed
ncloud_accept_reject_vpc_peering - First observed
ncloud_add_acg_inbound_rule - First observed
ncloud_add_acg_outbound_rule - First observed
ncloud_add_file_plugin - First observed
ncloud_add_lb_listener_certificate - First observed
ncloud_add_member_server_image_sharing - First observed
ncloud_add_mongodb_users - First observed
ncloud_add_mysql_databases - First observed
ncloud_add_mysql_users - First observed
ncloud_add_nas_volume_access_control - First observed
ncloud_add_network_acl_inbound - First observed
ncloud_add_network_acl_outbound - First observed
ncloud_add_nic_acg - First observed
ncloud_add_placement_group_server - First observed
ncloud_add_port_plugin - First observed
ncloud_add_postgresql_databases - First observed
ncloud_add_postgresql_users - First observed
ncloud_add_process_plugin - First observed
ncloud_add_route - First observed
ncloud_add_route_table_subnet - First observed
ncloud_add_server_image_sharing - First observed
ncloud_add_target - First observed
ncloud_advisor_download_all_results - First observed
ncloud_advisor_download_category_results - First observed
ncloud_advisor_download_item_results - First observed
ncloud_advisor_exclude_instances - First observed
ncloud_advisor_get_categories - First observed
ncloud_advisor_get_category_dashboard - First observed
ncloud_advisor_get_category_result_summary - First observed
ncloud_advisor_get_category_status - First observed
ncloud_advisor_get_checkitems - First observed
ncloud_advisor_get_item_result_detail - First observed
ncloud_advisor_get_item_result_summary - First observed
ncloud_advisor_get_item_status - First observed
ncloud_advisor_include_instances - First observed
ncloud_advisor_refresh_category - First observed
ncloud_advisor_refresh_item - First observed
ncloud_apigw_create_api_key - First observed
ncloud_apigw_create_stage - First observed
ncloud_apigw_delete_api_key - First observed
ncloud_apigw_delete_stage - First observed
ncloud_apigw_get_product - First observed
ncloud_apigw_get_usage_plan - First observed
ncloud_apigw_list_api_keys - First observed
ncloud_apigw_list_apis - First observed
ncloud_apigw_list_products - First observed
ncloud_apigw_list_stages - First observed
ncloud_assign_secondary_ips - First observed
ncloud_associate_public_ip - First observed
ncloud_attach_block_storage - First observed
ncloud_attach_network_interface - First observed
ncloud_attach_policy_to_group - First observed
ncloud_attach_policy_to_sub_account - First observed
ncloud_cancel_pipeline - First observed
ncloud_cdss_add_nodes - First observed
ncloud_cdss_apply_config_group - First observed
ncloud_cdss_change_kafka_config - First observed
ncloud_cdss_change_node_spec - First observed
ncloud_cdss_create_cluster - First observed
ncloud_cdss_create_config_group - First observed
ncloud_cdss_delete_cluster - First observed
ncloud_cdss_delete_config_group - First observed
ncloud_cdss_disable_public_domain - First observed
ncloud_cdss_disable_public_endpoint - First observed
ncloud_cdss_enable_public_domain - First observed
ncloud_cdss_enable_public_endpoint - First observed
ncloud_cdss_get_broker_info - First observed
ncloud_cdss_get_certificate - First observed
ncloud_cdss_get_cluster_acg - First observed
ncloud_cdss_get_cluster_detail - First observed
ncloud_cdss_get_cluster_server_images - First observed
ncloud_cdss_get_cluster_status - First observed
ncloud_cdss_get_config_group_detail - First observed
ncloud_cdss_get_kafka_config - First observed
ncloud_cdss_get_kafka_versions - First observed
ncloud_cdss_get_load_balancers - First observed
ncloud_cdss_get_monitoring - First observed
ncloud_cdss_get_node_products - First observed
ncloud_cdss_get_node_spec - First observed
ncloud_cdss_get_os_monitoring - First observed
ncloud_cdss_get_os_products - First observed
ncloud_cdss_get_server_generations - First observed
ncloud_cdss_get_server_spec_list - First observed
ncloud_cdss_get_subnet_list - First observed
ncloud_cdss_get_vpc_list - First observed
ncloud_cdss_list_clusters - First observed
ncloud_cdss_list_config_groups - First observed
ncloud_cdss_list_nodes - First observed
ncloud_cdss_reset_cmak_password - First observed
ncloud_cdss_restart_all_services - First observed
ncloud_cdss_restart_cmak - First observed
ncloud_cdss_restart_kafka - First observed
ncloud_cdss_restart_kafka_per_node - First observed
ncloud_cdss_rolling_restart - First observed
ncloud_cdss_rolling_restart_precheck - First observed
ncloud_cdss_rolling_restart_status - First observed
ncloud_cdss_upgrade_precheck - First observed
ncloud_cdss_upgrade_status - First observed
ncloud_cdss_upgrade_version - First observed
ncloud_change_block_storage - First observed
ncloud_change_fabric_cluster_servers - First observed
ncloud_change_lb_config - First observed
ncloud_change_lb_listener_config - First observed
ncloud_change_mongodb_config_count - First observed
ncloud_change_mongodb_mongos_count - First observed
ncloud_change_mongodb_secondary_count - First observed
ncloud_change_mongodb_shard_count - First observed
ncloud_change_mongodb_users - First observed
ncloud_change_mysql_spec - First observed
ncloud_change_mysql_users - First observed
ncloud_change_nas_snapshot_config - First observed
ncloud_change_nas_volume_size - First observed
ncloud_change_postgresql_users - First observed
ncloud_change_server_spec - First observed
ncloud_change_target_group_config - First observed
ncloud_change_target_group_health - First observed
ncloud_complete_multipart_upload - First observed
ncloud_copy_object - First observed
ncloud_copy_rule_group - First observed
ncloud_create_acg - First observed
ncloud_create_asg - First observed
ncloud_create_block_storage - First observed
ncloud_create_bucket - First observed
ncloud_create_cache_config_group - First observed
ncloud_create_cache_instance - First observed
ncloud_create_cache_manual_backup - First observed
ncloud_create_custom_resource - First observed
ncloud_create_custom_schema - First observed
ncloud_create_deny_allow_group - First observed
ncloud_create_fabric_cluster - First observed
ncloud_create_group - First observed
ncloud_create_init_script - First observed
ncloud_create_integration - First observed
ncloud_create_launch_config - First observed
ncloud_create_lb_listener - First observed
ncloud_create_load_balancer - First observed
ncloud_create_login_key - First observed
ncloud_create_maintenance - First observed
ncloud_create_member_server_image - First observed
ncloud_create_metrics_group - First observed
ncloud_create_mongodb_instance - First observed
ncloud_create_monitor_group - First observed
ncloud_create_mssql_instance - First observed
ncloud_create_mssql_slave - First observed
ncloud_create_mysql_instance - First observed
ncloud_create_mysql_recovery - First observed
ncloud_create_mysql_slave - First observed
ncloud_create_nas_snapshot - First observed
ncloud_create_nas_volume - First observed
ncloud_create_nat_gateway - First observed
ncloud_create_network_acl - First observed
ncloud_create_network_interface - First observed
ncloud_create_pipeline - First observed
ncloud_create_placement_group - First observed
ncloud_create_postgresql_instance - First observed
ncloud_create_postgresql_read_replica - First observed
ncloud_create_public_ip - First observed
ncloud_create_role - First observed
ncloud_create_route_table - First observed
ncloud_create_rule_directly - First observed
ncloud_create_rule_group - First observed
ncloud_create_server - First observed
ncloud_create_server_image - First observed
ncloud_create_server_image_from_snapshot - First observed
ncloud_create_snapshot - First observed
ncloud_create_sub_account - First observed
ncloud_create_subnet - First observed
ncloud_create_target_group - First observed
ncloud_create_vpc - First observed
ncloud_create_vpc_peering - First observed
ncloud_datacatalog_get_catalogs - First observed
ncloud_datacatalog_get_connection - First observed
ncloud_datacatalog_get_connections - First observed
ncloud_datacatalog_get_database - First observed
ncloud_datacatalog_get_databases - First observed
ncloud_datacatalog_get_scanner - First observed
ncloud_datacatalog_get_scanner_histories - First observed
ncloud_datacatalog_get_scanners - First observed
ncloud_datacatalog_get_table - First observed
ncloud_datacatalog_get_table_partition_keys - First observed
ncloud_datacatalog_get_table_partitions - First observed
ncloud_datacatalog_get_table_properties - First observed
ncloud_datacatalog_get_table_schema - First observed
ncloud_datacatalog_get_table_schema_and_partition_keys - First observed
ncloud_datacatalog_get_table_schema_by_version - First observed
ncloud_datacatalog_get_table_schema_versions - First observed
ncloud_datacatalog_get_table_tags - First observed
ncloud_datacatalog_get_tables - First observed
ncloud_datacatalog_get_tables_by_database - First observed
ncloud_datacatalog_run_scanner - First observed
ncloud_datacatalog_stop_scanner - First observed
ncloud_dataflow_create_job - First observed
ncloud_dataflow_create_trigger - First observed
ncloud_dataflow_create_workflow - First observed
ncloud_dataflow_delete_job - First observed
ncloud_dataflow_delete_trigger - First observed
ncloud_dataflow_delete_workflow - First observed
ncloud_dataflow_execute_job - First observed
ncloud_dataflow_get_execution_interval - First observed
ncloud_dataflow_get_execution_result - First observed
ncloud_dataflow_get_execution_times - First observed
ncloud_dataflow_get_job - First observed
ncloud_dataflow_get_job_execution - First observed
ncloud_dataflow_get_job_executions - First observed
ncloud_dataflow_get_trigger - First observed
ncloud_dataflow_get_workflow - First observed
ncloud_dataflow_get_workflow_executions - First observed
ncloud_dataflow_list_jobs - First observed
ncloud_dataflow_list_triggers - First observed
ncloud_dataflow_list_workflows - First observed
ncloud_dataflow_update_job - First observed
ncloud_dataflow_update_job_execute_config - First observed
ncloud_dataflow_update_workflow - First observed
ncloud_dataflow_verify_job - First observed
ncloud_dataforest_check_account_name - First observed
ncloud_dataforest_check_account_resource - First observed
ncloud_dataforest_check_app_name - First observed
ncloud_dataforest_create_account - First observed
ncloud_dataforest_create_app - First observed
ncloud_dataforest_delete_account - First observed
ncloud_dataforest_delete_app - First observed
ncloud_dataforest_get_account_detail - First observed
ncloud_dataforest_get_app_basic_setting - First observed
ncloud_dataforest_get_app_detail - First observed
ncloud_dataforest_get_app_type_ids - First observed
ncloud_dataforest_get_app_type_template - First observed
ncloud_dataforest_get_kerberos_keytab - First observed
ncloud_dataforest_kill_container - First observed
ncloud_dataforest_kill_master - First observed
ncloud_dataforest_list_accounts - First observed
ncloud_dataforest_list_apps - First observed
ncloud_dataforest_reset_kerberos_keytab - First observed
ncloud_dataforest_reset_password - First observed
ncloud_dataforest_set_container_count - First observed
ncloud_dataforest_set_lifetime - First observed
ncloud_dataforest_set_quota - First observed
ncloud_dataforest_start_app - First observed
ncloud_dataforest_stop_app - First observed
ncloud_dataquery_cancel - First observed
ncloud_dataquery_execute - First observed
ncloud_dataquery_execute_async - First observed
ncloud_dataquery_get_result - First observed
ncloud_dataquery_list_queries - First observed
ncloud_datastream_check_schema_compatibility - First observed
ncloud_datastream_create_connector - First observed
ncloud_datastream_create_schema - First observed
ncloud_datastream_create_topic - First observed
ncloud_datastream_delete_connector - First observed
ncloud_datastream_delete_schema - First observed
ncloud_datastream_delete_topic - First observed
ncloud_datastream_get_connector - First observed
ncloud_datastream_get_registry_config - First observed
ncloud_datastream_get_registry_info - First observed
ncloud_datastream_get_schema - First observed
ncloud_datastream_get_topic - First observed
ncloud_datastream_get_topic_prefix - First observed
ncloud_datastream_list_schemas - First observed
ncloud_datastream_list_topics - First observed
ncloud_datastream_send_message - First observed
ncloud_datastream_update_connector - First observed
ncloud_datastream_update_registry_config - First observed
ncloud_datastream_update_topic - First observed
ncloud_delete_acg - First observed
ncloud_delete_asg - First observed
ncloud_delete_block_storage - First observed
ncloud_delete_bucket - First observed
ncloud_delete_bucket_cors - First observed
ncloud_delete_bucket_encryption - First observed
ncloud_delete_bucket_lifecycle - First observed
ncloud_delete_cache_config_group - First observed
ncloud_delete_cache_instance - First observed
ncloud_delete_cache_manual_backup - First observed
ncloud_delete_certificate - First observed
ncloud_delete_custom_resource - First observed
ncloud_delete_deny_allow_group - First observed
ncloud_delete_fabric_cluster - First observed
ncloud_delete_group - First observed
ncloud_delete_init_scripts - First observed
ncloud_delete_integration - First observed
ncloud_delete_launch_config - First observed
ncloud_delete_lb_listeners - First observed
ncloud_delete_load_balancers - First observed
ncloud_delete_login_keys - First observed
ncloud_delete_maintenance - First observed
ncloud_delete_member_server_images - First observed
ncloud_delete_metrics_group - First observed
ncloud_delete_metrics_group_by_id - First observed
ncloud_delete_metrics_group_force - First observed
ncloud_delete_mongodb_instance - First observed
ncloud_delete_mongodb_users - First observed
ncloud_delete_monitor_group - First observed
ncloud_delete_monitor_group_force - First observed
ncloud_delete_mssql_instance - First observed
ncloud_delete_mssql_server - First observed
ncloud_delete_multiple_objects - First observed
ncloud_delete_mysql_databases - First observed
ncloud_delete_mysql_instance - First observed
ncloud_delete_mysql_server - First observed
ncloud_delete_mysql_users - First observed
ncloud_delete_nas_snapshot - First observed
ncloud_delete_nas_volumes - First observed
ncloud_delete_nat_gateway - First observed
ncloud_delete_network_acl - First observed
ncloud_delete_network_interface - First observed
ncloud_delete_object - First observed
ncloud_delete_pipeline - First observed
ncloud_delete_placement_group - First observed
ncloud_delete_postgresql_databases - First observed
ncloud_delete_postgresql_instance - First observed
ncloud_delete_postgresql_read_replica - First observed
ncloud_delete_postgresql_users - First observed
ncloud_delete_product_schema - First observed
ncloud_delete_public_ip - First observed
ncloud_delete_role - First observed
ncloud_delete_route_table - First observed
ncloud_delete_rule_group - First observed
ncloud_delete_rule_group_by_id - First observed
ncloud_delete_scaling_policy - First observed
ncloud_delete_scheduled_action - First observed
ncloud_delete_server_images - First observed
ncloud_delete_snapshots - First observed
ncloud_delete_sub_account - First observed
ncloud_delete_subnet - First observed
ncloud_delete_target_groups - First observed
ncloud_delete_vpc - First observed
ncloud_delete_vpc_peering - First observed
ncloud_detach_block_storage - First observed
ncloud_detach_network_interface - First observed
ncloud_detach_policy_from_group - First observed
ncloud_detach_policy_from_sub_account - First observed
ncloud_disable_flow_log - First observed
ncloud_disassociate_public_ip - First observed
ncloud_dns_apply_domain - First observed
ncloud_dns_create_domain - First observed
ncloud_dns_create_records - First observed
ncloud_dns_delete_domain - First observed
ncloud_dns_delete_records - First observed
ncloud_dns_get_domain_detail - First observed
ncloud_dns_get_query_count - First observed
ncloud_dns_list_domains - First observed
ncloud_dns_list_lb_records - First observed
ncloud_dns_list_records - First observed
ncloud_dns_rollback_domain - First observed
ncloud_dns_update_records - First observed
ncloud_edge_create_edge - First observed
ncloud_edge_create_profile - First observed
ncloud_edge_delete_certificate - First observed
ncloud_edge_delete_edge - First observed
ncloud_edge_delete_profile - First observed
ncloud_edge_edit_edge - First observed
ncloud_edge_get_certificate - First observed
ncloud_edge_get_edge - First observed
ncloud_edge_get_edge_stats - First observed
ncloud_edge_get_edge_status - First observed
ncloud_edge_get_profile - First observed
ncloud_edge_get_purge_history - First observed
ncloud_edge_list_certificates - First observed
ncloud_edge_list_edges - First observed
ncloud_edge_list_profiles - First observed
ncloud_edge_provision_certificate - First observed
ncloud_edge_purge - First observed
ncloud_edge_start_edge - First observed
ncloud_edge_stop_edge - First observed
ncloud_enable_flow_log - First observed
ncloud_execute_policy - First observed
ncloud_export_cache_backup - First observed
ncloud_export_logs - First observed
ncloud_export_mongodb_backup - First observed
ncloud_export_mongodb_log - First observed
ncloud_export_mssql_backup - First observed
ncloud_export_mssql_log - First observed
ncloud_export_mysql_backup - First observed
ncloud_export_mysql_log - First observed
ncloud_export_postgresql_backup - First observed
ncloud_export_postgresql_log - First observed
ncloud_flush_cache_server - First observed
ncloud_functions_create_action - First observed
ncloud_functions_create_package - First observed
ncloud_functions_create_trigger - First observed
ncloud_functions_delete_action - First observed
ncloud_functions_delete_package - First observed
ncloud_functions_delete_trigger - First observed
ncloud_functions_get_action - First observed
ncloud_functions_get_action_activation_detail - First observed
ncloud_functions_get_action_activations - First observed
ncloud_functions_get_activations - First observed
ncloud_functions_get_package - First observed
ncloud_functions_get_trigger - First observed
ncloud_functions_get_trigger_activation_detail - First observed
ncloud_functions_get_trigger_activations - First observed
ncloud_functions_invoke_action - First observed
ncloud_functions_invoke_trigger - First observed
ncloud_functions_link_trigger_action - First observed
ncloud_functions_list_actions - First observed
ncloud_functions_list_packages - First observed
ncloud_functions_list_triggers - First observed
ncloud_functions_unlink_trigger_action - First observed
ncloud_get_acg_detail - First observed
ncloud_get_acg_rules - First observed
ncloud_get_activity_detail - First observed
ncloud_get_activity_logs - First observed
ncloud_get_adjustment_types - First observed
ncloud_get_asg_detail - First observed
ncloud_get_block_storage_detail - First observed
ncloud_get_block_storage_volume_types - First observed
ncloud_get_bucket_acl - First observed
ncloud_get_bucket_cors - First observed
ncloud_get_bucket_encryption - First observed
ncloud_get_bucket_lifecycle - First observed
ncloud_get_bucket_location - First observed
ncloud_get_bucket_versioning - First observed
ncloud_get_cache_image_products - First observed
ncloud_get_cache_instance_detail - First observed
ncloud_get_cache_products - First observed
ncloud_get_cache_target_subnets - First observed
ncloud_get_cache_target_vpcs - First observed
ncloud_get_coin_history_list - First observed
ncloud_get_contract_demand_cost_list - First observed
ncloud_get_contract_summary_list - First observed
ncloud_get_contract_usage_list - First observed
ncloud_get_contract_usage_list_by_daily - First observed
ncloud_get_cost_relation_code_list - First observed
ncloud_get_credit_history_list - First observed
ncloud_get_current_region - First observed
ncloud_get_custom_resource - First observed
ncloud_get_dashboard_widget_image - First observed
ncloud_get_dashboard_widgets - First observed
ncloud_get_ddos_event_detail - First observed
ncloud_get_demand_cost_list - First observed
ncloud_get_deny_allow_group_detail - First observed
ncloud_get_discount_list - First observed
ncloud_get_extended_status - First observed
ncloud_get_fabric_cluster_detail - First observed
ncloud_get_fabric_cluster_pools - First observed
ncloud_get_file_plugin - First observed
ncloud_get_flow_log_config - First observed
ncloud_get_ids_event_detail - First observed
ncloud_get_init_script_detail - First observed
ncloud_get_integration - First observed
ncloud_get_launch_config_detail - First observed
ncloud_get_load_balancer_detail - First observed
ncloud_get_log_count_by_period - First observed
ncloud_get_log_count_by_type - First observed
ncloud_get_log_count_recent - First observed
ncloud_get_log_count_total - First observed
ncloud_get_log_export_history - First observed
ncloud_get_log_usage - First observed
ncloud_get_maintenance_detail - First observed
ncloud_get_member_server_image_detail - First observed
ncloud_get_member_server_image_list - First observed
ncloud_get_metrics_group - First observed
ncloud_get_mongodb_image_products - First observed
ncloud_get_mongodb_instance_detail - First observed
ncloud_get_mongodb_products - First observed
ncloud_get_mongodb_target_subnets - First observed
ncloud_get_mongodb_target_vpcs - First observed
ncloud_get_monitor_group - First observed
ncloud_get_mssql_image_products - First observed
ncloud_get_mssql_instance_detail - First observed
ncloud_get_mssql_products - First observed
ncloud_get_mssql_target_subnets - First observed
ncloud_get_mssql_target_vpcs - First observed
ncloud_get_mysql_image_products - First observed
ncloud_get_mysql_instance_detail - First observed
ncloud_get_mysql_products - First observed
ncloud_get_mysql_recovery_time - First observed
ncloud_get_mysql_target_subnets - First observed
ncloud_get_mysql_target_vpcs - First observed
ncloud_get_nas_snapshot_config_history - First observed
ncloud_get_nas_volume_access_control_rules - First observed
ncloud_get_nas_volume_detail - First observed
ncloud_get_nas_volume_rating_list - First observed
ncloud_get_nat_gateway_detail - First observed
ncloud_get_network_acl_detail - First observed
ncloud_get_network_acl_rules - First observed
ncloud_get_network_interface_detail - First observed
ncloud_get_notification_recipients - First observed
ncloud_get_object - First observed
ncloud_get_object_acl - First observed
ncloud_get_operation_status - First observed
ncloud_get_pipeline - First observed
ncloud_get_pipeline_history_detail - First observed
ncloud_get_pipeline_timezones - First observed
ncloud_get_placement_group_detail - First observed
ncloud_get_port_plugin - First observed
ncloud_get_postgresql_image_products - First observed
ncloud_get_postgresql_instance_detail - First observed
ncloud_get_postgresql_products - First observed
ncloud_get_postgresql_target_subnets - First observed
ncloud_get_postgresql_target_vpcs - First observed
ncloud_get_price_list - First observed
ncloud_get_process_plugin - First observed
ncloud_get_product_category_list - First observed
ncloud_get_product_demand_cost_by_discount_list - First observed
ncloud_get_product_demand_cost_list - First observed
ncloud_get_product_discount_history_list - First observed
ncloud_get_product_list - First observed
ncloud_get_product_price_list - First observed
ncloud_get_product_schema - First observed
ncloud_get_public_ip_detail - First observed
ncloud_get_public_ip_target_servers - First observed
ncloud_get_regions - First observed
ncloud_get_root_password - First observed
ncloud_get_root_password_list - First observed
ncloud_get_route_table_detail - First observed
ncloud_get_route_table_subnets - First observed
ncloud_get_routes - First observed
ncloud_get_rule_group - First observed
ncloud_get_rules_by_metrics_group - First observed
ncloud_get_rules_by_monitor_group - First observed
ncloud_get_scaling_process_types - First observed
ncloud_get_schema_keys - First observed
ncloud_get_server_detail - First observed
ncloud_get_server_image_detail - First observed
ncloud_get_server_images - First observed
ncloud_get_server_specs - First observed
ncloud_get_servers_top - First observed
ncloud_get_snapshot_detail - First observed
ncloud_get_sub_account_detail - First observed
ncloud_get_subnet_detail - First observed
ncloud_get_target_group_detail - First observed
ncloud_get_vpc_detail - First observed
ncloud_get_vpc_peering_detail - First observed
ncloud_get_zones - First observed
ncloud_gtm_create_geo_cidr_map - First observed
ncloud_gtm_create_policy - First observed
ncloud_gtm_create_profile - First observed
ncloud_gtm_delete_geo_cidr_map - First observed
ncloud_gtm_delete_policy - First observed
ncloud_gtm_delete_policy_health_check - First observed
ncloud_gtm_delete_profile - First observed
ncloud_gtm_get_geo_cidr_map_detail - First observed
ncloud_gtm_get_geolocation_info - First observed
ncloud_gtm_get_health_check_regions - First observed
ncloud_gtm_get_lb_types - First observed
ncloud_gtm_get_map_types - First observed
ncloud_gtm_get_policy_detail - First observed
ncloud_gtm_get_policy_resources - First observed
ncloud_gtm_get_profile_detail - First observed
ncloud_gtm_get_query_count - First observed
ncloud_gtm_get_resource_types - First observed
ncloud_gtm_list_geo_cidr_maps - First observed
ncloud_gtm_list_policies - First observed
ncloud_gtm_list_profiles - First observed
ncloud_gtm_update_geo_cidr_map - First observed
ncloud_gtm_update_policy - First observed
ncloud_gtm_update_policy_health_check - First observed
ncloud_gtm_update_policy_resource - First observed
ncloud_gtm_update_policy_resources - First observed
ncloud_gtm_update_profile - First observed
ncloud_hadoop_backup_config - First observed
ncloud_hadoop_change_node_count - First observed
ncloud_hadoop_change_node_spec - First observed
ncloud_hadoop_create_cluster - First observed
ncloud_hadoop_create_notebook - First observed
ncloud_hadoop_delete_cluster - First observed
ncloud_hadoop_delete_notebook - First observed
ncloud_hadoop_get_cluster_detail - First observed
ncloud_hadoop_get_notebook_detail - First observed
ncloud_hadoop_list_addons - First observed
ncloud_hadoop_list_buckets - First observed
ncloud_hadoop_list_cluster_types - First observed
ncloud_hadoop_list_clusters - First observed
ncloud_hadoop_list_image_products - First observed
ncloud_hadoop_list_login_keys - First observed
ncloud_hadoop_list_mysql_instances - First observed
ncloud_hadoop_list_mysql_users - First observed
ncloud_hadoop_list_notebook_buckets - First observed
ncloud_hadoop_list_notebook_components - First observed
ncloud_hadoop_list_notebook_images - First observed
ncloud_hadoop_list_notebook_products - First observed
ncloud_hadoop_list_notebooks - First observed
ncloud_hadoop_list_objects - First observed
ncloud_hadoop_list_products - First observed
ncloud_hadoop_list_target_subnets - First observed
ncloud_hadoop_list_target_vpcs - First observed
ncloud_hadoop_save_hive_metastore - First observed
ncloud_hadoop_test_hive_metastore - First observed
ncloud_head_bucket - First observed
ncloud_head_object - First observed
ncloud_imageoptimizer_create_project - First observed
ncloud_imageoptimizer_create_rule - First observed
ncloud_imageoptimizer_delete_project - First observed
ncloud_imageoptimizer_delete_rule - First observed
ncloud_imageoptimizer_get_project - First observed
ncloud_imageoptimizer_list_projects - First observed
ncloud_imageoptimizer_list_rules - First observed
ncloud_import_login_key - First observed
ncloud_initiate_multipart_upload - First observed
ncloud_interrupt_server - First observed
ncloud_kms_add_acl_rule - First observed
ncloud_kms_cancel_key_deletion - First observed
ncloud_kms_create_custom_key - First observed
ncloud_kms_create_key - First observed
ncloud_kms_create_token_generator - First observed
ncloud_kms_create_token_set - First observed
ncloud_kms_decrypt - First observed
ncloud_kms_delete_acl_rule - First observed
ncloud_kms_delete_key - First observed
ncloud_kms_delete_token_generator - First observed
ncloud_kms_disable_auto_rotation - First observed
ncloud_kms_disable_ip_acl - First observed
ncloud_kms_disable_key - First observed
ncloud_kms_disable_key_version - First observed
ncloud_kms_enable_auto_rotation - First observed
ncloud_kms_enable_ip_acl - First observed
ncloud_kms_enable_key - First observed
ncloud_kms_enable_key_version - First observed
ncloud_kms_encrypt - First observed
ncloud_kms_get_acl_rule_list - First observed
ncloud_kms_get_key_activity_logs - First observed
ncloud_kms_get_key_info - First observed
ncloud_kms_get_key_list - First observed
ncloud_kms_get_key_version_list - First observed
ncloud_kms_get_latest_use_info - First observed
ncloud_kms_get_public_key - First observed
ncloud_kms_get_token_generator - First observed
ncloud_kms_reencrypt - First observed
ncloud_kms_request_key_deletion - First observed
ncloud_kms_rotate_key - First observed
ncloud_kms_sign - First observed
ncloud_kms_update_key_name - First observed
ncloud_kms_update_memo - First observed
ncloud_kms_update_rotation_period - First observed
ncloud_kms_update_token_generator - First observed
ncloud_kms_verify - First observed
ncloud_list_acgs - First observed
ncloud_list_asg_activity_logs - First observed
ncloud_list_asgs - First observed
ncloud_list_av_events - First observed
ncloud_list_block_storage - First observed
ncloud_list_buckets - First observed
ncloud_list_cache_backup_details - First observed
ncloud_list_cache_backups - First observed
ncloud_list_cache_buckets - First observed
ncloud_list_cache_config_group_versions - First observed
ncloud_list_cache_config_groups - First observed
ncloud_list_cache_instances - First observed
ncloud_list_cache_manual_backup_details - First observed
ncloud_list_cache_manual_backups - First observed
ncloud_list_certificates - First observed
ncloud_list_custom_resources - First observed
ncloud_list_dashboards - First observed
ncloud_list_ddos_events - First observed
ncloud_list_deny_allow_groups - First observed
ncloud_list_export_buckets - First observed
ncloud_list_fabric_clusters - First observed
ncloud_list_file_plugins - First observed
ncloud_list_groups - First observed
ncloud_list_ids_events - First observed
ncloud_list_init_scripts - First observed
ncloud_list_integrations - First observed
ncloud_list_ips_events - First observed
ncloud_list_launch_configs - First observed
ncloud_list_lb_listener_certificates - First observed
ncloud_list_lb_listeners - First observed
ncloud_list_lb_rules - First observed
ncloud_list_load_balancers - First observed
ncloud_list_log_servers - First observed
ncloud_list_login_keys - First observed
ncloud_list_maintenances - First observed
ncloud_list_metrics_groups - First observed
ncloud_list_mongodb_backup_details - First observed
ncloud_list_mongodb_backups - First observed
ncloud_list_mongodb_buckets - First observed
ncloud_list_mongodb_instances - First observed
ncloud_list_mongodb_logs - First observed
ncloud_list_mongodb_users - First observed
ncloud_list_monitor_groups - First observed
ncloud_list_mssql_backup_details - First observed
ncloud_list_mssql_backups - First observed
ncloud_list_mssql_buckets - First observed
ncloud_list_mssql_character_sets - First observed
ncloud_list_mssql_config_groups - First observed
ncloud_list_mssql_folders - First observed
ncloud_list_mssql_instances - First observed
ncloud_list_mssql_log_backup_files - First observed
ncloud_list_mssql_log_files - First observed
ncloud_list_multipart_uploads - First observed
ncloud_list_mysql_backup_details - First observed
ncloud_list_mysql_backups - First observed
ncloud_list_mysql_databases - First observed
ncloud_list_mysql_events - First observed
ncloud_list_mysql_instances - First observed
ncloud_list_mysql_logs - First observed
ncloud_list_mysql_users - First observed
ncloud_list_nas_snapshots - First observed
ncloud_list_nas_volumes - First observed
ncloud_list_nat_gateways - First observed
ncloud_list_network_acls - First observed
ncloud_list_network_interfaces - First observed
ncloud_list_object_versions - First observed
ncloud_list_objects - First observed
ncloud_list_parts - First observed
ncloud_list_pipeline_history - First observed
ncloud_list_pipelines - First observed
ncloud_list_placement_groups - First observed
ncloud_list_policies - First observed
ncloud_list_port_plugins - First observed
ncloud_list_postgresql_backup_details - First observed
ncloud_list_postgresql_backups - First observed
ncloud_list_postgresql_buckets - First observed
ncloud_list_postgresql_databases - First observed
ncloud_list_postgresql_instances - First observed
ncloud_list_postgresql_logs - First observed
ncloud_list_postgresql_users - First observed
ncloud_list_process_plugins - First observed
ncloud_list_public_ips - First observed
ncloud_list_roles - First observed
ncloud_list_route_tables - First observed
ncloud_list_rule_groups - First observed
ncloud_list_scaling_policies - First observed
ncloud_list_scheduled_actions - First observed
ncloud_list_servers - First observed
ncloud_list_snapshots - First observed
ncloud_list_sub_accounts - First observed
ncloud_list_subnets - First observed
ncloud_list_target_groups - First observed
ncloud_list_targets - First observed
ncloud_list_vpc_peerings - First observed
ncloud_list_vpcs - First observed
ncloud_list_waf_events - First observed
ncloud_livestation_create_channel - First observed
ncloud_livestation_delete_channel - First observed
ncloud_livestation_get_channel - First observed
ncloud_livestation_get_service_url - First observed
ncloud_livestation_list_channels - First observed
ncloud_livestation_list_quality_settings - First observed
ncloud_livestation_resume_channel - First observed
ncloud_livestation_start_record - First observed
ncloud_livestation_stop_channel - First observed
ncloud_livestation_stop_record - First observed
ncloud_livestation_update_channel - First observed
ncloud_ncr_create_registry - First observed
ncloud_ncr_delete_image - First observed
ncloud_ncr_delete_registry - First observed
ncloud_ncr_delete_tag - First observed
ncloud_ncr_get_image - First observed
ncloud_ncr_get_registry - First observed
ncloud_ncr_get_tag_detail - First observed
ncloud_ncr_list_images - First observed
ncloud_ncr_list_registries - First observed
ncloud_ncr_list_tags - First observed
ncloud_ncr_update_image - First observed
ncloud_ncs_copy_object - First observed
ncloud_ncs_create_bucket - First observed
ncloud_ncs_delete_bucket - First observed
ncloud_ncs_delete_object - First observed
ncloud_ncs_delete_objects - First observed
ncloud_ncs_get_object - First observed
ncloud_ncs_head_bucket - First observed
ncloud_ncs_head_object - First observed
ncloud_ncs_list_buckets - First observed
ncloud_ncs_list_objects - First observed
ncloud_ncs_put_object - First observed
ncloud_nks_add_subnet - First observed
ncloud_nks_create_access_entry - First observed
ncloud_nks_create_cluster - First observed
ncloud_nks_create_node_pool - First observed
ncloud_nks_delete_access_entry - First observed
ncloud_nks_delete_addon - First observed
ncloud_nks_delete_cluster - First observed
ncloud_nks_delete_node_pool - First observed
ncloud_nks_delete_worker_node - First observed
ncloud_nks_get_access_entry - First observed
ncloud_nks_get_available_addon - First observed
ncloud_nks_get_available_addon_version - First observed
ncloud_nks_get_cluster - First observed
ncloud_nks_get_cluster_addon - First observed
ncloud_nks_get_ip_acl - First observed
ncloud_nks_get_kubeconfig - First observed
ncloud_nks_get_oidc - First observed
ncloud_nks_get_server_images - First observed
ncloud_nks_get_server_specs - First observed
ncloud_nks_get_versions - First observed
ncloud_nks_install_addons - First observed
ncloud_nks_list_access_entries - First observed
ncloud_nks_list_available_addons - First observed
ncloud_nks_list_cluster_addons - First observed
ncloud_nks_list_clusters - First observed
ncloud_nks_list_node_pools - First observed
ncloud_nks_list_worker_nodes - First observed
ncloud_nks_reset_kubeconfig - First observed
ncloud_nks_set_audit_log - First observed
ncloud_nks_set_ip_acl - First observed
ncloud_nks_set_oidc - First observed
ncloud_nks_set_return_protection - First observed
ncloud_nks_update_access_entry - First observed
ncloud_nks_update_addon - First observed
ncloud_nks_update_auth_type - First observed
ncloud_nks_update_lb_subnet - First observed
ncloud_nks_update_node_pool - First observed
ncloud_nks_update_node_pool_label - First observed
ncloud_nks_update_node_pool_subnet - First observed
ncloud_nks_update_node_pool_taint - First observed
ncloud_nks_update_secret_encryption - First observed
ncloud_nks_upgrade_cluster - First observed
ncloud_nks_upgrade_node_pool - First observed
ncloud_pca_activate_sub_ca - First observed
ncloud_pca_create_ca - First observed
ncloud_pca_create_ocsp - First observed
ncloud_pca_delete_ca - First observed
ncloud_pca_delete_ocsp - First observed
ncloud_pca_get_ca - First observed
ncloud_pca_get_ca_chain - First observed
ncloud_pca_get_ca_crl - First observed
ncloud_pca_get_crl_config - First observed
ncloud_pca_get_end_cert - First observed
ncloud_pca_get_sub_csr - First observed
ncloud_pca_issue_end_cert - First observed
ncloud_pca_list_cas - First observed
ncloud_pca_list_end_certs - First observed
ncloud_pca_revoke_end_cert - First observed
ncloud_pca_rotate_crl - First observed
ncloud_pca_sign_end_csr - First observed
ncloud_pca_sign_sub_csr - First observed
ncloud_pca_trim_ca - First observed
ncloud_pca_update_ca - First observed
ncloud_pca_update_crl_config - First observed
ncloud_pipeline_list_sourcebuild_projects - First observed
ncloud_pipeline_list_sourcecommit_branches - First observed
ncloud_pipeline_list_sourcecommit_repos - First observed
ncloud_pipeline_list_sourcedeploy_projects - First observed
ncloud_pipeline_list_sourcedeploy_scenarios - First observed
ncloud_pipeline_list_sourcedeploy_stages - First observed
ncloud_put_bucket_acl - First observed
ncloud_put_bucket_cors - First observed
ncloud_put_bucket_encryption - First observed
ncloud_put_bucket_lifecycle - First observed
ncloud_put_bucket_versioning - First observed
ncloud_put_object - First observed
ncloud_put_object_acl - First observed
ncloud_put_scaling_policy - First observed
ncloud_put_scheduled_action - First observed
ncloud_query_monitoring_data - First observed
ncloud_query_monitoring_data_multiple - First observed
ncloud_query_widget_preview - First observed
ncloud_reboot_cache_server - First observed
ncloud_reboot_mongodb_server - First observed
ncloud_reboot_mssql_server - First observed
ncloud_reboot_mysql_server - First observed
ncloud_reboot_postgresql_server - First observed
ncloud_reboot_server - First observed
ncloud_register_external_certificate - First observed
ncloud_remove_acg_inbound_rule - First observed
ncloud_remove_acg_outbound_rule - First observed
ncloud_remove_file_plugin - First observed
ncloud_remove_lb_listener_certificate - First observed
ncloud_remove_member_server_image_sharing - First observed
ncloud_remove_nas_volume_access_control - First observed
ncloud_remove_network_acl_inbound - First observed
ncloud_remove_network_acl_outbound - First observed
ncloud_remove_nic_acg - First observed
ncloud_remove_placement_group_server - First observed
ncloud_remove_port_plugin - First observed
ncloud_remove_process_plugin - First observed
ncloud_remove_resource_from_rules - First observed
ncloud_remove_route - First observed
ncloud_remove_route_table_subnet - First observed
ncloud_remove_server_image_sharing - First observed
ncloud_remove_target - First observed
ncloud_resource_attach_group - First observed
ncloud_resource_attach_tag - First observed
ncloud_resource_detach_group - First observed
ncloud_resource_detach_tag - First observed
ncloud_resource_list_groups - First observed
ncloud_resource_list_resources - First observed
ncloud_restore_nas_volume_with_snapshot - First observed
ncloud_restore_object - First observed
ncloud_resume_processes - First observed
ncloud_run_pipeline - First observed
ncloud_search_event_by_id - First observed
ncloud_search_event_count - First observed
ncloud_search_events - First observed
ncloud_search_logs - First observed
ncloud_search_metric_list - First observed
ncloud_send_monitoring_data - First observed
ncloud_sens_get_sms_status - First observed
ncloud_sens_list_alimtalk_templates - First observed
ncloud_sens_list_sms_requests - First observed
ncloud_sens_send_alimtalk - First observed
ncloud_sens_send_push - First observed
ncloud_sens_send_sms - First observed
ncloud_ses_add_node - First observed
ncloud_ses_change_disk_size - First observed
ncloud_ses_change_node_spec - First observed
ncloud_ses_change_node_type - First observed
ncloud_ses_create_cluster - First observed
ncloud_ses_create_cluster_g3 - First observed
ncloud_ses_create_snapshot - First observed
ncloud_ses_delete_cluster - First observed
ncloud_ses_get_cluster_acg - First observed
ncloud_ses_get_cluster_detail - First observed
ncloud_ses_get_cluster_server_images - First observed
ncloud_ses_get_dashboard - First observed
ncloud_ses_get_import_buckets - First observed
ncloud_ses_get_import_history - First observed
ncloud_ses_get_login_keys - First observed
ncloud_ses_get_monitoring - First observed
ncloud_ses_get_node_list - First observed
ncloud_ses_get_node_products - First observed
ncloud_ses_get_node_spec_detail - First observed
ncloud_ses_get_os_monitoring - First observed
ncloud_ses_get_os_products - First observed
ncloud_ses_get_server_generations - First observed
ncloud_ses_get_server_specs - First observed
ncloud_ses_get_snapshot_buckets - First observed
ncloud_ses_get_snapshot_history - First observed
ncloud_ses_get_subnet_list - First observed
ncloud_ses_get_subnet_list_g3 - First observed
ncloud_ses_get_upgrade_progress - First observed
ncloud_ses_get_versions - First observed
ncloud_ses_get_vpc_list - First observed
ncloud_ses_list_clusters - First observed
ncloud_ses_precheck_upgrade - First observed
ncloud_ses_reset_password - First observed
ncloud_ses_restart_cluster - First observed
ncloud_ses_run_import - First observed
ncloud_ses_set_snapshot_api_key - First observed
ncloud_ses_set_snapshot_schedule - First observed
ncloud_ses_stop_import - First observed
ncloud_ses_unset_snapshot_schedule - First observed
ncloud_ses_upgrade_version - First observed
ncloud_set_block_storage_protection - First observed
ncloud_set_deny_allow_group_desc - First observed
ncloud_set_deny_allow_group_ips - First observed
ncloud_set_desired_capacity - First observed
ncloud_set_file_plugins - First observed
ncloud_set_lb_description - First observed
ncloud_set_lb_subnet - First observed
ncloud_set_member_server_image_sharing - First observed
ncloud_set_nas_volume_access_control - First observed
ncloud_set_nas_volume_return_protection - First observed
ncloud_set_nat_gateway_description - First observed
ncloud_set_network_acl_description - First observed
ncloud_set_port_plugins - First observed
ncloud_set_process_plugins - First observed
ncloud_set_protect_termination - First observed
ncloud_set_region - First observed
ncloud_set_route_table_description - First observed
ncloud_set_subnet_network_acl - First observed
ncloud_set_target_group_description - First observed
ncloud_set_targets - First observed
ncloud_set_vpc_peering_description - First observed
ncloud_sourcebuild_cancel_build - First observed
ncloud_sourcebuild_create_project - First observed
ncloud_sourcebuild_delete_project - First observed
ncloud_sourcebuild_get_build_history - First observed
ncloud_sourcebuild_get_project - First observed
ncloud_sourcebuild_list_branches - First observed
ncloud_sourcebuild_list_buckets - First observed
ncloud_sourcebuild_list_compute - First observed
ncloud_sourcebuild_list_docker_engines - First observed
ncloud_sourcebuild_list_os - First observed
ncloud_sourcebuild_list_projects - First observed
ncloud_sourcebuild_list_registries - First observed
ncloud_sourcebuild_list_repositories - First observed
ncloud_sourcebuild_list_runtime_versions - First observed
ncloud_sourcebuild_list_runtimes - First observed
ncloud_sourcebuild_start_build - First observed
ncloud_sourcebuild_update_project - First observed
ncloud_sourcecommit_create_repo - First observed
ncloud_sourcecommit_delete_repo - First observed
ncloud_sourcecommit_delete_repo_by_id - First observed
ncloud_sourcecommit_edit_repo - First observed
ncloud_sourcecommit_edit_repo_by_id - First observed
ncloud_sourcecommit_get_repo - First observed
ncloud_sourcecommit_get_repo_by_id - First observed
ncloud_sourcecommit_list_branches - First observed
ncloud_sourcecommit_list_repos - First observed
ncloud_sourcecommit_list_tags - First observed
ncloud_sourcecommit_set_default_branch - First observed
ncloud_sourcedeploy_approve_canary - First observed
ncloud_sourcedeploy_approve_deploy - First observed
ncloud_sourcedeploy_cancel_deploy - First observed
ncloud_sourcedeploy_create_project - First observed
ncloud_sourcedeploy_create_scenario - First observed
ncloud_sourcedeploy_create_stage - First observed
ncloud_sourcedeploy_delete_project - First observed
ncloud_sourcedeploy_delete_scenario - First observed
ncloud_sourcedeploy_delete_stage - First observed
ncloud_sourcedeploy_edit_scenario - First observed
ncloud_sourcedeploy_edit_stage - First observed
ncloud_sourcedeploy_get_autoscaling_groups - First observed
ncloud_sourcedeploy_get_canary_analysis_report - First observed
ncloud_sourcedeploy_get_canary_analysis_steps - First observed
ncloud_sourcedeploy_get_deploy_history - First observed
ncloud_sourcedeploy_get_deploy_history_detail - First observed
ncloud_sourcedeploy_get_k8s_clusters - First observed
ncloud_sourcedeploy_get_objectstorage_buckets - First observed
ncloud_sourcedeploy_get_objectstorage_objects - First observed
ncloud_sourcedeploy_get_scenario - First observed
ncloud_sourcedeploy_get_servers - First observed
ncloud_sourcedeploy_get_sourcebuild_projects - First observed
ncloud_sourcedeploy_get_sourcecommit_branches - First observed
ncloud_sourcedeploy_get_sourcecommit_repos - First observed
ncloud_sourcedeploy_get_stage - First observed
ncloud_sourcedeploy_get_target_groups - First observed
ncloud_sourcedeploy_list_projects - First observed
ncloud_sourcedeploy_list_scenarios - First observed
ncloud_sourcedeploy_list_stages - First observed
ncloud_sourcedeploy_reject_canary - First observed
ncloud_sourcedeploy_reject_deploy - First observed
ncloud_sourcedeploy_request_deploy_approval - First observed
ncloud_sourcedeploy_start_deploy - First observed
ncloud_start_server - First observed
ncloud_stop_server - First observed
ncloud_suspend_processes - First observed
ncloud_terminate_server - First observed
ncloud_unassign_secondary_ips - First observed
ncloud_update_asg - First observed
ncloud_update_custom_resource - First observed
ncloud_update_extended_disable - First observed
ncloud_update_extended_enable - First observed
ncloud_update_fabric_cluster - First observed
ncloud_update_integration - First observed
ncloud_update_maintenance - First observed
ncloud_update_metrics_group - First observed
ncloud_update_monitor_group - First observed
ncloud_update_pipeline - First observed
ncloud_update_product_schema - First observed
ncloud_update_rule_group - First observed
ncloud_upgrade_mysql_version - First observed
ncloud_upload_part - First observed
ncloud_vodstation_create_category - First observed
ncloud_vodstation_create_channel - First observed
ncloud_vodstation_delete_channel - First observed
ncloud_vodstation_get_channel - First observed
ncloud_vodstation_list_categories - First observed
ncloud_vodstation_list_channels - First observed
ncloud_vodstation_start_channel - First observed
ncloud_vodstation_stop_channel - First observed
ncloud_vodstation_update_channel
TDQS
Scored across 1300 tools
The 1300-tool surface contains many overlapping or near-duplicate operations across legacy and newer services: legacy Object Storage vs Ncloud Storage bucket tools, Certificate Manager 1.0 vs 2.0, Cloud Outbound Mailer vs SENS, and normal/force/by-id delete variants. Service-prefixed names and long descriptions help somewhat, but several tools still have unclear boundaries that invite misselection.
Most tools follow a predictable snake_case ncloud_<service>_<verb>_<resource> pattern, such as ncloud_kms_create_key and ncloud_dns_list_domains. Some older/generic tools omit a service prefix, and abbreviations like ncs, cm2, ses, and cdss create minor inconsistency, but the overall convention remains readable and stable.
A single MCP server exposing 1300 tools is an extreme mismatch for practical agent use. Even if each tool maps to a real API, the set is far too large to navigate, select from, or maintain coherently without heavy external structuring.
The surface covers an unusually broad slice of Ncloud services, including compute, networking, databases, storage, CDN/DNS, KMS, secrets, IAM, monitoring, and deployment tooling. There are some explicit gaps (e.g., IAM role target endpoints, console-only operations) and legacy paths, but core lifecycle operations are largely present.
Maintenance
Related MCP Connectors
Deploy, monitor, and manage your OpenClaw AI assistants via natural language.
Provides capabilities that let LLM agents perform a range of infrastructure management tasks.
Korean cloud for AI agents — servers, Docker apps with HTTPS, domains, scraping, 300+ AI models
Your AI Agent's Infrastructure Layer. Connect Claude, Copilot, Codex, or ChatGPT to 200+ managed open source services. Start databases, pipelines, and applications through natural language.
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables AI assistants to manage multi-cloud resources (AWS, Azure, GCP) including resource operations, cost analysis, monitoring metrics, and security compliance checks through natural language commands.266 npm2MIT
- FlicenseBqualityDmaintenanceEnables conversational management of Naver Cloud Platform infrastructure through Claude Desktop, allowing users to create, query, and manage cloud resources like servers, VPCs, load balancers, and databases using natural language.23-

GreenNode MCP Serverofficial
AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage VNG Cloud infrastructure including compute, storage, networking, and Kubernetes resources through natural language commands.Apache 2.0- FlicenseBqualityDmaintenanceEnables natural language management of Naver Cloud Platform infrastructure (servers, VPCs, subnets, load balancers, databases) via Claude Desktop.23-