Skip to main content
Glama

RV MCP 서버

Claude와 같은 AI 어시스턴트를 업계 표준 미디어 리뷰 애플리케이션인 Autodesk/Tweak RV와 연결하는 MCP(Model Context Protocol) 서버입니다. 자연어를 통해 재생 제어, 샷 비교, 색 보정 조정 및 리뷰 세션 관리를 수행할 수 있습니다.

RV 내부에 별도의 플러그인이 필요하지 않습니다. remote-eval을 통한 Mu 스크립팅과 RV의 내장 네트워크 리스너를 사용합니다.

요구 사항

  • OpenRV (또는 RV 2022.3.1 이상), 네트워크 모드 활성화 상태

  • Python 3.10+

  • uv 패키지 관리자

Related MCP server: resolve-mcp

빠른 시작

1. 네트워킹과 함께 RV 시작

RV → Networking → Enable Network(기본 포트 45124)를 통해 RV에서 네트워킹을 활성화합니다.

또는 명령줄에서 실행합니다:

rv -network -networkPort 45124

2. 설치 및 등록

Claude Code (CLI):

claude mcp add --scope user rv-mcp -- uv run --no-sync --directory /path/to/RV_MCP rv-mcp

참고: --no-sync는 여러 Claude 세션이 동일한 MCP 서버를 공유할 때 파일 잠금 충돌을 방지합니다. 종속성을 변경한 후에는 수동으로 uv sync를 실행하세요.

Claude Desktop (~/.claude.json):

{
  "mcpServers": {
    "rv-mcp": {
      "command": "uv",
      "args": ["run", "--no-sync", "--directory", "/path/to/RV_MCP", "rv-mcp"]
    }
  }
}

환경 변수 (선택 사항):

변수

기본값

설명

RV_MCP_HOST

127.0.0.1

RV 네트워크 호스트

RV_MCP_PORT

45124

RV 네트워크 포트

3. 사용 방법

Claude에게 미디어 로드, 재생 제어, 샷 비교 또는 색상 조정을 요청하세요. 서버가 자연어를 RV 명령으로 자동 변환합니다.

아키텍처

Claude (stdio/MCP) --> FastMCP Server --> RV Network Protocol (TCP:45124) --> RV

이 서버는 RV의 RvCommunicator를 기반으로 하는 사용자 지정 프로토콜을 사용하여 RV와 지속적인 TCP 연결을 유지합니다. 주요 설계 결정 사항:

  • 소켓 손실 시 자동 재연결을 포함한 지속적인 연결

  • 동시 도구 호출을 위한 threading.Lock을 통한 스레드 안전성

  • DISCONNECT를 전송하는 atexit 핸들러를 통한 깔끔한 종료(이 과정이 없으면 RV가 향후 연결을 거부함)

  • Mu 문자열 처리 — 반환 값은 자동으로 따옴표가 제거되고 이스케이프 해제됨

프로토콜 흐름

1. Connect TCP to 127.0.0.1:45124
2. Send: NEWGREETING <len> rv-mcp rvController
3. Send: PINGPONGCONTROL 1 0          (disable heartbeat)
4. Recv: NEWGREETING <len> <rv-name>   (consume RV's greeting)
5. For each command:
   Send: MESSAGE <len> RETURNEVENT remote-eval * { require commands; <mu_code> }
   Recv: MESSAGE <len> RETURN <value>
6. On shutdown:
   Send: MESSAGE <len> DISCONNECT

OCIO 색상 관리

이 서버는 완전한 OCIO v2를 지원합니다. $OCIO가 설정되면 RV는 DCC 앱(3ds Max/Redshift, Nuke 등)에서 사용하는 것과 동일한 디스플레이 변환을 일치시킬 수 있습니다.

자동 구성

RV가 미디어를 로드할 때 OCIO를 자동으로 구성하는 rv_ocio_setup.py 스크립트가 포함되어 있습니다:

  • EXR/HDR/TX 파일은 장면 선형(scene-linear, scene_linear 역할을 통한 ACEScg)으로 자동 감지됩니다.

  • 디스플레이 변환은 구성의 기본값(예: sRGB / ACES 1.0 SDR-video)으로 설정됩니다.

  • EXR의 색도 메타데이터는 활성 구성의 색 공간과 일치됩니다.

설치하려면 rv_ocio_setup.py를 RV 지원 경로에 복사하세요:

# Windows
copy rv_ocio_setup.py %APPDATA%\RV\Python\

# Linux/macOS
cp rv_ocio_setup.py ~/.rv/Python/

RV의 내장 ocio_source_setup 패키지가 이 재정의를 자동으로 감지하고 사용합니다.

MCP를 통한 수동 OCIO

도구

설명

get_ocio_config

활성 OCIO 구성에서 색 공간, 디스플레이, 뷰 및 룩 목록을 가져옵니다

set_ocio_colorspace

소스에 대한 입력 색 공간을 설정합니다(OCIOFile 노드 삽입)

set_ocio_display

디스플레이 변환을 설정합니다(OCIODisplay 노드 삽입)

set_ocio_look

소스에 OCIO 룩을 적용합니다

get_ocio_state

현재 OCIO 노드 상태를 JSON으로 가져옵니다

clear_ocio

OCIO 노드를 제거하고 기본 파이프라인을 복원합니다

Redshift + RV 색상 일치

Redshift의 OCIO 구성($OCIO = C:\ProgramData\redshift\Data\OCIO\config.ocio)을 사용하는 경우, 해당 파일 규칙이 EXR을 "Raw"로 표시한다는 점에 유의하세요. rv_ocio_setup.py 스크립트는 부동 소수점 형식을 장면 선형으로 감지하여 이를 재정의하며, Redshift의 렌더 뷰와 마찬가지로 RV에서도 ACES 톤매퍼가 적용되도록 합니다.

도구 (총 47개)

실행 (1)

도구

설명

execute_mu

임의의 Mu 코드 실행 — 전용 도구에서 다루지 않는 모든 작업을 위한 탈출구

OCIO (6)

도구

설명

get_ocio_config

OCIO 구성 정보(색 공간, 디스플레이, 뷰, 룩) 가져오기

set_ocio_colorspace

소스에 대한 OCIO 입력 색 공간 설정

set_ocio_display

OCIO 디스플레이 변환 설정

set_ocio_look

OCIO 룩 적용

get_ocio_state

현재 OCIO 상태를 JSON으로 가져오기

clear_ocio

OCIO 노드 제거, 기본값 복원

재생 (17)

도구

설명

load_source

미디어 파일 로드(이미지 시퀀스, 동영상 또는 단일 이미지)

load_sources

여러 미디어 파일을 한 번에 로드

play

재생 시작

stop

재생 중지

toggle_playback

재생/중지 전환, 새 상태 반환

get_frame

현재 프레임 번호 가져오기

set_frame

특정 프레임으로 이동

step_forward

N 프레임만큼 앞으로 이동(기본값 1)

step_backward

N 프레임만큼 뒤로 이동(기본값 1)

set_in_point

인 포인트 설정(재생 범위 시작)

set_out_point

아웃 포인트 설정(재생 범위 끝)

get_in_out_points

현재 인/아웃 포인트를 JSON으로 가져오기

set_fps

재생 초당 프레임 수(FPS) 설정

get_fps

현재 재생 FPS 가져오기

set_realtime

실시간 모드 활성화/비활성화(FPS 유지를 위해 프레임 건너뛰기)

set_play_mode

루프 모드 설정: loop, once 또는 pingpong

set_playback_speed

재생 방향 및 속도 설정(1=정방향, -1=역방향, 2=2배속 등)

get_frame_range

전체 재생 상태를 JSON으로 가져오기(프레임, 범위, 인/아웃, 재생 여부, FPS)

소스 (7)

도구

설명

get_sources

로드된 모든 소스 노드를 JSON 배열로 나열

get_source_media_info

상세 미디어 정보 가져오기(해상도, 프레임 범위, FPS, 비트 심도, 채널)

get_sources_at_frame

특정 프레임에서 보이는 소스 노드 가져오기

new_session

새 빈 세션 생성

clear_session

현재 세션에서 모든 소스 지우기

save_session

세션을 .rv 파일로 저장

get_session_info

세션 상태를 JSON으로 가져오기(뷰 노드, 프레임 범위, 소스 개수)

비교 (4)

도구

설명

set_view_mode

뷰 전환: sequence(순서대로 재생), stack(비교를 위한 레이어), layout(나란히 배치)

set_composite_type

스택 합성 모드 설정: over, add, difference, -difference, replace, topmost

toggle_wipe

A/B 와이프 비교 전환(스택 뷰로 자동 전환)

get_view_info

현재 뷰 상태를 JSON으로 가져오기

색상 (12)

도구

설명

set_lut

대상(look, linearize, display)에 LUT 파일(.3dl, .csp, .cube 등) 로드

clear_lut

대상에서 LUT 비활성화

set_cdl

CDL 값 설정(슬로프, 오프셋, 파워, 채도) — 부분 업데이트 지원

clear_cdl

CDL 색 보정 비활성화

set_exposure

노출 설정(채널별 또는 전체)

set_gamma

감마 보정 설정

set_saturation

채도 설정

get_color_settings

현재 색 보정 상태를 JSON으로 가져오기

set_display_gamma

디스플레이 감마 설정(예: sRGB와 유사한 경우 2.2)

set_display_srgb

sRGB 디스플레이 변환 활성화/비활성화

set_background

뷰포트 배경 설정: black, checker, grey18, grey50, crosshatch

사용 예시

푸티지 로드 및 리뷰

"Load the EXR sequence at /shots/sh010/comp/sh010_comp.1-100#.exr"
"Play it back at 24fps"
"Go to frame 50"
"Set in point at 20 and out point at 80"

두 버전 비교

"Load both /shots/sh010/comp_v1.mov and /shots/sh010/comp_v2.mov"
"Switch to stack view"
"Set composite to difference mode"
"Toggle the wipe to compare side by side"

색 보정

"Apply CDL with slope [1.1, 0.95, 1.0] and saturation 1.2"
"Load the ACES LUT from /luts/sRGB.cube"
"Set exposure to 0.5"
"Show me the current color settings"

고급 (원시 Mu)

"Execute this Mu code: { require commands; let s = sources(); string(s.size()); }"

프로젝트 구조

RV_MCP/
├── pyproject.toml          # Package config, entry point, dependencies
├── README.md
├── .gitignore
└── src/
    ├── __init__.py
    ├── server.py           # FastMCP server + RvClient instantiation
    ├── rv_client.py        # Persistent TCP client (RV network protocol)
    └── tools/
        ├── __init__.py
        ├── execute.py      # execute_mu — raw Mu escape hatch
        ├── playback.py     # 17 playback/transport tools
        ├── sources.py      # 7 source & session tools
        ├── compare.py      # 4 view/compare tools
        ├── color.py        # 12 color/LUT/CDL tools
        └── ocio.py         # OCIO v2 color management tools

문제 해결

"Could not connect to RV"

  • RV가 -network 플래그와 함께 실행 중인지 확인하세요.

  • 45124 포트가 방화벽에 의해 차단되지 않았는지 확인하세요.

  • -networkPort 45124를 사용하여 포트를 명시적으로 설정하세요.

충돌 후 RV가 연결을 거부함

서버가 DISCONNECT를 보내지 않고 종료되면 RV가 새 연결을 거부할 수 있습니다. RV를 다시 시작하여 상태를 지우세요. 서버에는 정상 작동 시 이를 방지하기 위한 atexit 핸들러가 포함되어 있습니다.

Mu 코드 오류

  • 코드 블록은 항상 { require commands; ... }로 감싸세요.

  • Mu는 if/then/else의 두 분기를 모두 평가하므로 존재하지 않을 수 있는 노드에 대한 속성 액세스를 피하세요.

  • 파일 경로는 슬래시(/)를 사용해야 하며, escape_mu_string()이 이를 자동으로 처리합니다.

시간 초과 오류

기본 시간 초과는 30초입니다. Mu 코드가 더 오래 걸리는 경우(예: 대규모 시퀀스 로드) 시간 초과가 발생할 수 있습니다. 긴 작업에는 execute_mu를 사용하고 더 작은 단계로 나누는 것을 고려하세요.

개발

# Install dependencies
uv sync

# Run the server directly
uv run rv-mcp

# Run with debug logging
uv run python -m src.server

라이선스

MIT

Available Tools

47 tools
clear_cdlA

Deactivate CDL color correction.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations, the description only says 'deactivate' without explaining side effects, state changes, prerequisites (e.g., session required), or whether it resets to defaults, leaving 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.

Conciseness5/5

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

A single, clear, and concise sentence with no superfluous words, 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.

Completeness4/5

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

For a parameterless tool with an output schema, the description covers the basic action but lacks context on behavioral impacts and integration with sibling tools, leaving minor gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist, so schema coverage is 100% trivially. Baseline is 4 for zero-parameter tools, and the description does not add beyond the schema, which is acceptable.

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?

The description clearly states the specific action 'Deactivate' and the resource 'CDL color correction', distinguishing it from sibling tools like clear_lut, clear_ocio, and set_cdl.

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

Usage Guidelines2/5

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 set_cdl or other clear_* tools, missing explicit context for when to deactivate.

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

clear_lutA

Deactivate the LUT on a target.

Args: target: Which LUT to clear: "look", "linearize", or "display".

ParametersJSON Schema
NameRequiredDescriptionDefault
targetNolook

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations provided, and the description only states the action without disclosing side effects, requirements, or error behavior. It does not indicate whether the operation is reversible or requires an active session.

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

Conciseness5/5

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

The description is extremely concise with two sentences, zero wasted words, and front-loaded with the action.

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

Completeness4/5

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 an output schema, the description covers the essential functionality and parameter options. It lacks only minor details like default behavior or potential no-ops.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The description adds semantic meaning by listing the three target values (look, linearize, display) beyond the schema's bare type and default. This compensates for the 0% schema description coverage.

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?

The description directly states the action: 'Deactivate the LUT on a target.' The verb 'clear' and resource 'LUT' are clear, and the tool is distinguished from siblings like clear_cdl and set_lut.

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

Usage Guidelines3/5

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

The description implies usage for deactivating LUTs but does not explicitly state when to use this tool instead of alternatives or mention prerequisites or limitations.

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

clear_ocioA

Remove OCIO nodes and restore default RV pipeline.

Args: target: What to clear — "linearize", "display", "look", or "all".

ParametersJSON Schema
NameRequiredDescriptionDefault
targetNoall

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of disclosure. It states the basic action (remove nodes, restore default) but does not disclose side effects, reversibility, or behavior for different targets beyond the list. This is insufficient for a destructive 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.

Conciseness5/5

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

The description is very concise: a single line for the main action followed by a structured Args section. Every sentence earns its place with no waste.

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

Completeness3/5

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

The tool has one parameter and an output schema, so the description need not explain return values. However, the behavioral transparency gaps and lack of usage guidance make it only minimally adequate for a simple but destructive tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

The input schema has 0% description coverage for the parameter. However, the description provides the valid values for 'target' (linearize, display, look, all), which adds meaning. Yet it does not explain what each value does, so the contribution is partial.

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?

Description clearly states the tool removes OCIO nodes and restores default RV pipeline, with a specific verb and resource. It distinguishes from sibling tools like clear_cdl or clear_lut that deal with different color management elements.

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

Usage Guidelines3/5

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

The description lists valid target values but does not explicitly state when to use this tool over alternatives or when not to use it. Usage is implied by the tool name and sibling names, 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.

clear_sessionA

Clear all sources from the current session.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description states it clears sources from the session, but lacks detail on side effects, undoability, or impact on other session state like playback or view settings. Basic but incomplete.

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?

The description is a single concise sentence with no wasted words, but it could be more informative while remaining concise. Slightly under-specified for the context.

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

Completeness3/5

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

Given no parameters and presence of output schema, the description covers the action but does not explain return behavior or edge cases. Lacks comprehensive context for an agent to fully understand implications.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist in the input schema, so schema coverage is 100%. The description adds no parameter information, which is acceptable. Baseline for 0-parameter tools is 4.

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?

The description 'Clear all sources from the current session' uses a specific verb and resource, clearly distinguishing it from sibling tools like 'clear_cdl' or 'clear_lut' that clear specific sub-resources.

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

Usage Guidelines2/5

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 'new_session' or individual clear tools. Usage context is implied but lacks explicit exclusions or prerequisites.

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

execute_muA

Execute arbitrary Mu code in RV and return the result.

The code is evaluated via remote-eval. Use 'require commands;' at the start if you need commands functions like play(), stop(), etc.

Examples: execute_mu("{ require commands; string(frame()); }") execute_mu("{ require commands; play(); "playing"; }") execute_mu("{ require commands; sources(); }")

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

The description mentions 'remote-eval' execution but lacks details on potential side effects, security implications, or error behavior. With no annotations, 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.

Conciseness5/5

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

The description is concise with a clear summary, a usage note, and three illustrative examples. Every sentence adds value and the structure is front-loaded.

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

Completeness4/5

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

The description covers basic execution context and return values through examples. With an output schema present, it compensates for missing return type details. Could include more on execution environment limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

The description has 0% schema coverage, but provides examples showing the expected format (curly braces, semicolons). However, it does not formally describe the parameter's syntax, return value expectations, or error handling.

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?

The description explicitly states 'Execute arbitrary Mu code in RV and return the result,' which is a specific verb+resource. No sibling tool performs code execution, making it distinct.

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

Usage Guidelines4/5

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

The description provides examples and notes the need to 'require commands;' for certain functions, giving clear context. It does not explicitly state when not to use, but the unique functionality makes usage intuitive.

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

get_color_settingsA

Get current color correction settings as JSON.

Requires at least one source loaded in the session.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

No annotations were provided, so the description carries full burden. It correctly implies this is a read-only operation (getting settings), with no side effects or destructive actions mentioned. The context is sufficient for a simple getter.

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

Conciseness5/5

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

Two sentences, no fluff. The first sentence immediately states the purpose, and the second adds a critical prerequisite. Every word earns its place.

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?

Given the tool has no parameters and an output schema exists to describe the return value, the description adequately covers prerequisites and purpose. No further information is needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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%. Per guidelines, baseline is 4. The description adds meaning by specifying the output format (JSON), which is not in the schema.

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?

The description uses a specific verb 'Get' and clearly identifies the resource 'current color correction settings' and format 'as JSON'. It distinguishes itself from sibling tools like get_session_info or get_source_media_info.

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

Usage Guidelines4/5

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

States a clear prerequisite 'Requires at least one source loaded in the session', which tells the agent when the tool can be used. It implicitly indicates not to use it without a source, and no alternative tool is suggested because this is the only getter for color settings.

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

get_fpsA

Get the current playback FPS.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Without annotations, the description carries the full burden. It correctly implies a read-only operation but adds no further behavioral context (e.g., whether it fails if no source is loaded). For a simple getter, this is minimally adequate.

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

Conciseness5/5

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

The description is a single, concise sentence with no redundant information. 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.

Completeness4/5

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, output schema exists), the description is largely sufficient. However, it could hint at the expected output type (e.g., a float) to further assist the agent, but the presence of an output schema mitigates this.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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 add parameter info. The schema coverage is 100% (empty), meeting the baseline expectation. The description does not mislead.

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?

The description clearly states the verb 'Get' and the resource 'current playback FPS'. It distinguishes from sibling tool 'set_fps' by indicating it is a read operation. Despite the null title, the tool name 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.

Usage Guidelines2/5

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., set_fps). There is no mention of prerequisites, such as needing a session or playback active. 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.

get_frameA

Get the current frame number in RV.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only states the core function without mentioning side effects, performance, or whether it requires an active session.

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

Conciseness5/5

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

The description is a single, complete sentence with no wasted words. It is appropriately concise for a simple getter tool.

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

Completeness4/5

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, output schema exists), the description is mostly adequate. It could mention that the output is an integer, but the output schema likely handles that.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

With zero parameters, the baseline is 4. The description adds no parameter information, but the input schema is empty, so no further detail is necessary.

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?

The description clearly states the tool gets the current frame number in RV, with a specific verb and resource. It distinguishes from siblings like get_fps and get_frame_range which retrieve different data.

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

Usage Guidelines2/5

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. For example, it does not mention that it only retrieves the current frame and not a range, nor does it contrast with set_frame for modification.

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

get_frame_rangeA

Get the full frame range and current state as JSON.

Returns JSON with: frame, frameStart, frameEnd, inPoint, outPoint, playing, fps.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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 does not explicitly state that the tool is read-only or safe, though that is implied by 'Get'. It lists the return fields, which is helpful, but does not disclose any potential side effects or prerequisites, such as requiring an active session.

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

Conciseness5/5

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

The description is extremely concise: two sentences that front-load the purpose and then enumerate the return fields. Every word is informative with no fluff.

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

Completeness4/5

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

Given zero parameters and the presence of an output schema, the description provides enough context by listing the returned fields. However, it could mention prerequisites (e.g., a session must exist) or that the tool returns the current state of the playback. Still, for a simple getter, it is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

There are no parameters, so the input schema is trivially covered. The description adds value by explicitly listing the output fields, which helps the agent understand what data it will receive. This goes beyond the schema, which only indicates no parameters.

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?

The description clearly states it 'Get the full frame range and current state as JSON', which is a specific verb-resource pair. It distinguishes itself from sibling tools like get_frame, get_fps, and get_in_out_points by returning a composite of multiple frame-related properties.

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

Usage Guidelines2/5

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. For example, it doesn't mention that this tool should be used when all frame range and state information is needed at once, whereas get_frame or get_fps might be used for individual values. This lack of direction could lead to suboptimal tool selection.

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

get_in_out_pointsA

Get the current in/out points as JSON.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states it gets the points as JSON, but does not disclose any behavioral details such as safety, side effects, or the structure of the JSON output. The read-only nature is inferred but 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.

Conciseness5/5

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

Single sentence, front-loaded, no unnecessary 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.

Completeness3/5

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

Given no parameters and an existing output schema, the description is adequate but minimally complete. It could optionally mention the JSON keys (e.g., "in_point" and "out_point") to improve clarity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

There are no parameters, and the schema coverage is 100%. The description adds no additional parameter semantics, but is not required to. A score of 4 is appropriate as a baseline for zero parameters.

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?

The description clearly states it retrieves the current in/out points in JSON format, which is a specific verb and resource. It distinguishes itself from sibling tools like set_in_point and set_out_point, which perform writes instead of reads.

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

Usage Guidelines3/5

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

The description implies it is for reading the current state, and the sibling tools indicate that set operations exist for writing. However, there is no explicit guidance on when to use this tool versus alternatives or any prerequisites.

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

get_ocio_configA

Get OCIO config information as JSON.

Returns color spaces, displays, views, and looks from the active OCIO config (or a specific config file).

Args: config_path: Optional path to an OCIO config file. If omitted, uses the $OCIO environment variable.

ParametersJSON Schema
NameRequiredDescriptionDefault
config_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It implies a safe read operation and mentions returning JSON. However, it lacks explicit details on potential side effects, authentication needs, or rate limits, which would strengthen transparency.

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

Conciseness5/5

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

The description is concise and well-structured, using sections (Returns, Args) to present information clearly without unnecessary words.

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

Completeness4/5

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

Given the output schema exists, the description appropriately focuses on the input parameter and the type of config data returned. It is complete enough for a retrieval tool, though it could briefly mention that the output is a JSON object.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The input schema has 0% coverage, but the description compensates by explaining the config_path parameter's purpose and default behavior (uses $OCIO environment variable if omitted). This adds meaning beyond the schema.

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?

The description clearly states the tool 'get OCIO config information as JSON' and lists the specific config elements returned (color spaces, displays, views, looks). This distinguishes it from siblings like get_ocio_state which returns current state.

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

Usage Guidelines4/5

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

The description indicates when to use this tool (to retrieve config info) and explains the optional parameter. However, it does not explicitly state when not to use it or mention alternative tools for related tasks.

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

get_ocio_stateA

Get current OCIO state for all sources and display as JSON.

Returns which sources have OCIO nodes and their settings.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

No annotations provided; description implies read-only operation but does not explicitly state non-destructive behavior 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.

Conciseness5/5

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

Two sentences, no unnecessary words. Front-loaded with purpose and output format.

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?

For a zero-parameter tool with output schema, description adequately explains return value (list of sources with OCIO settings). Complete given tool simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist, so schema coverage is 100%. Description confirms it returns state for all sources, adding value beyond schema.

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?

Clearly states verb 'get', resource 'OCIO state for all sources', and output format 'JSON'. Distinguishes from sibling tools like get_ocio_config which gets config.

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

Usage Guidelines3/5

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. However, as a simple getter, usage is fairly obvious.

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

get_session_infoB

Get current session information as JSON.

Returns: viewNode, frame, frameStart, frameEnd, sourceCount.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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. It implies a read-only operation but does not explicitly state that no modifications occur, nor does it discuss 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.

Conciseness4/5

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

The description is very concise, consisting of two lines that state the purpose and list return fields. It is front-loaded and avoids unnecessary words.

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

Completeness3/5

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

The description lists return fields and an output schema exists, but it does not explain the meaning or format of each field. For a zero-parameter getter, this 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.

Parameters4/5

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 omits parameter details. With 100% schema coverage, no additional parameter explanation is needed.

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

Purpose4/5

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

The description clearly states the tool retrieves current session information in JSON format and lists specific fields (viewNode, frame, etc.). This distinguishes it from sibling getters by specifying the exact return set.

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

Usage Guidelines2/5

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

No guidance on when to use this tool over alternatives like get_view_info or get_frame. The description does not provide context for usage scenarios or prerequisites.

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

get_source_media_infoB

Get detailed media info for a source node.

Args: source_node: The source node name (e.g. "sourceGroup000000").

ParametersJSON Schema
NameRequiredDescriptionDefault
source_nodeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavioral traits. It implies a read operation but does not explicitly state it is non-destructive, safe, or whether it requires special permissions. Missing details on error handling 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.

Conciseness5/5

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

Highly concise: two sentences and one parameter definition. No extraneous information. Every sentence serves a purpose.

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

Completeness4/5

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 an output schema, the description covers the core purpose and parameter. Could be improved by noting that the source node must exist and that the tool is a query.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

With 0% schema description coverage, the description adds value by explaining the source_node parameter with an example. However, it could further clarify where to find valid source node names.

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

Purpose4/5

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

Clearly states it gets detailed media info for a source node. Verb and resource are specific, but 'detailed media info' could be more precise. Distinguishes from siblings like get_sources and get_view_info.

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

Usage Guidelines2/5

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. Lacks context on prerequisites, such as needing to call get_sources first to obtain a valid source_node name.

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

get_sourcesB

List all sources currently loaded in RV as JSON.

Returns a JSON array with source node names.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It explicitly states the return format (JSON array with source node names), implying it is a read operation. However, it does not confirm no side effects or discuss permissions/rate limits, leaving some ambiguity.

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

Conciseness5/5

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

The description is extremely concise with two sentences. The first sentence front-loads the core purpose, and every word adds value.

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

Completeness4/5

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 an output schema exists, the description adequately covers the essential behavior. It could mention that it returns all sources without filtering, but for a simple read operation, it is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

There are no parameters, so schema description coverage is 100%. Following the baseline rule, a score of 3 is appropriate since no parameter information is needed.

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

Purpose4/5

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

The description states it lists all sources loaded in RV as JSON, specifying the verb 'list' and the resource 'sources'. It is clear and unambiguous, though it does not differentiate from sibling tools like get_sources_at_frame.

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

Usage Guidelines2/5

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 get_source_media_info or get_sources_at_frame. 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.

get_sources_at_frameA

Get source nodes visible at a specific frame.

Args: frame: Frame number to query (-1 for current frame).

ParametersJSON Schema
NameRequiredDescriptionDefault
frameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations provided; description says 'get source nodes visible at a specific frame' but lacks details on side effects, performance, or what 'visible' entails. Carries full burden 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.

Conciseness5/5

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

Two short sentences, no redundant info, front-loaded with purpose. Every word earns its place.

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

Completeness4/5

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

Has output schema, so return details not needed. Lacks differentiation from 'get_sources', but for a simple query tool, description is functionally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Schema coverage is 0%, but description explains 'frame' parameter meaning and special value -1 for current frame, adding useful context beyond the schema.

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?

Clearly states 'Get source nodes' (verb+resource) and 'visible at a specific frame' (scope), which distinguishes it from sibling 'get_sources' that likely returns all sources.

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

Usage Guidelines3/5

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

Implies usage when you need sources at a particular frame, but does not explicitly mention when not to use or list alternatives like 'get_sources'.

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

get_view_infoA

Get current view state as JSON.

Returns: viewNode, viewType, and wipe state.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

With no annotations provided, the description carries full burden. It states the return format (JSON with viewNode, viewType, wipe state) but does not disclose whether the operation is read-only, has side effects, or requires any permissions. The description provides basic behavioral info 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.

Conciseness5/5

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

The description is extremely concise with only two sentences, each adding value. It is front-loaded with the purpose and specifies return fields without unnecessary fluff.

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?

Given the tool has no parameters and an output schema exists, the description adequately explains what it returns. It is complete for a simple getter tool with no input complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

There are no parameters, so per guidelines baseline is 4. The description adds no parameter info, but none is needed.

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?

The description clearly states it gets the current view state as JSON, listing the specific outputs (viewNode, viewType, wipe state). This distinguishes it from sibling tools, most of which are setters or other getters with different purposes.

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

Usage Guidelines3/5

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

The description implies usage when needing the current view state, but does not explicitly state when to use this tool versus alternatives or when not to use it. Among siblings, it is clearly a getter, but no direct comparison or exclusionary advice is provided.

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

load_sourceA

Load a media file (image sequence, movie, or single image) into RV.

Args: file_path: Path to the media file. For sequences use RV notation e.g. "/path/to/image.1-100#.exr" or just the path to one frame.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description should fully convey behavioral traits. It fails to disclose side effects (e.g., whether it adds to or replaces existing sources, any permissions needed, or session 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.

Conciseness5/5

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

The description is concise (two sentences plus an arg note), with a clear structure: purpose first, then parameter details. Every sentence adds value.

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

Completeness4/5

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 an output schema, the description covers the essential aspect (file_path usage). However, it could mention what the tool returns or state changes, but overall it is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The input schema has 0% description coverage, but the tool description explains the 'file_path' parameter in detail, including RV notation and an example. This adds significant meaning beyond the schema.

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

Purpose4/5

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

The description clearly states the tool loads a media file into RV, specifying types (image sequence, movie, single image). It is specific but lacks explicit differentiation from the sibling tool 'load_sources'.

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

Usage Guidelines3/5

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

Provides useful usage hints like RV notation for sequences and an example, but does not explicitly state when to use this tool versus alternatives (e.g., 'load_sources'). No when-not-to-use or prerequisite info.

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

load_sourcesA

Load multiple media files into RV at once.

Args: file_paths: List of paths to media files.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

No annotations provided; description only says 'Load', with no disclosure of whether sources are appended/replaced, error handling, required permissions, or side effects. Needs more 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.

Conciseness5/5

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

Extremely concise: two sentences with no filler. Every word is purposeful. Ideal length for a simple tool.

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

Completeness2/5

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

For a loading operation with array parameter, description lacks critical details: append vs replace behavior, response information (output schema exists but unused), and handling of invalid paths. Incomplete despite tool's moderate complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

Schema coverage 0% (no schema descriptions). Description adds minimal meaning: 'List of paths to media files'. Does not specify format, supported URIs, or constraints. Partial improvement over bare schema.

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?

Description explicitly states it loads multiple media files into RV, with a clear verb ('Load') and resource. Differentiates from sibling 'load_source' (singular) by indicating batch operation ('at once').

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

Usage Guidelines4/5

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

Implied usage: use for multiple files vs single via sibling 'load_source'. Lacks explicit when-not or alternative guidance, but is sufficient given tool naming and description.

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

new_sessionA

Create a new empty session, clearing all current sources.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

No annotations provided; description carries burden. It discloses the clearing behavior but does not mention side effects like discarding unsaved changes or impact on playback. Adequate but not thorough.

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

Conciseness5/5

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

Single sentence, front-loaded, no unnecessary words. Every word contributes to the purpose.

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

Completeness4/5

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

For a simple tool with no parameters and an output schema, the description is mostly sufficient. Missing context about when to use vs siblings, but otherwise clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist, and description coverage is 100%. Per guidelines, baseline is 4. Description adds no parameter info but doesn't need to.

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

Purpose4/5

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

The description clearly states it creates a new empty session and clears current sources. It distinguishes from sibling 'clear_session' which likely only clears, but lacks explicit differentiation.

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

Usage Guidelines2/5

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 'clear_session' or 'save_session'. The description does not mention prerequisites or context for usage.

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

playB

Start playback in RV.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full behavioral burden. It simply states 'start playback' without detailing side effects, such as whether it resets playback position or continues from current frame.

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?

Extremely concise at three words, no unnecessary content. However, it may be overly terse, omitting important context.

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

Completeness2/5

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

Given the complexity of playback and rich sibling tools, the description is too minimal. It does not mention whether playback starts from the beginning or current frame, or any prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

There are no parameters, and schema coverage is 100%. Baseline score of 4 applies as description adds no parameter information, but none is needed.

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

Purpose4/5

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

The description clearly states the action 'Start playback' and the target 'RV'. It uses a specific verb and resource. However, it does not differentiate from sibling tools like 'toggle_playback' which also controls playback state.

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

Usage Guidelines2/5

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 'toggle_playback' or 'stop'. The description lacks context for appropriate usage scenarios.

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

save_sessionC

Save the current session to an .rv file.

Args: file_path: Path for the .rv session file.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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. It does not mention whether saving overwrites an existing file, requires specific permissions, or the nature of the .rv file format. It also doesn't state if the session continues after saving.

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?

The description is brief and front-loaded with the purpose and a parameter list. Every sentence earns its place, though it could be slightly expanded to cover behavioral details without becoming verbose.

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

Completeness3/5

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 parameter) and the presence of an output schema (which likely defines the return value), the description is mostly adequate. However, it lacks mention of overwrite behavior or error conditions, which would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

The description includes a parameter explanation for 'file_path' (Path for the .rv session file), which adds meaning beyond the input schema that only defines the type as string. However, with only one parameter and no additional details (e.g., allowed extensions), the value added is modest.

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

Purpose4/5

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

The description clearly states the tool saves the current session to a .rv file, specifying the verb 'Save' and resource 'current session' and output file. This distinguishes it from siblings like clear_session (clear) and new_session (create new).

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

Usage Guidelines2/5

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., clear_session, new_session) or what prerequisites are needed. The description does not mention any context or conditions for using this tool.

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

set_backgroundB

Set the viewport background.

Args: method: One of "black", "checker", "grey18", "grey50", "crosshatch".

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNoblack

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavioral traits. It only states the action without revealing side effects, persistence, or state changes. Minimal disclosure.

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

Conciseness5/5

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

Two sentences with a clear bullet list for args. No extraneous text, front-loaded purpose.

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

Completeness3/5

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

For a simple tool, it covers purpose and parameter options. Missing details on return value, side effects, or whether the change is session-wide. Output schema exists but is not utilized in description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Input schema has 0% description coverage, but the description lists valid values for the method parameter (black, checker, etc.), adding meaning. However, it doesn't explain the visual appearance of each option.

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

Purpose4/5

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

Description clearly states 'Set the viewport background', identifying the verb and resource. It distinguishes from siblings like set_view_mode, but could be more specific about the scope of the background change.

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

Usage Guidelines2/5

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

No guidelines on when to use this tool versus alternatives like set_view_mode. No prerequisites or context provided.

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

set_cdlB

Set CDL (Color Decision List) values.

All parameters are optional — only provided values are changed.

Args: slope: RGB slope values [r, g, b]. offset: RGB offset values [r, g, b]. power: RGB power values [r, g, b]. saturation: Global saturation value.

ParametersJSON Schema
NameRequiredDescriptionDefault
slopeNo
offsetNo
powerNo
saturationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, description carries full burden. It mentions only provided values are changed (non-destructive merging), but lacks disclosure of side effects, permissions, or idempotency. Minimal behavioral context beyond the mutation hint.

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

Conciseness5/5

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

Description is compact with clear sections (intro, optional note, args list). No redundant sentences; every part adds value.

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

Completeness3/5

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

Explains parameters well but omits return value (despite having output schema), interaction with session state, and relationship to siblings. Adequate for a straightforward setter but could provide more system context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Schema coverage is 0%, but description adds meaning by explaining each param (e.g., 'RGB slope values [r, g, b]'). Saturation description is vague ('Global saturation value'), but overall compensates for lack of schema descriptions.

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

Purpose4/5

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

Clearly states 'Set CDL (Color Decision List) values', specifying verb and resource. However, lacks explicit differentiation from sibling tools like set_saturation or set_lut, though CDL context is unique.

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

Usage Guidelines3/5

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

States 'All parameters are optional — only provided values are changed', giving clear usage pattern. But does not specify when not to use, prerequisites (e.g., needing a session), or compare with siblings.

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

set_composite_typeA

Set the compositing mode when in stack view.

Automatically switches to stack view if not already in it.

Args: composite_type: One of "over", "add", "difference", "-difference", "replace", "topmost".

ParametersJSON Schema
NameRequiredDescriptionDefault
composite_typeNoover

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

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

With no annotations, the description bears full responsibility for behavioral disclosure. It mentions the auto-switch to stack view, which is a key side effect. But it does not mention other behavioral traits like whether the change is reversible, if it affects other settings, or error responses. A score of 3 reflects adequate but not comprehensive coverage.

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

Conciseness5/5

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

The description is concise: two sentences followed by a list of allowed values. It front-loads the purpose and provides necessary details without extraneous information. Every sentence earns its place.

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

Completeness4/5

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

Given the simple input schema and existence of an output schema (not shown), the description covers the key aspects: purpose, auto-switch behavior, and parameter values. It does not explain prerequisites (e.g., loaded source) or return values, but the output schema likely covers returns. A score of 4 reflects sufficient completeness for a straightforward setter tool.

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?

The input schema has 0% description coverage and only provides a default value without enum constraints. The description lists all allowed values ('over', 'add', 'difference', '-difference', 'replace', 'topmost'), which is essential for correct invocation. This fully compensates for the schema's lack of constraints.

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?

The description clearly states 'Set the compositing mode when in stack view', specifying the verb (set) and resource (compositing mode) with context (stack view). This distinguishes it from sibling set_* tools like set_cdl or set_lut, which operate on different parameters.

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

Usage Guidelines4/5

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

The description notes that it automatically switches to stack view if not already in it, giving context for when the tool is appropriate. However, it does not explicitly exclude cases or name alternatives, though sibling tools cover distinct settings.

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

set_display_gammaB

Set display gamma.

Args: gamma: Display gamma value (e.g. 2.2 for sRGB-like).

ParametersJSON Schema
NameRequiredDescriptionDefault
gammaYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

The description only states the operation ('Set display gamma') without disclosing behavioral details such as side effects, reversibility, or scope. With no annotations to fall back on, this is insufficient for safe autonomous use.

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?

The description is very concise with a clear front-loaded purpose. The Args line is slightly formal but not wasteful; it effectively communicates the parameter meaning without redundancy.

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

Completeness3/5

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

For a simple single-parameter tool, the description is minimally adequate. However, it lacks context about whether the setting is temporary or persistent, and does not mention the return value despite an output schema existing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The description adds useful context beyond the input schema by noting gamma values like 2.2 for sRGB, which helps the agent understand expected values. Given 0% schema description coverage, this compensation is valuable.

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

Purpose4/5

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

The description clearly states the verb ('Set') and resource ('display gamma'), making the purpose immediately understandable. However, it does not differentiate from the sibling tool 'set_gamma', which could be confused as similar functionality.

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

Usage Guidelines2/5

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 'set_gamma' or 'set_display_srgb'. The agent is left to infer context without explicit usage cues.

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

set_display_srgbA

Enable or disable sRGB display transform.

Args: enabled: True to enable sRGB, False to disable.

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It succinctly describes the toggle behavior but omits any side effects, persistence, or interaction with other settings. Adequate for a simple boolean.

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?

The description is very concise—just one line and a docstring—with no unnecessary words. It is front-loaded with the purpose. Could be structured slightly better but is efficient.

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

Completeness3/5

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

Given the tool's simplicity and one parameter, the description covers the basic action. However, it lacks information about the output (if any) and whether the effect is immediate or session-bound. Adequate but not fully comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The docstring adds clear semantic meaning to the 'enabled' parameter beyond the schema: 'True to enable sRGB, False to disable.' This compensates for the 0% schema description coverage.

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?

The description clearly states the tool enables or disables the sRGB display transform, a specific verb+resource action. It distinguishes from sibling tools like set_display_gamma or set_cdl by targeting a particular transform.

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

Usage Guidelines3/5

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

The description implies usage when needing to toggle sRGB, but does not provide explicit guidance on when to use versus alternatives, nor does it mention any prerequisites or contexts.

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

set_exposureB

Set exposure adjustment.

Args: value: Exposure value (0.0 = no change). channel: "all" for uniform, or "r", "g", "b" for per-channel.

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYes
channelNoall

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states 'Set exposure adjustment.' No mention of side effects, reversibility, or whether it modifies the underlying image. Minimal 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.

Conciseness3/5

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

Description is short but includes an Args section that reads like code. The natural language part is one sentence. Could be more concise and front-loaded, but not overly verbose.

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

Completeness3/5

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

Given output schema exists (not shown), return values not needed. But the description lacks context on whether exposure adjustment applies per frame or globally, and no mention of animation or real-time effects. Adequate but minimal.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Schema coverage is 0%, but the description adds meaning: value is exposure with 0.0 as neutral, channel is 'all' or per-channel ('r','g','b'). This clarifies parameters beyond the schema's type/default.

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

Purpose4/5

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

The description clearly states 'Set exposure adjustment,' with verb 'set' and object 'exposure adjustment.' It distinguishes from siblings like set_gamma or set_saturation by specifying exposure. However, it lacks context on what exposure adjustment entails (e.g., brightness compensation) but is still clear.

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

Usage Guidelines2/5

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 set_gamma or set_saturation. The description only implies use when exposure needs adjustment, with no exclusion criteria or context scenarios.

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

set_fpsC

Set the playback frames per second.

Args: fps: Target FPS value.

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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 lacks any mention of side effects, valid ranges, immediate application, or other behavioral traits 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.

Conciseness4/5

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

The description is very concise, using only a single sentence plus a docstring line. It is not wasteful, though it sacrifices informativeness for brevity.

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

Completeness2/5

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

Given no annotations and an output schema (not shown), the description fails to provide enough context for an agent to use the tool correctly, such as the effect on playback state or interaction with other settings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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

The description adds minimal value over the schema: it restates the parameter name and a vague 'Target FPS value'. With 0% schema description coverage, the agent needs more detail on allowed values or constraints.

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?

The description clearly states the verb 'set' and the resource 'playback frames per second', which is distinct from siblings like set_exposure or set_gamma. It exactly matches 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.

Usage Guidelines2/5

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., set_playback_speed). There is no mention of prerequisites or typical contexts, leaving the agent to guess.

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

set_frameB

Go to a specific frame in RV.

Args: frame: The frame number to jump to.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits. It only says 'jump to' a frame, but doesn't state what happens if the frame is out of range, whether playback stops, 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.

Conciseness4/5

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

Very concise with two short sentences. The first sentence clearly states the purpose. No fluff, but could be slightly more structured.

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

Completeness3/5

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 an output schema, the description is adequate but lacks any mention of return values, frame range constraints, or behavior in edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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

Schema coverage is 0%, so the description must compensate. It only restates the parameter name ('frame: The frame number to jump to.'), adding minimal meaning beyond the schema.

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?

The description clearly states the tool's purpose: 'Go to a specific frame in RV.' It uses a specific verb ('go to') and resource ('frame'), and it distinguishes from siblings like 'get_frame' and 'step_forward'.

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

Usage Guidelines2/5

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., 'step_forward' or 'get_frame'). No mention of prerequisites, frame constraints, or explicit when-not-to-use.

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

set_gammaB

Set gamma correction.

Args: value: Gamma value (1.0 = no change).

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

The description reveals that a value of 1.0 means no change, which is a behavioral detail beyond the schema. However, no annotations exist, and the description does not disclose side effects, permissions, 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.

Conciseness5/5

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

The description is extremely concise with two short sentences. The purpose is front-loaded ('Set gamma correction.') and every word adds value.

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

Completeness3/5

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

For a one-parameter tool with an output schema, the description provides minimal but adequate information. It lacks context about the object being modified (e.g., current grade or layer), which would help align with sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The 'Args' section explains that 'value' is the gamma correction amount and that 1.0 implies no change, adding meaning beyond the bare schema. Since schema description coverage is 0%, this compensation is effective.

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

Purpose4/5

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

The description clearly states it sets gamma correction, a specific adjustment. However, it does not distinguish from the sibling tool 'set_display_gamma', which might have a different scope.

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

Usage Guidelines2/5

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 lacks 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.

set_in_pointB

Set the in-point (start of playback range).

Args: frame: Frame number for the in-point.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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 does not mention side effects (e.g., overwriting existing in-point), frame validation, or any impact on playback. Minimal transparency 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.

Conciseness4/5

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

The description is very short and front-loaded with the purpose. The args line is somewhat redundant with the schema but adds a bit of explanation. It could include more useful info without being verbose, but it's efficient.

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

Completeness3/5

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) and existence of output schema, the description is minimally adequate. It lacks context on constraints, side effects, or typical usage scenarios, but provides the core purpose and parameter meaning.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

The description adds 'Frame number for the in-point' to the parameter, clarifying its purpose. However, with 0% schema coverage, it could provide more detail (e.g., valid range, units). Adds basic meaning beyond schema but lacks depth.

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?

The description clearly states the verb 'Set' and the resource 'in-point', and explains it as the 'start of playback range'. This distinguishes it from siblings like set_out_point and get_in_out_points.

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

Usage Guidelines2/5

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 does not mention prerequisites, context, or when not to use it. The description only states the function without usage direction.

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

set_lutA

Load a LUT file and activate it.

Args: lut_file_path: Path to the LUT file (.3dl, .csp, .cube, etc.). target: Where to apply: "look" (color pipeline), "linearize" (input linearization), "display" (display transform).

ParametersJSON Schema
NameRequiredDescriptionDefault
lut_file_pathYes
targetNolook

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

Annotations are absent, so the description carries the burden. It discloses file formats and target options but omits behavioral details like whether it overrides existing LUTs, immediate activation, or side effects on other settings. Adequate but missing common aspects.

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

Conciseness5/5

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

The description is concise, front-loaded with the main purpose, and structured with an 'Args' section. Each sentence adds value; no redundant content.

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

Completeness4/5

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

Covers essential aspects like action, file types, and targets. Lacks details on error handling, return values (output schema exists but not explained), global vs. per-clip application, and behavior when target already set. Mostly complete with minor gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Schema coverage is 0%, but the description adds significant meaning by explaining both parameters: lut_file_path (with file extensions) and target (with options and their roles). Compensates well for the lack of schema descriptions, though could add format specifics.

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?

The description clearly states the action ('Load a LUT file and activate it'), specifies the resource (LUT), and mentions the function (apply color transformations). It distinguishes from siblings like clear_lut by its unique purpose.

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

Usage Guidelines4/5

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

The description provides guidance on when to use (loading LUTs) and specifies three target options ('look', 'linearize', 'display'). However, it does not explicitly mention when not to use or alternative tools (e.g., clear_lut for removal), though 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.

set_ocio_colorspaceA

Set the OCIO input color space for a source.

Inserts an OCIOFile node into the source's linearize pipeline, converting from the specified color space to scene-linear.

Args: colorspace: Input color space name (e.g. "sRGB - Texture", "ACEScg"). source_node: Source group name (e.g. "sourceGroup000000"). If omitted, uses the first source.

ParametersJSON Schema
NameRequiredDescriptionDefault
colorspaceYes
source_nodeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries full behavioral burden. It describes the pipeline modification and conversion to scene-linear, and mentions default behavior for omitted source_node. However, it does not mention potential side effects like overwriting previous OCIO settings.

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

Conciseness5/5

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

The description is concise with no wasted words. It front-loads the one-line summary and then provides details in a clear, structured format.

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

Completeness4/5

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

Given the tool has an output schema, the description doesn't need to explain return values. It covers purpose, behavior, and parameters adequately. Could mention prerequisites (e.g., requiring an existing source) but overall complete for a simple operation.

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?

The description adds significant meaning beyond the input schema, which has 0% coverage. It provides examples for colorspace ('sRGB - Texture', 'ACEScg') and explains the source_node parameter with format and default behavior.

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?

The description clearly states the tool sets the OCIO input color space for a source and explains it inserts an OCIOFile node. This distinguishes it from sibling tools like set_ocio_display or set_ocio_look.

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

Usage Guidelines3/5

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 provide guidance on when to use it versus alternatives or when not to use it. Usage is implied by the description of the action.

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

set_ocio_displayB

Set the OCIO display transform.

Inserts an OCIODisplay node into the display pipeline.

Args: display: Display name (e.g. "sRGB - Display"). view: View name (e.g. "ACES 1.0 - SDR Video").

ParametersJSON Schema
NameRequiredDescriptionDefault
displayYes
viewYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

Without annotations, the description should disclose side effects, permissions, or state changes. It only mentions inserting a node, but doesn't clarify if existing transforms are replaced, if the operation is reversible, or any required authentication.

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

Conciseness5/5

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

The description is brief and front-loaded with the purpose. The Args section is cleanly structured with examples, no unnecessary words.

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

Completeness3/5

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 an output schema exists. However, lack of usage guidelines and behavioral transparency makes it incomplete for an AI agent to fully understand its effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Schema coverage is 0%, but the description provides meaningful examples for both parameters (display and view), adding context beyond the schema's titles.

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

Purpose4/5

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

The description clearly states the action ('Set the OCIO display transform') and explains it inserts an OCIODisplay node. This is specific and distinct among siblings, though no explicit differentiation is made.

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

Usage Guidelines2/5

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 other OCIO-related tools like set_ocio_colorspace or set_ocio_look. The Args section only describes parameters, not usage context.

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

set_ocio_lookA

Apply an OCIO look to a source.

Inserts an OCIOLook node into the source's look pipeline.

Args: look: Look name from the OCIO config. direction: "forward" or "inverse". source_node: Source group name. If omitted, uses the first source.

ParametersJSON Schema
NameRequiredDescriptionDefault
lookYes
directionNoforward
source_nodeNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It explains the basic insertion action but does not disclose error behavior (e.g., invalid look name), idempotency, or side effects on existing looks. More details on state changes and prerequisites 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.

Conciseness4/5

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

The description is well-structured with a purpose sentence, a brief explanation, and arg descriptions. It is not overly verbose, though the 'Args' section could be slightly more compact without losing clarity.

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

Completeness3/5

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

Given that an output schema exists, the description does not need to detail return values. However, it lacks mention of return behavior or success/failure indicators. The tool modifies state, and for a workflow with many siblings, more contextual completeness about preconditions (e.g., valid look) would improve usability.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

With 0% schema description coverage, the description adds value for all parameters: 'look' as name from OCIO config, 'direction' as allowed strings, and 'source_node' as optional group name with default. However, it does not explain how to obtain look names or config details, which could be assumed from sibling tools.

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?

The description clearly states the tool applies an OCIO look to a source by inserting an OCIOLook node into the look pipeline. It uses specific verb+resource phrasing and distinguishes from siblings like set_ocio_colorspace and set_ocio_display.

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

Usage Guidelines3/5

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 applying a named look from the OCIO config) but does not explicitly compare with alternatives or state when not to use it. The optional parameter guidance ('If omitted, uses the first source') is helpful but incomplete.

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

set_out_pointB

Set the out-point (end of playback range).

Args: frame: Frame number for the out-point.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided; the description only states the basic function without disclosing side effects, reversibility, or requirements like a loaded source.

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?

The description is very short with two sentences, no wasted words. Could be slightly more structured but remains concise.

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

Completeness2/5

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

Given the tool's single parameter and available output schema, the description omits important context like the meaning of out-point in playback, complementarity with set_in_point, and any prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

Schema coverage is 0%, but the description adds 'Frame number for the out-point', which provides basic meaning beyond the parameter name. However, it lacks range or format constraints.

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?

The description clearly states the verb 'Set' and the resource 'out-point', and explains it is the end of playback range, distinguishing it from sibling 'set_in_point'.

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

Usage Guidelines2/5

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 'set_in_point' or prerequisites such as having a loaded session.

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

set_playback_speedA

Set the playback increment (direction and speed).

Args: direction: Positive for forward, negative for reverse. 1 = normal forward, -1 = normal reverse, 2 = 2x forward, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
directionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations, the description should disclose behavioral traits (e.g., immediate vs. deferred effect, behavior while paused). It only defines parameter values without describing the operational impact.

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

Conciseness5/5

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

The description is concise, front-loaded with the main purpose, and efficiently uses two sentences plus a parameter list without redundancy.

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

Completeness3/5

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

While adequate for a simple tool, the description lacks context on how this tool interacts with other playback controls and fails to specify return behavior despite an output schema existing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The description adds meaningful context beyond the schema by explaining direction parameter values (positive/negative, normal/reverse) and providing example mappings, compensating for the 0% schema coverage.

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?

The description clearly states the tool sets the playback speed and direction, distinguishing it from sibling tools like step_forward, step_backward, and set_play_mode which have different functions.

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

Usage Guidelines3/5

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

The description implies usage for adjusting speed by providing direction semantics, but lacks explicit guidance on when to use this tool versus siblings like step_forward, step_backward, or toggle_playback.

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

set_play_modeA

Set the playback loop mode.

Args: mode: One of "loop", "once", or "pingpong".

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoloop

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It states the tool sets the loop mode and lists valid values, but does not disclose side effects on current playback or potential errors, leaving behavioral clarity incomplete.

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

Conciseness5/5

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

The description is extremely concise: one sentence summarizing the action plus a clear list of arguments. No redundant information, well front-loaded.

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

Completeness4/5

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

For a simple one-parameter setter, the description covers the essential purpose and parameter values. An output schema exists, so return details are not needed, but mentioning error handling for invalid mode would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The input schema has no description for the 'mode' parameter and no enum constraint, so the description adds critical value by listing the three allowed values ('loop', 'once', 'pingpong'). However, it could be more precise about case sensitivity or format.

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?

The description clearly states 'Set the playback loop mode,' which identifies the verb and resource. It lists three specific mode options, distinguishing it from other set_* and playback tools.

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

Usage Guidelines3/5

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

The description does not provide when to use this tool versus alternatives like play, stop, or toggle_playback. It implies usage from the name but lacks 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.

set_realtimeA

Enable or disable realtime playback mode.

When enabled, RV will skip frames to maintain the target FPS.

Args: enabled: True to enable realtime, False to play every frame.

ParametersJSON Schema
NameRequiredDescriptionDefault
enabledNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It discloses the key behavior: enabling causes frame skipping to maintain target FPS, disabling plays every frame. This is transparent for a boolean toggle, though it could mention default state 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.

Conciseness5/5

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

The description is extremely concise: two sentences plus an args list. It front-loads the purpose and adds critical behavioral detail efficiently. Every word earns its place, no redundancy.

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?

For a simple boolean toggle tool, the description covers purpose, parameter semantics, and behavioral effect. Output schema exists, so return values are covered elsewhere. No missing crucial information for this complexity level.

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 0% (no parameter description), but the description fully compensates with explicit Args: 'True to enable realtime, False to play every frame.' This adds complete semantic meaning beyond the type and default in the schema.

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?

The description clearly states the tool's purpose: 'Enable or disable realtime playback mode.' It specifies the verb (enable/disable) and the resource (realtime mode), and adds behavioral context (frame skipping to maintain FPS). This distinguishes it from siblings like set_fps (sets target FPS) or play (starts playback).

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

Usage Guidelines3/5

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

The description implies usage for controlling playback performance but does not explicitly state when to use this tool over alternatives or provide exclusion criteria. It only describes the effect, leaving the agent to infer context without direct guidance.

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

set_saturationB

Set saturation.

Args: value: Saturation value (1.0 = normal, 0.0 = desaturated).

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, so the description carries full burden. It only states the value range (1.0 normal, 0.0 desaturated) but does not specify behavior for values outside this range or potential side effects (e.g., does it reset other color settings?). No mention of return value despite output schema existing.

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

Conciseness5/5

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

Two concise sentences that front-load the purpose and describe the parameter in a clear, scannable format. Every word adds value, and no redundant information is present.

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

Completeness3/5

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

For a simple single-parameter tool with an output schema, the description is minimally adequate. It explains the core function and parameter meaning. However, it lacks differentiation from siblings (e.g., when to use saturation vs CDL) and does not describe the return value or side effects, which could be important for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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

Schema coverage is 0%, so description must compensate. It explains that 'value' is saturation with normal at 1.0 and desaturated at 0.0. This adds meaning beyond the schema type. However, it does not specify the valid range (e.g., can value be >1 or <0?), leaving ambiguity.

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

Purpose4/5

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

The description clearly states 'Set saturation', using a specific verb and resource. It distinguishes from siblings like set_exposure or set_gamma by naming the specific parameter (saturation). However, it could be more explicit about the context (e.g., image/video color grading).

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

Usage Guidelines2/5

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 siblings like set_cdl, set_lut, or other color adjustments. No mention of prerequisites or scenarios where saturation adjustment is appropriate. This omission 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.

set_view_modeA

Switch RV's view mode.

Args: mode: One of "sequence" (play sources in order), "stack" (layer sources for comparison), "layout" (tile sources side by side).

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Without annotations, the description carries full burden. It explains mode values and what each does, but omits side effects, state changes, or prerequisites. This is acceptable given the tool's simplicity.

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?

The description is brief, with one sentence and a list. Every part is useful, though it could be slightly more structured (e.g., bullet points in description).

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

Completeness4/5

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

Given one parameter and output schema exists, the description covers the essential usage. It lacks details on potential interactions or constraints, but is sufficient for a simple setting tool.

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 has 0% coverage for param 'mode', but the description fully documents the allowed values ('sequence', 'stack', 'layout') with clear meanings, providing complete semantic information.

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?

The description clearly states the tool's purpose: 'Switch RV's view mode.' It specifies three distinct modes with explanations, making it distinct from sibling set_* tools.

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

Usage Guidelines2/5

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. An agent would not know when switching view mode is appropriate compared to other actions like set_play_mode or set_composite_type.

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

step_backwardB

Step backward by N frames.

Args: count: Number of frames to step backward (default 1).

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided. Description fails to disclose critical behaviors such as boundary handling (e.g., frame 0) or whether it updates the playhead. Minimal behavioral insight.

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?

Very short and front-loaded, with essential information. Could be slightly more concise but effectively communicates core purpose.

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

Completeness3/5

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

Output schema exists, so return value documentation is optional. However, lack of annotations and behavioral context (e.g., does it wrap around?) reduces completeness for a navigation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

Adds clear meaning beyond schema: explains 'count' as number of frames to step backward, including default value. Schema had 0% description coverage, so this is valuable.

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?

The description clearly states the action ('step backward') and the resource ('frames'), distinguishing it from sibling 'step_forward'.

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

Usage Guidelines2/5

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 'set_frame' or 'step_forward'. Lacks context for appropriate usage.

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

step_forwardA

Step forward by N frames.

Args: count: Number of frames to step forward (default 1).

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It states the basic function but does not disclose whether stepping wraps around, clamps to frame range, or affects playback state. For a simple tool, this is adequate but not thorough.

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?

The description is concise with a clear structure: one-line summary followed by an Args section. It is front-loaded and efficient, though the Args section could be more integrated.

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

Completeness4/5

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 an output schema (not shown), the description covers the essential. It does not elaborate on return values or edge cases, but given the low complexity, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

The description explains that 'count' is the number of frames to step forward, adding meaning beyond the schema's type and default. Given 0% schema description coverage, this compensates well.

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?

The description clearly states the action: 'Step forward by N frames.' It distinguishes from siblings like step_backward and set_frame, as the verb 'step forward' implies incremental movement in a specific direction.

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

Usage Guidelines3/5

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

The description implies usage for advancing frames but lacks explicit guidance on when to use this tool versus alternatives like 'play' (continuous playback) or 'set_frame' (direct jump). No when-not conditions are provided.

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

stopA

Stop playback in RV.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description should disclose more behavioral details. It states the action but does not mention idempotency, side effects (e.g., current frame position), or output schema implications. 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.

Conciseness5/5

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

A single, front-loaded sentence with zero wasted words. Perfectly concise for a trivial action.

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

Completeness4/5

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

The tool is simple with no parameters and an output schema (unknown content). The description captures the primary function but lacks details on behavior when already stopped or error handling. Still adequate for a basic stop command.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist, so baseline 4 applies. The description adds no param info, which is appropriate as schema coverage is 100%.

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?

The description 'Stop playback in RV.' uses a specific verb (stop) and resource (playback in RV), clearly distinguishing it from siblings like 'play', 'toggle_playback', and 'step_forward'.

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

Usage Guidelines4/5

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 want to stop playback) but does not explicitly mention when not to use it or provide alternatives. For a simple action, this is sufficient.

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

toggle_playbackA

Toggle play/stop in RV. Returns the new state.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are provided, and the description does not disclose side effects or preconditions (e.g., RV must be running). It confirms the return value, but lacks details on failure modes or idempotence.

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

Conciseness5/5

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

Two short, clear sentences with no wasted words. The action is front-loaded in the first sentence.

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?

The tool has no parameters, a clear action, and mentions the return value. Combined with the presence of an output schema, the description is fully adequate for this simple toggle operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist, so schema coverage is complete. The description does not need to add parameter details. Keeping the baseline at 4 is appropriate per guidelines.

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?

The description clearly states the tool toggles play/stop in RV and returns the new state. It distinguishes from sibling tools 'play' and 'stop' by specifically indicating a toggle action.

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

Usage Guidelines3/5

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

The description implies use when toggling is desired, but does not explicitly compare with 'play' and 'stop' or provide when-not-to-use guidance. Since the tool is simple, some inference is possible.

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

toggle_wipeA

Toggle wipe mode on/off for A/B comparison in stack view.

Automatically switches to stack view first.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

Discloses that it toggles and automatically switches to stack view. However, no annotations are provided, so the description could elaborate on side effects or state changes, but it is minimally adequate.

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

Conciseness5/5

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

Two concise sentences with no unnecessary words. The key information is front-loaded, making it 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.

Completeness4/5

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

Given the tool has an output schema and no parameters, the description adequately covers the toggle action and automatic view switch. It lacks details on what 'wipe mode' entails, but is sufficient for a simple toggle.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

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

No parameters exist, so the schema provides full coverage. The description adds context about the toggle behavior, meeting the baseline expectation for zero-parameter tools.

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?

Clearly states it toggles wipe mode on/off for A/B comparison in stack view. The description differentiates from sibling tools like 'set_view_mode' and 'toggle_playback' by specifying the exact action and context.

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

Usage Guidelines3/5

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

It implies usage for A/B comparison but does not explicitly state when to use vs alternatives. The automatic switch to stack view provides context but lacks exclusionary guidance.

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.

  1. 6 tool updatesv0.3.0
    • Addedclear_ocio
    • Addedget_ocio_config
    • Addedget_ocio_state
    • Addedset_ocio_colorspace
    • Addedset_ocio_display
    • Addedset_ocio_look
  2. 41 tool updatesv0.1.0
    • First observedclear_cdl
    • First observedclear_lut
    • First observedclear_session
    • First observedexecute_mu
    • First observedget_color_settings
    • First observedget_fps
    • First observedget_frame
    • First observedget_frame_range
    • First observedget_in_out_points
    • First observedget_session_info
    • First observedget_source_media_info
    • First observedget_sources
    • First observedget_sources_at_frame
    • First observedget_view_info
    • First observedload_source
    • First observedload_sources
    • First observednew_session
    • First observedplay
    • First observedsave_session
    • First observedset_background
    • First observedset_cdl
    • First observedset_composite_type
    • First observedset_display_gamma
    • First observedset_display_srgb
    • First observedset_exposure
    • First observedset_fps
    • First observedset_frame
    • First observedset_gamma
    • First observedset_in_point
    • First observedset_lut
    • First observedset_out_point
    • First observedset_play_mode
    • First observedset_playback_speed
    • First observedset_realtime
    • First observedset_saturation
    • First observedset_view_mode
    • First observedstep_backward
    • First observedstep_forward
    • First observedstop
    • First observedtoggle_playback
    • First observedtoggle_wipe

TDQS

B3.3/5.0

Scored across 47 tools

Disambiguation4/5

Most tools have distinct purposes, with clear descriptions differentiating them. There is some potential confusion between similar 'clear' tools and frame-info tools, but overall an agent can distinguish well.

Naming Consistency3/5

Naming uses underscores consistently but verb style varies (clear_, get_, set_, load_, play, stop, toggle). The pattern is not strictly verb_noun throughout, e.g., 'execute_mu' and 'new_session' deviate. Still readable.

Tool Count2/5

With 47 tools, the server is quite heavy. While the domain (media playback and color correction) can justify many tools, this count feels excessive and could be streamlined.

Completeness4/5

The tool set covers most aspects of RV control: session management, source loading, playback, frame navigation, color correction (CDL, LUT, OCIO), display settings, and view modes. A notable gap is the lack of a tool to remove individual sources.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers