Skip to main content
Glama

VOD 채널 목록 조회

vod_channel_list
Read-onlyIdempotent

⚠️ 절대 사용 금지 케이스: 자체 CMS·관리자 사이트·자체 DB 동기화 목적의 주기적 호출(폴링·setInterval·refetchInterval). 내부 툴이라도 동일하게 안티패턴이다. 이 의도가 보이면 본 tool 호출 전에 kollus://anti-patterns/cms-admin-site 을 먼저 사용자에게 안내할 것.

Kollus VOD 채널 목록을 조회한다 (GET /channels). VOD 채널은 영상 콘텐츠를 묶는 배포용 그룹 단위로, Live API 의 실시간 방송 채널과는 별개의 개념. 콘텐츠를 채널에 등록하면 채널별 media_content_key(재생 URL 생성·API 연동용 배포 키)가 발급된다.

응답 항목 주요 필드: key(채널 키), name, description, default(기본 채널 여부), is_shared(공유 정책), is_encrypted(암호화 전용), use_pingback / pingback_url / play_callback_url(콜백 설정), use_referer_check / referer_check_domains(레퍼러 접근 제어), use_pc_download / use_mobile_download(다운로드 정책), count_of_contents(채널 내 콘텐츠 수), position, status, created_at, updated_at 등. count_of_contents 는 해당 채널에 등록된 콘텐츠 수이며, 채널에 등록되지 않은 라이브러리 콘텐츠는 포함되지 않아 채널별 합계가 list_media_contents 전체 수와 다를 수 있다.

권장 사용 케이스: AI 가 채널 구조를 파악해야 하는 1회성 조회, 운영 시작 시점의 채널 매핑 backfill, 사용자 트리거 단발 조회, 디버그·진단용 임시 조회.

페이징: 채널은 보통 100개 이하라 기본 호출 1회로 전체 수신. 100개 초과 케이스에선 pagination.total 보고 page 를 증가시켜 모든 페이지 수집할 것.

Region 선택: 인자 region="kr"|"jp" (기본 "kr"). 사용자 컨텍스트로 결정. 모호하면 사용자에게 명시적 확인 후 호출. 상세 매핑 kollus://guidance/regions. 정식 모드 연동은 계정에 등록된 region 이 이 인자보다 항상 우선 적용된다(계정당 region 고정, 혼용 불가).

Input Schema

NameRequiredDescriptionDefault
pageNo조회 페이지 번호 (1부터)
orderNo정렬 기준. 기본 position_asc (노출 순서).
regionNoAPI region 선택. 기본 "kr" (글로벌 사용자도 kr 사용). 사용자가 일본법인·일본 콘솔(c-jp.kollus.com 등)·일본 자격증명을 쓰는 경우 "jp". 모호하면 사용자에게 확인 후 선택 — 추측 금지 (wrong-region 호출은 401). 도메인 매핑 단일 진실원천: kollus://guidance/regions.
statusNo채널 활성화 상태 필터: 0=비활성, 1=활성
per_pageNo페이지당 결과 개수 (기본 100, 최대 100). 채널은 배포 단위 메타데이터라 보통 100개 이하 → 1회 호출로 전체 수신. 100개 초과 시 응답의 pagination.total · pagination.current_page 를 확인해 page 증가시켜 추가 호출.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/idempotent annotations, the description discloses that account-registered region always overrides the region argument (mixing not allowed), that a wrong-region call returns 401, and the pagination behavior for >100 channels. It also flags that count_of_contents excludes unregistered library content, which is a non-obvious data caveat.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Paragraphs are clearly front-loaded by topic (prohibition, purpose, response fields, recommended uses, paging, region) and each block earns its place, including the long response-field enumeration that substitutes for a missing output schema. It is slightly verbose, with the paging and per_page behavior restated in both the description and the schema, but nothing is misleading or padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With five optional params, no output schema, and no sibling that covers channels, the description carries the full burden and does: it enumerates response fields, explains paging, and resolves the region decision. 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.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, yet the description still adds meaning the schema cannot: why per_page defaults to 100 (channels are typically under 100), how to page using pagination.total once exceeded, and the precedence rule that makes the region argument advisory rather than authoritative. It also explains region selection by user context (Japanese console/credentials → jp).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with the underlying endpoint (GET /channels), and disambiguates the concept from Live API broadcast channels and from library-level content in list_media_contents. An agent can tell exactly what entity this lists and why counts may differ from the sibling content tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use cases (one-off structure discovery, startup mapping backfill, user-triggered single lookups, debugging) and explicit when-NOT-to-use with a named anti-pattern and a redirect resource (kollus://anti-patterns/cms-admin-site) before calling. Region decision rules and the 'ask the user when ambiguous' rule are also spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources