Skip to main content
Glama
Galbaz1

video-research-mcp

by Galbaz1

video-research-mcp

Ask questions across recordings and documents, then inspect the source frames, transcripts and clips behind the answer. The server exposes 120 MCP tools for video, audio and image operations, document analysis, web and academic research, and saved knowledge. Agent workflows connect those tools into a research or production task.

Use it in Codex, Claude Code, or any client that supports stdio Model Context Protocol. Gemini handles the main analysis and research routes; local tools inspect and transform source files. Optional providers and runtimes extend that core.

Open the interactive user guide (Dutch): from your problem to an approach. Search the function map or choose a task to see its tools, prerequisites and steps. The English user documentation also covers setup problems and examples. Describe your problem in your MCP client in ordinary language to begin.

Release · npm · PyPI · Source

Release candidate: 0.8.0-rc.6 (PyPI 0.8.0rc6). The links above identify the exact packages and immutable source tag. Check the release notes and each route's prerequisites before installing. The npm prerelease channel is next. Local-model qualification is outside this API-first release. Stable 0.7.1 predates the native Codex plugin and expanded media surface.

From source material to a useful result

Work

Tools to start with

What to inspect

Question a recording

video_analyze, video_create_session, video_continue_session

Source timestamps, the answer and supporting material

Analyze a long recording in stages

media_info, video_analyze_windows, job_status

Requested intervals, dry-run plan, execution limits and retained outcomes

Prepare audio or transcripts

audio_transcribe, audio_clip_export, audio_dsp_analyze

Caption or model provenance, source timing and exported audio

Inspect images or export media

image_read, image_crop, image_ocr, video_frame, video_clip_export

Source bytes, selected region or interval, output files and manifests

Compare documents or investigate a topic

content_analyze, research_document, research_plan, research_web

Citations, contradictions, missing evidence and job status

Generate images or short video

Separate explainer image and video APIs

Pinned sources, a current operator quote, explicit operations and saved decoded files; provider quality remains unqualified

Search previous work

knowledge_ingest, knowledge_search, knowledge_ask

Stored records and retrieval provenance; requires Weaviate

For example, ask your client:

Compare ~/recordings/design-review.mp4 with ~/docs/requirements.pdf.
Identify decisions that change a requirement. Cite recording timestamps and
relevant document pages, distinguish explicit decisions from interpretation,
and flag anything the sources do not establish.

Workflows combine tools; individual MCP calls return their own results. Source hashes identify bytes, and export manifests retain how an artifact was produced. Model timestamps, citations and interpretations still need checking against the original material. Sampling a recording does not establish complete coverage.

Related MCP server: media-mcp

Install

You need Python 3.11+, uv with uvx on your client's PATH, and a Gemini API key for Gemini requests. Plugin installation also needs Node.js 22+ and npm. Install FFmpeg/FFprobe for local media inspection, frame extraction and clip exports. Other operations may need an optional dependency or configured backend.

By default, the server reads process environment variables first, then ~/.config/video-research-mcp/.env, then defaults. Project installations can select a separate credential file. Add your key to the shared file for the routes below, keeping any existing settings:

GEMINI_API_KEY=your-gemini-api-key

Keep the file private (chmod 600 ~/.config/video-research-mcp/.env). Codex plugin servers receive a filtered environment, so this file is the reliable credential route there. Provider analysis sends source material to the configured service and can incur usage charges. A selected analysis interval does not necessarily limit the uploaded file.

Codex: native plugin

The plugin supplies 26 skills and the version-pinned research server. Historical RC3 observation: on 2026-10-06, the selected Codex 0.160.1 RC3 installation and fresh-session restart loaded the research tools and packaged skills. This is historical RC3 evidence. Follow the verification steps below for the version you install. The native route does not run the Claude workflow installer.

For a new installation, save this catalog as ~/.local/share/video-research-mcp/.agents/plugins/marketplace.json, creating its parent directories if needed:

{
  "name": "video-research",
  "interface": { "displayName": "Video Research" },
  "plugins": [
    {
      "name": "video-research",
      "source": {
        "source": "npm",
        "package": "video-research-mcp",
        "version": "0.8.0-rc.6"
      },
      "policy": { "installation": "AVAILABLE", "authentication": "ON_INSTALL" },
      "category": "Productivity"
    }
  ]
}
codex plugin marketplace add ~/.local/share/video-research-mcp
codex plugin add video-research@video-research
codex plugin list --json

Start a fresh Codex session. Check that video-research@video-research is enabled, its source is npm at 0.8.0-rc.6, and the server's tools are available.

For an existing installation, use the native plugin and migration guide. Back up local plugin edits before reinstalling: Codex replaces its managed cache. A manual mcp_servers.video-research entry can hide the plugin server. In the historical RC1 check on Codex 0.160.0, this also occurred when the entry was disabled; the guide describes the specific configuration to remove.

Claude Code: workflow installer

npx video-research-mcp@0.8.0-rc.6 --global

This installs slash commands, skills and agents into ~/.claude/, registers the research server in ~/.claude.json, and creates a credential template if needed. Set the key, restart Claude Code and inspect /mcp. Use /gr:advisor to select a workflow, or /gr:video, /gr:research and /gr:analyze to start directly.

Use --local for project scope and set the key in ./.config/video-research-mcp/.env; this replaces the shared credential-file route. Use --global --check to inspect the global installation. Updates preserve modified workflow files and custom configuration. See installer options and recovery for scope, checkpoints and rollback.

Other MCP clients: server only

Use your client's stdio registration format. A typical JSON entry is:

{
  "mcpServers": {
    "video-research": {
      "command": "uvx",
      "args": ["video-research-mcp==0.8.0-rc.6"]
    }
  }
}

This connects the same tools; agent workflows are installed separately. Python package filenames use the normalized spelling 0.8.0rc6.

Verify your first connection

Ask the client to call infra_configure with no arguments. It returns the running configuration without making an analysis request. Then try a tool on material you can inspect yourself. A successful connection verifies setup; checking the returned evidence verifies the particular result.

Configure only what the task needs

Setting or addition

Use it for

GEMINI_MODEL, GEMINI_FLASH_MODEL

Select supported primary and auxiliary models

YOUTUBE_API_KEY

YouTube metadata, comments and playlists; otherwise uses the Gemini key

GEMINI_SESSION_DB

Persist video sessions in SQLite; unset means in-memory sessions

WEAVIATE_URL, WEAVIATE_API_KEY

Store and retrieve research across sessions

MLFLOW_TRACKING_URI and the tracing extra

Trace tool execution; GEMINI_TRACING_ENABLED=false disables optional tracing

LOCAL_FILE_ACCESS_ROOT

Restrict supported local-file operations to a directory

Research works without Weaviate. When storage is configured, write-through errors are non-fatal; verify the stored record when persistence matters. The knowledge-store guide covers embeddings, collections and optional query dependencies. For a manually configured server, retain the version pin when adding extras, for example uvx 'video-research-mcp[tracing,agents]==0.8.0-rc.6'. The full runtime configuration lives in ServerConfig.

Image edits, OCR, speech inference, Blender, FreeCAD and local model services have additional runtime or backend requirements. Installing the plugin does not install those runtimes, model weights or provider accounts. Inspect the relevant skill and its prerequisites before using an optional integration.

For video production, the separate explainer companion exposes 39 tools, including direct HTTP image and text/frame-video generation and an optional external CLI/rendering pipeline; the scene-agent companion exposes two tools for scene-code generation. Neither is required for research. Production skills also provide workflows for narration, image generation, clip generation and assembly.

Generate an image or a short video

Connect the explainer companion separately. Its RC4 candidate (0.2.2rc4 on PyPI) adds direct HTTP routes for text-to-image, image editing, image translation and video from text, a first frame, or first plus last frames. These routes need the companion's generation extra, an existing project with pinned script/scene files, explicit regional DashScope configuration and current pinned price/access and quote declarations. Video output checks also need FFmpeg/ffprobe. They run without the upstream video_explainer CLI.

Follow the image lifecycle or video lifecycle. Obtain actual human authority for source submission and spending before setting spend_authorized=true; that field records an input acknowledgement and does not authenticate anyone or impose a provider billing cap. Keep the returned job ID. Use explainer_image_generation_finalize for captured synchronous images, explainer_image_generation_poll for translation and explicit image recovery, or explainer_generation_poll for video, each with a bounded authorized operation. Core job_status rejects both generated-media job kinds.

Saved hashes and complete decode checks qualify the selected file bytes. Live provider access, image identity/style fidelity, creative quality and full security review remain open. S2V/HappyHorse successor modes are optional and await separate source acceptance; the disabled raw Qwen process integration is a separate route. Stock search, local ASR intake timing and the retained renderer timing failure remain limits.

Inspect and extend

The selected RC3 native check covered the installed baseline and restart, with 124 cache files. Fresh npm network acquisition versus reuse of the same-version cache remains unknown. Earlier RC1 native and RC2 archive/installer checks remain historical results. Tool discovery does not qualify every optional runtime; live-provider quality and complete comparative acceptance remain open.


Created by Fausto Albers · Wonder Why. Built with Google Gemini, FastMCP and Pydantic, with optional knowledge and tracing integrations. Project code is MIT licensed; third-party notices cover bundled components with their own terms.

Available Tools

90 tools
audio_clip_exportAudio Clip ExportA

Export a whole or one-sided audio selection to a unique private 16kHz mono WAV.

Originals and prior exports remain unchanged. Caller-selected output paths and overwriting are rejected. Use image_manifest_read for verified restart.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local audio/video source; omitted endpoints select whole track within 240-second/8MiB WAV limits

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

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

Adds real context beyond the annotations: originals and prior exports remain unchanged, caller-chosen output paths and overwrites are rejected, output is always a new unique 16kHz mono WAV. This coheres with destructiveHint=false and idempotentHint=false and explains why repeated calls are non-idempotent, though it says nothing about failure modes or the 240s/8MiB bounds beyond what the schema already carries.

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?

Four short, front-loaded sentences with no filler; the output artifact and immutability guarantee lead. The final sentence about image_manifest_read is slightly cryptic without more context, keeping it from a 5.

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

Completeness5/5

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

With an output schema present, return values need no explanation, and the annotations plus description together cover safety, idempotency and mutation scope for a single nested request object. Nothing essential to invoking it correctly appears missing.

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 description coverage is 100%, so file_path, expected_source_sha256, start_seconds and end_seconds are already documented, including the omitted-endpoints behavior. The description's phrase 'whole or one-sided' merely restates what the schema says and adds no format or semantics for the SHA-256 requirement.

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

Purpose5/5

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

States a specific verb (export) and resource (whole or one-sided audio selection) plus the exact output artifact: a unique private 16kHz mono WAV. An agent can distinguish this from sibling media tools like video_clip_export or audio_transcribe immediately.

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 clarifies scope (whole selection when endpoints are omitted, one-sided otherwise) and points to image_manifest_read for a verified restart, which gives some routing value. But it never states when to prefer this over audio_transcribe, media_edit_footage, or video_clip_export, nor any prerequisite like needing a prior manifest/source ingest.

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

audio_deduplicateAudio DeduplicateA

Compare local audio candidates while retaining silence, errors and uncertainty.

Requires the optional audio extra and local FFmpeg. Similarity does not establish equal speech, speaker identity or permission to delete evidence.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesAll explicit source audio intervals, up to120 seconds aggregate, and lossy MFCC cosine threshold

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare the safety profile (non-destructive, non-idempotent, closed-world), and the description adds real value on top: an environment dependency (optional audio extra + local FFmpeg) and a semantic limitation ('Similarity does not establish equal speech, speaker identity or permission to delete evidence'). It does not clarify the readOnlyHint=false behavior (what, if anything, is written), leaving a minor gap.

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?

Three compact sentences, front-loaded with the core action before the dependency and caveat. Every sentence earns its place; no redundancy with the schema or annotations.

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?

Output schema exists so return values needn't be described, parameters are fully covered by the schema, and annotations carry the safety profile. The description completes the picture with the environment prerequisite and the key semantic caveat, so an agent has what it needs to call it correctly.

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 description coverage is 100% and the nested request, segments, threshold and SHA-256 fields are all documented in the schema. The description adds no syntax, format, or constraint detail beyond what the schema already provides, so baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource ('Compare local audio candidates') and is clearly distinct from the sibling video_deduplicate_frames. However, 'candidates' and 'retaining silence, errors and uncertainty' are somewhat abstract, leaving the exact operation slightly fuzzy, and no sibling is named explicitly.

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

Usage Guidelines3/5

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

Provides a prerequisite ('Requires the optional audio extra and local FFmpeg') and a scope caveat, which implicitly signals when it applies. But there is no explicit when-to-use guidance or routing versus alternatives such as video_deduplicate_frames or audio_dsp_analyze.

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

audio_dsp_analyzeAudio Dsp AnalyzeC

Measure audio or invoke one separately installed operator-pinned native DSP workflow.

Local analysis preserves stereo, finite silence/abstentions and absolute clipping intervals. A/B uses reference-minus-primary differences with units. Optional Juzzy modes preserve harmonic/rhythm/masking/section observations; Ferrous receives an explicit mono derivation and retains heuristic quality, content and fingerprint output. Standards and semantic claims are unverified. Reusing an exact job_id reads its attested artifacts without launching again. Use job_status for durable status, including interrupted/failed work.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local source SHA and windows, optional reference and fixed DSP operation;30-second aggregate audio and8MiB artifact limits
include_imageNoInclude verified bounded waveform/spectrogram PNG blocks; text keeps exact artifact identities

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, idempotentHint=false, destructiveHint=false, openWorldHint=false, so the agent knows this is a non-read-only, non-idempotent, non-destructive, closed-world operation. The description adds behavioral context about artifact reuse ('Reusing an exact job_id reads its attested artifacts without launching again') and limitations ('Standards and semantic claims are unverified,' explicit mono derivation for Ferrous, 30-second/8MiB limits). This is useful supplemental behavior, but much of it is scattered and some claims are vague. With annotations already carrying the safety profile, a 3 reflects the added value without over-crediting.

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

Conciseness2/5

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

The description is a dense, multi-clause paragraph with obscure terminology ('operator-pinned native DSP workflow,' 'attested artifacts,' 'finite silence/abstentions,' 'Juzzy modes'). It is not front-loaded with a simple statement of purpose, and several sentences feel like internal notes patched together rather than a crafted tool definition, making it hard for an agent to parse quickly.

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?

An output schema and 100% schema description coverage exist, so return values need not be explained, and annotations cover the safety profile. However, because this is a complex tool with many modes and a nested request object, the description should more clearly explain mode selection, job_id reuse semantics, and the difference from sibling audio tools. As written it gestures at these topics without giving a complete picture, so it is just adequate.

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 description coverage is 100%, so the schema already documents parameters like file_path, expected_source_sha256, operation enum, start/end_seconds, reference, and native_return_format. The description adds only indirect meaning: it clarifies that A/B uses reference-minus-primary, that Juzzy modes preserve certain observations, and that Ferrous receives an explicit mono derivation. These are behavioral notes rather than parameter syntax, and the operation enum contents are not explained in the description, so the baseline 3 is appropriate.

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

Purpose3/5

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

The first sentence states the tool 'measures audio or invokes one separately installed operator-pinned native DSP workflow,' which gives a verb and resource, but 'one separately installed operator-pinned native DSP workflow' is obscure jargon that doesn't tell an agent concretely what happens. The body discusses outputs and modes rather than clarifying the core operation, and it doesn't distinguish itself clearly from siblings like media_analyze_music or audio_transcribe.

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 never states when to choose this tool over alternatives such as media_analyze_music, audio_transcribe, or media_perceive. It mentions 'Use job_status for durable status,' which is a follow-up routing hint, but there is no guidance on when-not-to-use or what conditions select this tool versus its many siblings.

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

audio_transcribeAudio TranscribeA

Extract exact caption intervals or infer speech through an explicit backend.

Supplied cue and word times remain source assertions. Model-derived words and speaker labels remain inference. Caption selection precedes ASR; local-only selection forbids cloud requests. Readback requires the retained receipt digest and exact source identity. No local model is installed.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local source, associated captions, source range and absent output directory; optional ASR requires explicit backend and submission authority

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already mark it non-read-only, non-destructive, open-world, and non-idempotent, so the safety bar is partly covered. The description adds real behavioral context beyond that: provenance rules (source cue/word times are assertions, model output is inference), the constraint that local-only forbids cloud, the readback receipt requirement, and the crucial operational fact that no local model is installed.

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?

Purpose is front-loaded and every sentence carries information with no filler. The telegraphic, clause-heavy style ('Supplied cue and word times remain source assertions') is dense and slightly cryptic, which marginally reduces readability.

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 a complex nested request object and an existing output schema, the description covers the key operational facts an agent needs (no local model, backend selection, local-only restriction, receipt-gated readback) and does not need to restate return values. It leaves the request structure itself to the schema, which is acceptable.

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 description coverage is 100%, so the baseline would be 3. The description still adds meaning by tying concepts to fields: caption selection ordering, 'explicit backend' for ASR, local-only forbidding cloud requests, and the receipt-digest/source-identity requirement for readback, which map to backend, local_only, and expected_receipt_sha256.

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?

States a specific verb+resource: extracting caption intervals or inferring speech from audio via an explicit backend. It is clear what the tool does, but it never names or distinguishes itself from close siblings like media_caption_events, audio_dsp_analyze, or media_perceive, so the agent must infer the boundary.

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

Usage Guidelines3/5

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

The description gives ordering/constraint cues ('Caption selection precedes ASR; local-only selection forbids cloud requests; Readback requires the retained receipt digest') which imply when each path applies. However, it never states when to use this tool versus alternative transcription/caption siblings, so guidance remains implied rather than explicit.

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

content_analyzeContent AnalyzeA
Read-only

Analyze content (file, URL, or text) with any instruction.

Provide exactly one of file_path, url, or text. Uses Gemini's structured output for reliable JSON responses. Pass a custom output_schema to control the response shape, or use the default ContentResult schema.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoURL to analyze
textNoRaw text content
file_pathNoLocal file path (PDF or text)
instructionNoWhat to analyze — e.g. 'summarize key findings', 'extract methodology', 'list all citations'Provide a comprehensive analysis of this content.
output_schemaNoOptional JSON Schema for the response. If omitted, uses default ContentResult schema.
thinking_levelNoGemini thinking depth.medium

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds real behavioral context on top: it names the underlying model (Gemini), states that structured output is used for reliable JSON, and discloses the default response schema. It does not cover failure modes, rate limits, or size limits, keeping it short of a 5.

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

Conciseness4/5

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

Three sentences, front-loaded with the core action and the hard input constraint before the implementation detail about Gemini and output_schema. No filler, though the model-name detail is the least load-bearing sentence.

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?

An output schema exists, so return values need not be explained. For a 6-parameter, zero-required tool, the description covers the input-exclusivity rule, the default schema, and how to override it. It omits practical limits (file size, supported PDF scope, URL fetch failures) but is otherwise sufficient to call the tool correctly.

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 description coverage is 100%, so the baseline is 3, and the description adds meaning the schema cannot express: the mutual-exclusion rule among file_path/url/text (all three are independently optional with null defaults in the schema). It also clarifies that output_schema overrides the default ContentResult shape, and that instruction drives what gets analyzed.

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?

States a specific verb (analyze) and enumerates the accepted resource types (file, URL, text), which is more precise than a bare name restatement. However, it never differentiates itself from near siblings such as content_extract, content_batch_analyze, or video_analyze, so an agent must infer the boundary.

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

Usage Guidelines3/5

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

The description gives one real operational rule — 'Provide exactly one of file_path, url, or text' — which is genuinely useful invocation guidance. It stops there: no when-to-use conditions, no guidance on choosing this over content_extract/content_batch_analyze, and no mention of when to supply a custom output_schema versus accepting the default.

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

content_batch_analyzeContent Batch AnalyzeA
Read-only

Analyze multiple content files from a directory or explicit file list.

Rejects discovery over 5,000 entry visits and compare payloads over DOC_MAX_DOWNLOAD_BYTES. Supports two modes: 'compare' sends files in a single call for cross-document analysis, 'individual' analyzes each file separately with bounded concurrency (3 parallel calls).

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNo'compare' for cross-document analysis in one call, 'individual' for separate per-file analysiscompare
directoryNoDirectory to scan for content files
max_filesNoMaximum files to process
file_pathsNoExplicit list of file paths to analyze
instructionNoWhat to analyze — e.g. 'compare methodologies', 'summarize each document', 'extract key findings'Provide a comprehensive analysis of these documents.
glob_patternNoGlob pattern to filter files within directory*
output_schemaNoOptional JSON Schema for each result
thinking_levelNoGemini thinking depth.high

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, and the description goes beyond them by disclosing concrete limits: rejection over 5,000 discovery entry visits, compare payloads over DOC_MAX_DOWNLOAD_BYTES, and 3-way bounded concurrency in individual mode. These operational constraints are genuinely useful and not derivable from the annotations.

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

Conciseness4/5

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

Front-loads the core action, then constraints, then the two modes. Tight and readable with little waste, though the mid-sentence line break in the source text is a minor formatting blemish.

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?

With an output schema present, return values need no explanation, and the description covers the mode selection and payload limits for this 8-param tool. It is nearly complete, missing only sibling-tool disambiguation to be fully self-sufficient.

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 description coverage is 100%, so the schema already documents all 8 parameters, establishing a baseline of 3. The description reinforces mode semantics and adds the concurrency/limit context but supplies no syntax or format detail beyond what the schema provides.

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?

States a specific verb (analyze) and resource (multiple content files), with the batch scope made explicit via 'multiple content files from a directory or explicit file list'. This implicitly separates it from the single-file content_analyze sibling, though it never names that sibling or video_batch_analyze to fully disambiguate.

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

Usage Guidelines3/5

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

Gives solid intra-tool guidance by explaining when to pick 'compare' (cross-document, single call) versus 'individual' (per-file, bounded concurrency). However it offers no guidance on when to use this tool versus alternatives like content_analyze or video_batch_analyze, so tool-level selection is left to inference.

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

content_extractContent ExtractA
Read-only

Extract structured data from content using a JSON Schema.

Uses Gemini's response_json_schema for guaranteed structured output.

ParametersJSON Schema
NameRequiredDescriptionDefault
schemaYesJSON Schema defining the extraction structure
contentYesText content to extract from

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds meaningful behavioral context by stating it uses Gemini's response_json_schema for guaranteed structured output, which tells the agent the output reliability and mechanism.

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 tight sentences front-load the core action and then add the key implementation detail. There is no filler or repetition, and the structure makes the tool's purpose immediately clear.

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?

With a fully described input schema and an output schema, the description does not need to explain return values or parameter formats. It provides enough context for an agent to know this is a read-only structured extraction tool, though it could mention practical limits or content-type applicability.

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 description coverage is 100%, so both parameters are already documented in the input schema. The description does not add syntax, format, or constraint details beyond what the schema provides, making the baseline of 3 appropriate.

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

Purpose4/5

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

The description states a specific verb and resource: extract structured data from content using a JSON Schema. This clearly distinguishes it from generic content analysis or media tools, though it does not explicitly name the closest sibling alternatives like content_analyze or web_extract.

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 implies usage when structured extraction is needed, but it gives no explicit when-to-use, when-not-to-use, or alternative-tool guidance. An agent must infer from the presence of the required schema parameter that this is the right choice over content_analyze.

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

image_cropImage CropA

Crop local PNG pixels without model inference or provider uploads.

Requires an independently installed FFmpeg and respects LOCAL_FILE_ACCESS_ROOT. A source hash binds the crop to bytes; it does not establish factual support or whether the input was synthetic. Large outputs retain metadata/path only.

ParametersJSON Schema
NameRequiredDescriptionDefault
crop_boxYesInteger x, y, width, height in original image pixels
file_pathYesLocal 8-bit RGB/RGBA noninterlaced PNG
output_pathYesFresh local PNG output path; never overwrites
include_imageNoInclude a native PNG block up to 1 MiB; false returns identical text metadata

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnly=false, openWorld=false, destructive=false), and the description adds real context beyond them: the external FFmpeg dependency, the LOCAL_FILE_ACCESS_ROOT scoping, the hash-to-bytes binding caveat, and that large outputs retain metadata/path only. It stops short of detailing failure modes or rate behavior.

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?

Four tight sentences with the purpose front-loaded and the constraints following in priority order. The final sentence's caveat about factual support/synthetic inputs is somewhat tangential but still earns its place as a scope limiter.

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?

An output schema exists, so return values need not be explained, and the description covers prerequisites, path scoping, and caveats. It is nearly complete; only explicit sibling routing is absent.

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 100%, so all four parameters (crop_box, file_path, output_path, include_image) are already documented in the schema. The description adds no syntax or format detail beyond it, so baseline 3 is correct.

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

Purpose5/5

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

States a specific verb and resource ('Crop local PNG pixels') and immediately scopes it against inference-based siblings with 'without model inference or provider uploads,' so an agent can distinguish it from image_edit/image_segment without opening the schema.

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

Usage Guidelines4/5

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

The phrase 'without model inference or provider uploads' signals the deterministic-local use case, and 'Requires an independently installed FFmpeg' plus the LOCAL_FILE_ACCESS_ROOT reference give prerequisites. However, it never names an alternative tool or states when-not-to-use it, so routing still requires inference.

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

image_editImage EditA

Edit a source image or decoded video frame and persist its exact manifest.

Coordinates use the oriented source grid before crop and resize. Requires the optional images extra; frame selection also requires local FFmpeg. Source-derived edits and annotations retain explicit provenance.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesBounded preparation, crop, resize, five annotation kinds, polygon/flood cutout and PNG/JPEG/WebP/BMP/GIF conversion
include_imageNoEmit actual native image blocks up to 1 MiB each; text retains identical provenance

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnly=false, destructive=false, non-idempotent), so the bar is lower. The description still adds real behavioral context: the tool persists a manifest, dependency requirements (images extra, local FFmpeg for frame selection), and that source-derived edits keep explicit provenance. It does not clarify whether the original file is ever overwritten, which is the main remaining ambiguity.

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?

Every sentence carries information and the core purpose plus the manifest persistence is front-loaded. The remaining sentences are tightly packed (grid semantics, dependencies, provenance) with no filler. Slightly dense, but nothing is wasted.

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?

An output schema exists, so return-value explanation is unnecessary, and the 100% schema coverage documents all nested parameters. Given that support, the description supplies what structured data cannot: dependency requirements, coordinate-grid semantics, and provenance guarantees. An agent has enough to invoke it correctly.

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 description coverage is 100%, so the nested crop/cutout/resize/annotation parameters are already documented, making 3 the baseline. The description adds only one semantic detail beyond the schema: coordinates are resolved on the oriented source grid before crop and resize, which clarifies ordering but not formats. It does not explain output_format/quality tradeoffs or the expected_source_sha256 guard.

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 names a concrete verb and resource ('Edit a source image or decoded video frame') plus the persistence side effect ('persist its exact manifest'). It clearly differs from read-only siblings like image_read or media_info. It never names or contrasts with the closest sibling, image_crop, so sibling differentiation is left to inference.

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

Usage Guidelines3/5

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

It gives prerequisites for use ('Requires the optional images extra; frame selection also requires local FFmpeg'), which is genuinely actionable. However, it offers no when-to-use/when-not guidance and never points to image_crop or media_edit_footage as alternatives for simpler cases. Usage is implied by the capability list rather than explained.

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

image_manifest_readImage Manifest ReadA
Read-onlyIdempotent

Read an exact manifest after restart and verify its source and artifact bytes.

ParametersJSON Schema
NameRequiredDescriptionDefault
include_imageNoInclude verified native image artifacts where bounded
manifest_pathYesOwned export manifest within the configured local fence
expected_sha256YesRequired previously recorded full manifest digest

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and a closed-world scope, so the safety profile is covered. The description adds that this verifies source and artifact bytes, which is useful behavioral context, but it omits what happens on a digest mismatch (error vs. partial result) and how 'bounded' artifact inclusion behaves.

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?

A single front-loaded sentence naming the action first, with no filler. It is efficient, though the trailing verification clause packs two distinct behaviors into one unpunctuated phrase.

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?

An output schema exists, so return values need not be described, and annotations carry the safety profile. The description covers the core action and verification intent, leaving only edge-case behavior (digest mismatch, 'where bounded' artifacts) unstated.

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 description coverage is 100%, so all three parameters (manifest_path, expected_sha256, include_image) are already documented in the schema, setting a baseline of 3. The description's 'verify its source and artifact bytes' loosely gestures at expected_sha256 and include_image but adds no format or constraint detail 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?

States a specific verb+resource (read a manifest) and adds verification of source and artifact bytes, which is more than a tautology. However, it does not differentiate itself from adjacent siblings such as image_read, media_info, or source_ingest_read, and the phrase 'exact manifest' is jargon that isn't explained.

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 clause 'after restart' implies a usage context (post-restart integrity verification), which is a weak but real hint at when to invoke it. No alternatives are named and no explicit when-not condition is given, so guidance is implied rather than stated.

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

image_ocrImage OcrA

Observe text and geometry using an explicitly selected local OCR engine.

Source OCR and detected geometry do not establish semantic table structure or factual support. Missing local runtimes return an explicit limitation.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExplicit optional local Tesseract or Apple Vision observations; source and prepared coordinate mappings retained

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already fix the safety profile (destructive=false, openWorld=false), and the description adds two real behavioral facts beyond them: OCR text and geometry do not establish table structure or factual support, and missing local runtimes yield an explicit limitation instead of a silent failure. There is mild tension between "Observe" and readOnlyHint=false, but the tool plausibly writes prepared-image artifacts, so this is not a hard contradiction.

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, purpose front-loaded, with the limitation caveats following. Every clause carries information; nothing is padding or restated from the schema.

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?

An output schema exists, so return values need not be described, and all parameters are documented in the schema. The description covers engine locality and failure/unreliability semantics, but omits when to prefer this over vision_ocr and does not clarify what is written given readOnlyHint=false.

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 100%, so the schema already documents file_path, engine, crop, resize, languages, and the rest; baseline 3 applies. The description adds only that the engine is local and explicitly chosen, a small increment over the enum values in 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 names a specific verb+resource ("Observe text and geometry") and scopes it to "an explicitly selected local OCR engine," which separates it from the sibling vision_ocr (likely the cloud path). It is clear what the tool does, though it never names the sibling it is not, so differentiation requires inference.

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?

Usage is only implied: the caller is told the engine must be selected explicitly and is local, but there is no explicit statement of when to choose this over vision_ocr or image_read. The second sentence reads as an interpretation caveat rather than selection guidance.

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

image_readImage ReadB

Return a bounded local still image as inspectable PNG and exact source metadata.

Animated inputs expose one still with an explicit limitation. Native output may be processed by the host's model; this server invokes no model or upload.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesRegular local media path within LOCAL_FILE_ACCESS_ROOT
max_pixelsNoMaximum output pixels per frame
include_imageNoInclude bounded native PNG blocks; false returns text metadata

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior1/5

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

The description frames a purely passive read ('Return ... as inspectable PNG', 'this server invokes no model or upload'), yet readOnlyHint=false declares the operation is not read-only. An agent that trusts the description will treat this as a safe read while the annotation says state may change, which is the contradiction pattern. The genuinely useful disclosures (bounded output, one-still limitation for animated inputs, no model/upload) are undermined by this mismatch.

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?

Three tight sentences with the core purpose front-loaded and no filler; the animated-input caveat and the model/upload note are compact. It is slightly abstract in phrasing but earns its length.

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?

An output schema exists so return values need not be explained, and the description covers purpose, the animated-input limitation, and the no-model/no-upload behavior. Only the missing sibling-routing guidance and the annotation mismatch leave a gap.

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 100%, so file_path, max_pixels, and include_image are already fully documented. The description only echoes the bounding concept via 'bounded local still image' and adds nothing about max_pixels semantics or the include_image toggle, so the schema carries the load.

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?

States a concrete verb and resource ('Return a bounded local still image') plus the output form (inspectable PNG and exact source metadata), so the agent knows what it gets back. It does not explicitly differentiate itself from close siblings such as image_crop, image_ocr, or media_info, which keeps it below a 5.

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

Usage Guidelines3/5

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

The description implies usage by describing behavior on animated inputs, but never states when to reach for this tool versus image_crop, image_edit, video_frame, or media_info, and gives no when-not conditions. Context is implied rather than prescribed.

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

image_segmentImage SegmentA

Plan or submit one image and preserve actual mask and overlay artifacts.

Scores and masks are unverified proposals. Service selection and checkpoint declarations do not attest a loaded model or establish redistribution rights.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact original still-image digest, prompt and operator-configured service; submission requires an explicit workflow grant
include_imageNoEmit bounded verified native PNGs; text retains the same artifact identities

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare the generic profile (write, open-world, non-idempotent, non-destructive). The description adds substantive context the annotations cannot: outputs are 'unverified proposals', and service/checkpoint declarations 'do not attest a loaded model or establish redistribution rights' — real trust and licensing caveats for an external-service call.

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?

Two short paragraphs with the action front-loaded and no filler sentences. The prose is dense and slightly abstract ('checkpoint declarations'), but every sentence carries distinct information.

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?

With an output schema present, return values need not be described, and annotations cover the safety profile. The description supplies the missing behavioral caveats (unverified outputs, service/provenance limits), leaving only minor gaps such as the async/job nature of a submission.

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 100%, so the baseline is 3. The description goes slightly beyond it by mapping 'plan' to the dry-run path and by framing service_id as a 'service selection' whose declaration carries no model-provenance guarantee, and by tying 'preserve artifacts' to include_image.

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 names a specific verb pair ('plan or submit') and resource ('one image') and states the deliverable ('mask and overlay artifacts'), which identifies it as a segmentation tool. It does not, however, contrast itself against nearby siblings like image_crop, image_edit, or vision_grounding, so differentiation is left to the tool name.

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

Usage Guidelines3/5

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

The 'plan or submit' framing implies a two-phase workflow (dry_run first, then authorized submission), and the caveat that submission requires an explicit grant hints at a prerequisite. But there is no explicit statement of when to choose this over image_crop/image_edit or any exclusion criteria.

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

infra_cacheInfra CacheA
DestructiveIdempotent

Manage the analysis cache — stats, list, clear, or inspect context cache state.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoCache operation — "stats", "list", "clear", or "context".stats
auth_tokenNoOptional infra auth token (required when INFRA_ADMIN_TOKEN is configured)
content_idNoScope clear to a specific content ID

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, idempotentHint=true, readOnlyHint=false and openWorldHint=false, so the safety profile is carried by structured data. The description adds little beyond restating the action enum and does not flag which action (clear) is the destructive one, but since annotations cover this the minimum viable 3 applies.

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?

A single front-loaded sentence with no filler; the resource is stated before the operations. It is efficiently sized, though it leans on the enum rather than explaining intent.

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?

With a full output schema and complete annotations carrying the safety and return semantics, and 100% parameter coverage, the description is adequate for calling the tool. It stops short of explaining operation selection, which is the only notable gap.

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

Parameters3/5

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

Schema description coverage is 100%, so action, auth_token and content_id are already documented in the schema (including the INFRA_ADMIN_TOKEN note). The description 'Scope clear to a specific content ID' adds nothing the schema does not already state, so the baseline 3 is appropriate.

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 names a specific resource ('the analysis cache') and enumerates the four operations (stats, list, clear, inspect context), which maps cleanly to the action enum. It is distinguishable from most siblings, though it never explicitly positions itself against the nearby infra_configure tool.

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?

Usage is only implied through the action list; there is no statement of when to choose stats vs list vs context, nor any exclusion or prerequisite guidance (e.g., that clear is the mutating path). An agent must infer operation selection from the enum alone.

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

infra_configureInfra ConfigureA
Idempotent

Reconfigure the server at runtime — preset, model, thinking level, or temperature.

Changes take effect immediately for all subsequent tool calls.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoGemini model ID override (takes precedence over preset)
presetNoNamed model preset: "best" (Pro preview), "stable" (Flash), or "budget" (Flash-Lite)
auth_tokenNoOptional infra auth token (required when INFRA_ADMIN_TOKEN is configured)
temperatureNoSampling temperature for models that support it (not 3.6+ Flash)
thinking_levelNoThinking depth — "minimal", "low", "medium", or "high".

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context beyond them: the change is a live, in-process mutation that takes effect immediately and persists only for subsequent tool calls. It does not clarify scope (session vs. all users) or what happens to fields left unset, which is why it falls short of 5.

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, zero filler, with the core action and its field set front-loaded before the side-effect note. Every clause 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?

An output schema exists, so return values need not be explained, and annotations cover the mutation safety profile. The description supplies the key runtime-effect context, but a reconfiguration tool would benefit from stating whether omitted parameters leave existing settings unchanged and whether the change is scoped to the session or the whole server.

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 description coverage is 100%, and the schema itself is richer than the description (model precedence over preset, temperature unsupported on certain Flash models, conditional auth token). The description merely lists the four configurable aspects, adding no semantics the schema does not already carry.

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?

Specific verb ('Reconfigure') plus resource ('the server at runtime') and an enumeration of exactly what can be changed (preset, model, thinking level, temperature). No sibling in the tool list performs runtime configuration, so the tool is unambiguous even without naming an alternative.

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?

There is no explicit when-to-use/when-not or comparison to an alternative, but with no sibling config tool the usage is reasonably implied. The note that changes apply to all subsequent tool calls gives context about consequences rather than guidance on choosing this tool.

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

job_cancelJob CancelA

Cancel queued video work or request its owner stop at the next checkpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesDurable video batch or window-run ID

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and openWorldHint=false, so the description carries the real behavioral burden, and it does so well by disclosing that cancellation is not always immediate: queued work is cancelled outright, while active work only receives a cooperative stop request honored at the next checkpoint. It stops short of covering idempotency, error behavior for unknown/finished jobs, or permission requirements.

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

Conciseness5/5

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

A single front-loaded sentence with no filler; the immediate-cancel case is stated first and the cooperative-stop nuance second, which is the correct priority order.

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?

An output schema exists, so return values need no explanation, and the annotations cover the safety profile. The description supplies the key operational nuance an agent needs. Minor gaps remain around what happens if the job is already finished or the ID is invalid, but the definition is broadly complete for a one-parameter cancel 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?

Schema description coverage is 100% and the single job_id parameter is already documented as a 'Durable video batch or window-run ID'. The description adds no format, scoping, or lookup detail beyond that, so the baseline 3 applies.

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

Purpose4/5

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

The description gives a specific verb (cancel) and resource (queued video work / jobs), and it distinguishes two operating modes: immediate cancellation of queued work versus a cooperative stop request for running work. It does not name or differentiate itself from siblings like job_status or source_ingest_cancel, so it falls short of a 5.

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

Usage Guidelines3/5

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

There is no explicit when-to-use or when-not-to-use statement, and no alternative tool is named. However, the description does implicitly scope usage by job state (queued vs. running) and by the fact that a running job is only asked to stop at the next checkpoint, which is meaningful routing information.

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

job_statusJob StatusB
Read-only

Read retained job identity, outcomes and current byte attestation.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesRecorded durable job ID

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds the useful notion that results are 'retained' and that the byte count is a 'current' attestation (implying repeated polling), but says nothing about behavior when the job_id is unknown or expired.

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?

A single tight sentence with the verb and payload front-loaded; nothing is wasted. It is slightly undermined by the unexplained term 'byte attestation'.

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?

With an output schema present, the description needn't enumerate return values, and the sole parameter is fully documented. However, for a status tool tied into a job lifecycle with many sibling producers, it omits when the tool is applicable and how to interpret a missing/expired job.

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 description coverage is 100% and the single job_id parameter is documented in-schema as 'Recorded durable job ID'. The description adds no format, origin, or lookup guidance beyond that, so the baseline 3 applies.

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

Purpose4/5

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

The description gives a clear verb ('Read') and resource ('job'), plus the fields returned (identity, outcomes, byte attestation). It does not distinguish itself from the sibling job_cancel or from the ingestion tools that create jobs, and 'byte attestation' is opaque jargon, keeping it below a 5.

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

Usage Guidelines2/5

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

There is no statement of when to call this versus job_cancel, or when a job_id becomes available (e.g. after source_ingest or research_web). The agent must infer that this is a polling/status lookup 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.

knowledge_askKnowledge AskA
Read-onlyIdempotent

Ask a question and get an AI-generated answer grounded in stored knowledge.

Uses Weaviate AsyncQueryAgent in ask mode to synthesize an answer from objects across knowledge collections, with source citations.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesQuestion to answer from stored knowledge
collectionsNoCollections to search (all if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so safety is covered. The description adds genuinely useful behavior beyond that: the answer is synthesized rather than raw, it is grounded in stored objects, and it returns source citations, which tells the agent what to expect in the response.

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

Conciseness4/5

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

Front-loaded with the core action in the first sentence and kept to two short sentences. 'Uses Weaviate AsyncQueryAgent in ask mode' is mildly implementation-flavored, but it does convey synthesis behavior, so it mostly 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?

With an output schema present and annotations covering the safety profile, the description only needs to convey the synthesis/citation behavior, which it does. It omits any note about latency or async semantics despite 'AsyncQueryAgent', a minor gap for a grounded-generation 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?

Schema description coverage is 100%, so both the query and collections parameters are already documented in the schema. The phrase 'across knowledge collections' loosely reinforces the collections parameter's scope but adds no format or syntax detail, so the baseline 3 applies.

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?

States a specific verb (ask a question) and resource (stored knowledge), and the phrase 'AI-generated answer' distinguishes it from retrieval siblings like knowledge_search or knowledge_query. However, it never names those siblings, so the agent must infer the distinction itself.

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 Q&A synthesis rather than raw retrieval, but gives no explicit when-to-use or when-not-to-use guidance against the many knowledge_* siblings. The agent has to infer that this is the synthesis path and knowledge_query/search are the lookup paths.

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

knowledge_fetchKnowledge FetchA
Read-onlyIdempotent

Fetch a single object by UUID from a knowledge collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
object_idYesWeaviate object UUID
collectionYesCollection the object belongs to.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, covering the safety profile. The description adds only that the lookup is single-object scoped, and says nothing about behavior on a missing UUID or invalid collection. With annotations carrying the load, this is adequate but thin.

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 no filler; the key qualifiers (single, by UUID, from a collection) are all present and nothing is wasted.

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?

With an output schema present and annotations covering safety semantics, the description needn't explain return values. The only real gap is the absence of any note on error/not-found behavior, which is minor for such a simple retrieval 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?

Schema description coverage is 100%, with object_id documented as a Weaviate UUID and collection as a fully enumerated set, so the schema does the heavy lifting. The description adds no syntax or format details beyond that, which is the expected baseline.

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?

States a specific verb+resource+scope: 'Fetch a single object by UUID from a knowledge collection.' The 'by UUID' and 'single object' phrasing implicitly distinguishes it from search/query siblings like knowledge_search and knowledge_query, but it never names them or draws the contrast explicitly.

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?

Usage is only implied: 'by UUID' suggests the caller already holds the identifier and doesn't need a search. There is no explicit when-to-use, when-not, or named alternative for cases where only a name/filter is known.

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

knowledge_ingestKnowledge IngestA

Manually insert data into a knowledge collection.

Properties are validated against the collection schema — unknown keys are rejected with allowed name:type pairs.

Tip: call knowledge_schema(collection=...) first to see expected properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionYesTarget collection name.
propertiesYesObject properties to insert

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare this is a write (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the safety profile is covered. The description adds real behavioral context beyond that: properties are validated against the collection schema and unknown keys are rejected with allowed name:type pairs — useful failure-mode disclosure. It doesn't mention duplicate handling despite idempotentHint=false.

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 tight sentences plus a tip: the action is front-loaded, the validation rule follows, and the prerequisite call is last as a distinct actionable note. No filler.

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?

An output schema exists, so return values need no explanation, and the write/validation semantics are covered. For a mutation tool with idempotentHint=false, the only notable omission is whether re-inserting the same data creates duplicates.

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 description coverage is 100%, so baseline is 3, but the description goes further by explaining that 'properties' must conform to the collection schema and listing the rejection behavior for unknown keys, which is meaningful for an open additionalProperties object. It does not enumerate expected property shapes (delegated to knowledge_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?

States a specific verb and resource: 'Manually insert data into a knowledge collection.' The word 'manually' implicitly separates it from automated ingestion siblings (source_ingest), and the required 'collection' enum makes the target unambiguous. It doesn't explicitly name a sibling, but the operation is clear.

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?

Provides a concrete prerequisite/alternative route: 'call knowledge_schema(collection=...) first to see expected properties.' That is actionable guidance for how to use the tool successfully. It stops short of stating when NOT to use it (e.g. use knowledge_query/knowledge_search for reads instead).

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

knowledge_queryKnowledge QueryA
Read-onlyIdempotent

[DEPRECATED] Search knowledge store using natural language.

Deprecated: Use knowledge_search instead, which now includes Cohere reranking and Flash summarization for better results with lower token usage.

Uses Weaviate AsyncQueryAgent in search mode for intelligent object retrieval.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results
queryYesNatural language search query
collectionsNoCollections to search (all if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the bar is lower. The description adds genuinely useful behavioral context beyond the annotations: the deprecation status and the underlying Weaviate AsyncQueryAgent search mechanism. It does not describe result format, but an output schema exists, so this is minor.

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

Conciseness5/5

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

The deprecation warning is front-loaded in the first token of the description, followed by three tight sentences with no filler. Every sentence earns its place by routing the agent away from a stale tool.

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?

An output schema exists, so return values need not be explained. The description fully covers what an agent needs: what the tool does, that it is deprecated, and where to go instead.

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 description coverage is 100%, so all three parameters (query, limit, collections) are already documented in the schema. The description adds no parameter syntax or format details beyond that, making the baseline 3 appropriate.

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

Purpose5/5

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

The description gives a specific verb and resource ('Search knowledge store using natural language') and explicitly distinguishes itself from the sibling knowledge_search by naming it as the recommended replacement. An agent can route correctly without opening any schema.

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

Usage Guidelines5/5

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

It states an explicit when-to-use-this-vs-alternative rule: it is deprecated and the agent should use knowledge_search instead, with the concrete reason (Cohere reranking and Flash summarization, lower token usage). Nothing is left to inference.

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

knowledge_schemaKnowledge SchemaA
Read-onlyIdempotent

Return property schemas for knowledge collections.

Reads from local CollectionDef objects — no Weaviate connection needed. Use this before knowledge_ingest to discover expected property names and types.

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionNoCollection to inspect (omit for all)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds genuinely new context beyond that: it reads from local CollectionDef objects and requires no Weaviate connection, which tells the agent this is a fast, offline-safe call.

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?

Three short sentences, zero filler, and the core action is stated first. The implementation note and the usage hint each earn their 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?

For a one-parameter, read-only introspection tool with a full output schema and rich annotations, nothing an agent needs in order to call it correctly is missing. Return-value shape is covered by the output schema, so the description need not describe it.

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 description coverage is 100% and the single `collection` parameter is already documented as 'Collection to inspect (omit for all).' The description's plural 'collections' loosely implies the omit-for-all default, but adds no syntax or semantics beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource: 'Return property schemas for knowledge collections.' An agent can immediately tell this is a schema-introspection tool, distinct from write tools like knowledge_ingest. It does not explicitly contrast itself with near-neighbors such as knowledge_stats or knowledge_query, so sibling differentiation is only partial.

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?

Gives a concrete when-to-use rule: 'Use this before knowledge_ingest to discover expected property names and types.' That ties the tool to a workflow step. It stops short of stating when NOT to use it or naming alternative introspection paths.

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

knowledge_statsKnowledge StatsB
Read-onlyIdempotent

Get object counts per collection, optionally grouped by a property.

ParametersJSON Schema
NameRequiredDescriptionDefault
group_byNoGroup counts by a text property (e.g. evidence_tier, source_tool)
collectionNoCollection to count (all if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safe-read profile is fully covered. The description adds useful context about the output shape (per-collection counts, optional property grouping) but says nothing about cost, limits, or behavior when a collection is omitted. With annotations carrying the safety burden, a 3 is appropriate.

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

Conciseness5/5

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

A single front-loaded sentence with zero filler. The core action leads and the optional modifier follows, and 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?

The tool is simple (2 optional params) and has an output schema, so return values need not be explained here. Annotations cover the safety profile and the schema fully documents parameters. The only gap is the absence of routing guidance against siblings, but for a low-complexity stats tool this is close to 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?

Schema description coverage is 100%, so both parameters (group_by, collection) are already documented in the schema with examples and the enum of collections. The description restates 'per collection' and 'grouped by a property' but adds no syntax or semantics beyond the schema, which is the baseline-3 case.

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

Purpose4/5

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

States a specific verb and resource ('Get object counts per collection') plus the grouping capability, so the agent knows exactly what statistic is returned. It does not, however, name or distinguish itself from siblings like knowledge_query or knowledge_ask, so the differentiation must be inferred from the name.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance and no named alternative. An agent must infer that this is the counting/aggregation tool versus knowledge_query (data retrieval) or knowledge_schema (structural metadata). Usage is implied by the name only.

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

media_acquireMedia AcquireC

Acquire bounded media into private owned storage with exact byte identity.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesLocal video path, YouTube/Loom URL, or HTTPS direct video/HLS URL

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=false, and openWorldHint=true, so the agent knows this is a non-idempotent write pulling from the open world. The description adds 'bounded' (implying size limits) and 'exact byte identity' (implying verification), which are useful. But it omits auth requirements, where storage lives, and what a re-run over the same source does – notable gaps for a non-idempotent mutation.

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?

A single front-loaded sentence with no filler. It is efficient, though its terseness borders on under-specification rather than true economy.

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?

An output schema exists, so return values need no explanation, and there is only one well-documented parameter. Still, for a non-idempotent open-world write the description omits re-run behavior, storage semantics, and failure modes, leaving it thinner than the operation warrants.

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 100% and the single `source` parameter is fully documented with its accepted forms (local path, YouTube/Loom URL, HTTPS/HLS URL). 'Bounded' loosely hints at size constraints on the source but adds no syntax or format detail beyond the schema, so baseline 3 is appropriate.

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

Purpose3/5

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

It names a verb ('Acquire') and resource ('media') and states the destination ('private owned storage'), so the general intent lands. However, qualifiers like 'bounded' and 'exact byte identity' are jargon that doesn't sharpen what actually happens, and it never distinguishes this from close siblings such as source_ingest or media_source_inspect.

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?

There is no when-to-use guidance, no prerequisites, and no reference to any alternative. With siblings like source_ingest and source_ingest_read in the set, an agent gets no signal for choosing this tool over them.

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

media_analyze_musicMedia Analyze MusicA

Infer timed musical sections and properties from actual decoded audio.

Instruments, mood, tags, tempo, key and meter remain model interpretations. Submitted PCM clocks and hashes identify the evidence for each section.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesAudio-only analysis of an exact local source; timed structure and inferred musical properties

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/5

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

Goes beyond the annotations by disclosing that instruments/mood/tags/tempo/key/meter are 'model interpretations' (non-deterministic, consistent with idempotentHint=false) and that PCM clocks and hashes tie each section to evidence. This is real behavioral context the structured fields don't convey.

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

Conciseness4/5

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

Three tight sentences, front-loaded with the purpose before the interpretive caveat and evidence note. Every sentence earns its place, though the caveat could be integrated more crisply.

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?

With an output schema present, return values need not be explained, and annotations cover the safety profile. The description supplies the interpretive caveat and evidence model, leaving only explicit routing/prerequisite guidance unaddressed.

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 description coverage is 100% and the nested request object is fully documented, so the schema carries the parameter burden. The description adds no syntax or format detail beyond it, making the baseline 3 correct.

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?

States a specific verb and resource: 'Infer timed musical sections and properties from actual decoded audio.' An agent can tell this apart from generic siblings like audio_dsp_analyze or audio_transcribe, though it never explicitly names or contrasts with them.

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 phrase 'from actual decoded audio' implies a decoded-source precondition, but there is no explicit when-to-use guidance, no mention of alternatives (audio_dsp_analyze, audio_transcribe, media_perceive), and no exclusions or prerequisites such as authorization for submission.

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

media_asset_removeMedia Asset RemoveA
Destructive

Remove one verified owned asset and invalidate its source-dependent caches.

ParametersJSON Schema
NameRequiredDescriptionDefault
asset_idYesFull SHA-256 asset identity returned by media_acquire; paths are forbidden

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, so the safety profile is partly covered. The description adds genuinely new behavioral context beyond the annotations: the removal cascades into invalidation of source-dependent caches. It still does not state that the operation is permanent/irrecoverable.

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?

One sentence, front-loaded with the primary action and the scope, with the side effect tacked on efficiently. Zero wasted 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?

For a one-parameter destructive tool, the description plus annotations (destructive) and the existing output schema cover most of what an agent needs. The remaining gap is that permanence/irreversibility and the recommended way to obtain a valid asset_id are never stated.

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 100% with a single fully documented asset_id parameter (SHA-256 pattern, 'paths are forbidden'), so the schema carries the load. The description's 'verified owned asset' adds a mild ownership/verification nuance but no format or sourcing detail beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

Names a specific verb (remove) and resource (verified owned media asset), and the qualifier 'verified owned' narrows it against the many sibling media/image/audio tools. It does not explicitly contrast with siblings like media_assets_list or media_info, but the intent is unambiguous.

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

Usage Guidelines2/5

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

No statement of when to use this versus alternatives, no prerequisite that asset_id comes from media_acquire or media_assets_list, and no warning about when removal is inappropriate or irreversible. The agent must infer all routing from the name.

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

media_assets_listMedia Assets ListB
Read-onlyIdempotent

List a bounded page with fresh byte checks and explicit unhealthy states.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum asset records returned
offsetNoOffset into SHA-256 ordered owned assets

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description adds genuine behavioral context beyond them: it discloses that listing triggers 'fresh byte checks' and can surface 'explicit unhealthy states'. This tells the agent the call is not a pure cached read and that results may include error states.

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?

A single front-loaded sentence with no filler, economy that gets the read-only, paginated nature across quickly. It borders on cryptic (

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?

With an output schema covering return values and annotations covering safety, the description need not explain results. What remains missing is sibling routing and any hint of cost/latency implied by the fresh byte checks, but the structured metadata supplies most of what an agent needs.

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

Parameters3/5

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

Schema description coverage is 100%, so limit and offset (including the SHA-256 ordering) are already fully documented. The description's 'bounded page' phrasing only echoes the pagination concept without adding format or ordering detail, so the baseline 3 applies.

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

Purpose3/5

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

The verb 'List' is clear and the name supplies the resource ('media_assets'), but the description itself never names what is listed and never distinguishes it from siblings like media_info, media_metadata, or media_source_inspect. 'List a bounded page' is a vague purpose statement that leans on the title to be understood.

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 when-to-use guidance is given, no exclusions, and no alternative sibling is named. An agent cannot infer from the text whether this should be preferred over media_info or media_metadata for inspecting owned assets.

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

media_caption_eventsMedia Caption EventsC

Caption timed audio, visual and combined occurrences with submitted support.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local AV selection and source-supported event captions; dry preparation by default

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already signal non-read-only, open-world, non-idempotent, non-destructive behavior. The description adds only the vague phrase 'with submitted support' and does not disclose the dry_run default (true), the authorize_submission gate, or that a local file with a verified hash is required. For a submission-oriented tool these are material omissions.

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

Conciseness3/5

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

It is a single front-loaded sentence with no redundancy, but the phrasing is vague filler ('with submitted support') rather than information-dense, so brevity comes at the cost of substance.

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?

This is a complex tool with a nested request object, many defaulted limits, an authorization flag, and hash verification, plus an output schema. The one-line description omits the dry-run default, the submission authorization requirement, and the local-source constraint, leaving the agent under-informed about how to invoke it safely.

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 description coverage is 100%, so the nested request object, limits, dry_run, and sha256 pattern are already documented structurally. The description contributes no additional parameter meaning, which is the baseline-3 case when the schema does the heavy lifting.

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

Purpose3/5

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

The verb 'caption' and the objects 'timed audio, visual and combined occurrences' give a rough sense that this generates event captions over media, but the trailing phrase 'with submitted support' is cryptic and no sibling (media_count_events, media_ground_events, media_perceive) is distinguished. An agent can guess the domain but not the precise operation.

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?

There is no when-to-use guidance, no mention of prerequisites (local file, sha256), and no routing to or away from the closely related event tools. The agent must infer usage entirely from the schema.

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

media_count_eventsMedia Count EventsB

Count retained inferred occurrences of a target in bounded source windows.

Counts concern admitted records in submitted evidence. Overlapping records remain distinct, and sampled frames leave gaps where events may be missed.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesTarget event and exact local selection; count is derived from retained supported occurrence records

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already disclose readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is partly covered. The description adds real context beyond that: counts derive only from 'admitted records in submitted evidence,' overlapping records are counted distinctly, and frame sampling leaves gaps where events may be missed. These are meaningful behavioral disclosures not present in the annotations.

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

Conciseness4/5

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

Two short paragraphs, front-loaded with the core action, and the second paragraph adds distinct caveats rather than padding. The dense jargon costs a little clarity, but nothing is redundant or wasted.

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?

An output schema exists and annotations cover safety, so the description needn't explain return values. But for a tool with a 17-property nested request, it never explains the dry_run-default-true / authorize_submission submission workflow or when this is preferable to the many sibling event tools, leaving a real gap.

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 description coverage is 100% and the single nested 'request' object carries its own description, so the schema does the heavy lifting. The description adds no syntax or semantics for parameters like dry_run, authorize_submission, or the limits block. Baseline 3 applies when the schema already documents everything.

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 first sentence gives a specific verb and resource: 'Count ... occurrences of a target in bounded source windows.' An agent can grasp that this counts target events within windowed media. However, the phrasing is jargon-heavy ('retained inferred occurrences') and it makes no attempt to distinguish itself from near-siblings like media_caption_events or media_ground_events.

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?

There is no when-to-use guidance, no prerequisites, and no alternatives named despite many overlapping event/analysis siblings. The second paragraph states counting caveats rather than selection conditions, so an agent gets no help deciding between this and media_ground_events or media_caption_events.

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

media_edit_footageMedia Edit FootageA

Edit bounded local footage through a measured prepare and approval workflow.

Prepare retains source intervals, actual frame clocks, grade/audio decisions and scene previews. Assemble requires the exact prepared manifest and every scene artifact approval, then gates full decoding, timeline, black spans and required audio loudness before delivery. Declared beat grids and approvals remain caller assertions; technical checks do not establish visual semantics. FFmpeg and Pillow must already be installed. No provider is invoked.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesPrepare exact local source scenes or assemble a digest-bound ledger with complete scene approvals
include_imageNoInclude bounded verified scene/timeline PNGs; text retains the same artifact identities

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

With annotations covering safety flags, the description still adds meaningful behavior: prepare retains source intervals, frame clocks, grade/audio decisions and previews; assemble gates decoding, timeline, black spans and audio loudness; beat grids and approvals are only caller assertions, not verified semantics. It also discloses prerequisites (FFmpeg and Pillow must be installed) and that no provider is invoked, which the annotations do not convey.

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

Conciseness4/5

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

Three tight sentences, front-loaded with the phase model, then the prepare behavior, then assemble requirements and caveats. Dense jargon such as 'measured prepare and approval workflow' costs a little clarity, but every sentence carries information with no filler.

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?

An output schema exists so return values need not be described. Given two top-level parameters with 100% schema coverage, the description supplies the missing workflow context, prerequisites and the assertion-versus-verification boundary, leaving little an agent would need but cannot find.

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 description coverage is 100%, so the schema already documents the request union, beats, grade, approvals and include_image. The description reinforces the prepare/assemble split and clarifies that beat grids are declared, not detected, but does not add format or syntax detail beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

States specific verbs (prepare, assemble) and the resource (bounded local footage) with a two-phase workflow, and explains what each phase produces. It does not name sibling tools such as video_clip_export or image_edit, so an agent must infer differentiation, but the purpose itself is unambiguous.

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

Usage Guidelines3/5

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

The description implies usage through the workflow itself (prepare first, then assemble with the exact manifest and approvals), which is a real sequencing constraint. However it never states when to choose this over alternatives like video_clip_export, nor any when-not condition, so guidance beyond the ordering is inferred rather than given.

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

media_ground_eventsMedia Ground EventsC

Ground a query in source-supported intervals with uncalibrated scores.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesQuery with positive top_k; retain all admitted records and disclose selected and truncated matches

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, and idempotentHint=false. The description adds the useful caveat that returned scores are uncalibrated, but it omits behavioral details such as dry-run defaulting, authorization requirements, expected source hash verification, and external-call limits.

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?

The description is a single front-loaded sentence with no wasted words. For a tool with a deeply nested request object and many behavioral controls, however, it is too terse to be considered appropriately sized.

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?

An output schema exists, so return values need not be explained, and annotations cover some safety traits. Still, the description is incomplete for a complex media-grounding tool: it does not explain dry-run behavior, submission authorization, source-hash verification, or how to choose this tool over related media event tools.

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 description coverage is 100%, so the schema itself documents all parameters, including nested limits and required fields. The description adds no additional parameter meaning beyond the schema, which establishes the baseline of 3.

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

Purpose3/5

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

The description has a verb and resource: 'Ground a query in source-supported intervals.' However, 'source-supported intervals' and 'uncalibrated scores' are abstract and do not clarify the media modality or distinguish this tool from siblings such as media_caption_events or media_count_events.

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 gives no when-to-use context, no alternatives, and no preconditions for selecting this tool. An agent has no guidance beyond the name and schema.

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

media_infoMedia InfoA

Inspect exact local media bytes, stream metadata, rotation, audio and chapters.

Uses independently installed FFprobe and a bounded private stable snapshot. This performs no provider upload and does not establish watched coverage.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesRegular local media path within LOCAL_FILE_ACCESS_ROOT

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations carry the safety profile, and the description adds real context beyond them: the FFprobe dependency, the bounded private stable snapshot, and the explicit statement that no provider upload occurs and no watched coverage is established. The 'snapshot' phrasing also explains why readOnlyHint is false for an inspect-style 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?

Three short sentences, front-loaded with the verb and resource list, then constraints. No filler or repetition; 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?

With an output schema present, return values need not be described, and the description covers the operation's scope, side-effect posture, and external dependency. Minor gap: no explicit guidance on selecting this over the near-name-collision siblings like media_metadata or media_source_inspect.

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?

Only one parameter, fully documented in the schema (LOCAL_FILE_ACCESS_ROOT constraint, 1-4096 chars). The description reinforces 'local media bytes' but adds no format or path-syntax detail beyond the schema, so the baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb ('Inspect') plus a concrete resource set: local media bytes, stream metadata, rotation, audio, chapters. That distinguishes it from provider-oriented siblings such as media_metadata and media_source_inspect, though it never names an alternative tool explicitly.

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 clauses 'no provider upload' and 'does not establish watched coverage' implicitly scope it to local, non-ingesting inspection, which is useful routing signal. However, there is no explicit when-to-use statement or named alternative among the many media_* siblings.

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

media_metadataMedia MetadataB
Read-onlyIdempotent

Retrieve explicit metadata without downloading video, inference or upload.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesLocal video path, YouTube/Loom URL, or HTTPS direct video/HLS URL

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds meaningful context beyond that: it performs no download, inference, or upload, telling the agent this is a lightweight operation. It stops short of describing error behavior or metadata coverage, so not a 5.

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

Conciseness5/5

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

One front-loaded sentence with zero padding; the operation is stated first and the cost-avoidance qualifier second.

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?

An output schema exists so return values need not be explained, and annotations carry the safety profile. But 'explicit metadata' leaves the actual payload ambiguous, and with multiple overlapping siblings (video_metadata, media_info, media_source_inspect) the definition should clarify what this returns and when to prefer it.

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 description coverage is 100% with a single, well-documented 'source' parameter (local path, YouTube/Loom URL, or HTTPS/HLS URL). The description adds no format or syntax detail beyond the schema, so the baseline 3 applies.

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

Purpose3/5

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

States a verb+resource (retrieve metadata) but 'explicit metadata' is vague about what metadata is returned, and nothing distinguishes it from siblings like video_metadata, media_info, or media_source_inspect. An agent cannot tell from the text why it would pick this over video_metadata.

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 phrase 'without downloading video, inference or upload' implies the use case (cheap metadata lookup that avoids heavy processing), which is a real contextual hint. However, no alternative is named and there is no explicit when/when-not guidance relative to the many metadata-adjacent siblings.

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

media_perceiveMedia PerceiveA

Infer separate spoken and visible source evidence across bounded AV windows.

Local dry plans prepare exact sampled frames and decoded PCM with no provider calls. Submission requires the exact workflow grant and configured account. Model intervals map back to source seconds; sampled images leave visual gaps.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local media, bounded ordered windows and explicit Gemini submission grant; dry plans are the default

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations establish a non-read-only, open-world, non-idempotent call to an external provider, and the description meaningfully extends this: dry runs make no provider calls, submission needs an exact grant and a configured account, and sampled frames leave visual gaps (a real accuracy caveat). That is substantive disclosure beyond structured fields, though it omits cost/rate-limit behavior.

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?

Three tight sentences with the core purpose front-loaded and operational facts following. Every clause carries information; no padding or restatement of the title.

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?

An output schema exists, so return values need not be explained, and the description covers the dry-run/submit gating, the account/grant prerequisites, and the sampling limitation. The remaining gap is sibling disambiguation, which keeps it from a 5.

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 100%, so every field including the nested limits object is already documented, making 3 the baseline. The description adds only tangential mapping detail ('model intervals map back to source seconds') and the sampling-gap caveat rather than clarifying specific parameters like fps, window_seconds, or authorize_submission.

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?

States a specific verb ('infer') and resource ('separate spoken and visible source evidence') with a clear scope ('across bounded AV windows'), which distinguishes it from pure-audio (audio_transcribe) or pure-vision siblings. However, it never names an alternative in the sibling list, so the agent must infer the boundary itself.

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

Usage Guidelines3/5

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

The description implies a two-phase workflow (dry plan first, then submission) and states the precondition for submission ('exact workflow grant and configured account'). That is useful operational context, but it gives no explicit when-to-use vs video_analyze, audio_transcribe, or video_analyze_windows, leaving the choice to inference.

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

media_source_inspectMedia Source InspectA
Read-onlyIdempotent

Inspect source syntax and capabilities without contacting or downloading it.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesLocal video path, YouTube/Loom URL, or HTTPS direct video/HLS URL

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower, yet the description adds genuinely useful behavior beyond them: this call performs no network contact and no download, i.e. it is a pure local syntax/capability check. It does not describe the return format, but an output schema is present.

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?

One sentence, front-loaded with the verb and resource, with the distinguishing constraint appended. No filler whatsoever.

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?

Complete enough to call correctly: the parameter is fully documented in the schema, the return contract is covered by the output schema, and annotations supply the safety profile. The only residual gap is a slightly clearer statement of when to prefer this over media_info or media_acquire.

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 is a single parameter at 100% schema description coverage ('Local video path, YouTube/Loom URL, or HTTPS direct video/HLS URL'), so the schema fully documents accepted input forms. The description adds nothing parameter-specific. Baseline 3 is appropriate when the schema does all the work.

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?

States a specific verb+resource: 'Inspect source syntax and capabilities.' The qualifying phrase 'without contacting or downloading it' implicitly carves out territory from siblings like media_info, media_acquire, and source_ingest, so an agent can distinguish this as a dry validation step. It stops short of a 5 because no sibling is ever named.

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 'without contacting or downloading' clause implies the right moment to call it (pre-flight validation before acquisition/ingest), but the description never states that usage explicitly and names no alternatives. Usage must be inferred from the negative qualifier rather than read directly.

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

mhs_discoverMhs DiscoverB
Read-onlyIdempotent

Discover registered simulated devices and their explicit capabilities.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoOptional exact device tag
device_typeNoOptional exact simulated device type

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety and idempotency profile is covered structurally. The description adds a mild behavioral note that results are limited to already-registered devices, but says nothing about result size, pagination, or what happens on an empty registry. With annotations carrying the main burden, a 3 is appropriate.

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

Conciseness4/5

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

A single front-loaded sentence with a clear verb and no filler. It is efficient, though the trailing phrase 'and their explicit capabilities' is slightly ambiguous and does not earn as much as a routing or scoping clause would.

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?

Output schema exists, so return values need not be described, and annotations fully cover the read-only/idempotent/closed-world profile. Parameters are documented in-schema, leaving the description with little it must still carry. Adequate for a simple zero-required-parameter discovery call.

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?

Both parameters have 100% schema description coverage ('Optional exact device tag', 'Optional exact simulated device type'), so the schema already explains them. The description mentions neither filtering nor the fact that both filters are optional/exact-match, adding no meaning beyond the structured fields. Baseline 3 applies.

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

Purpose4/5

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

States a specific verb (Discover) and resource (registered simulated devices) plus an extra output dimension (their explicit capabilities). It is clear on its own, but gives no signal distinguishing it from the sibling mhs_* family (mhs_read, mhs_meta_info, mhs_health_check), so an agent cannot route between them from the text alone.

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 when-to-use, when-not-to-use, or alternative named. The description never says to call this before mhs_read/mhs_write, nor whether discovery is required prior to other operations in the mhs family. Only implied usage can be inferred.

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

mhs_health_checkMhs Health CheckC
Idempotent

Inspect fresh simulated health and acknowledge a failed-write health gate.

ParametersJSON Schema
NameRequiredDescriptionDefault
device_idNoQualified device ID; omit for all simulated devices

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, so the safety profile is covered. The description adds context that it acknowledges a failed-write gate (consistent with a non-read-only operation) but does not clarify what state changes, whether acknowledgement is reversible, or what a 'fresh simulated' inspection returns.

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?

A single compact sentence with the action front-loaded. However, the second clause is dense and cryptic rather than informative, slightly reducing value per word.

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?

An output schema exists, so return values need not be described. Still, the description leaves the core mechanics ('health gate', 'acknowledge', 'mhs') unexplained for a tool in a family with five siblings, so an agent lacks enough to call it confidently.

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?

With a single optional parameter and 100% schema description coverage, the schema already documents device_id and its 'omit for all devices' default. The description adds no semantics beyond the schema, so baseline 3 applies.

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

Purpose3/5

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

The verb 'inspect' and resource 'health' are present, but 'mhs' is never expanded and the second clause ('acknowledge a failed-write health gate') is cryptic enough that an agent cannot cleanly predict what the tool does. It fails to distinguish itself from siblings like mhs_read, mhs_reset, or mhs_meta_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?

There is no statement of when to call this versus mhs_read/mhs_write/mhs_reset, and no exclusion criteria or prerequisites. The phrase 'failed-write health gate' hints at a trigger condition but never explains it as guidance.

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

mhs_meta_infoMhs Meta InfoB
Read-onlyIdempotent

Inspect current device values, directions and effective simulated limits.

ParametersJSON Schema
NameRequiredDescriptionDefault
device_idYesQualified simulator adapter/device ID

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered. The description adds context about the returned information (values, directions, effective simulated limits) but does not disclose permissions, failure modes, or other behavioral traits beyond what annotations and the output schema provide.

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

Conciseness5/5

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

A single, front-loaded sentence with no extraneous text. Every word contributes to describing the tool's scope, making it appropriately sized for a simple read operation.

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

Completeness4/5

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

Given the tool's low complexity, the rich schema (100% coverage), presence of an output schema, and full annotations, the description is nearly complete for invocation. It could be improved by noting when this tool is preferred over mhs_read or mhs_discover, but it is sufficient for an agent that already knows the MHS family.

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 schema has 100% description coverage for the single 'device_id' parameter, so the baseline is 3. The description adds no additional meaning about this parameter beyond what the schema already states.

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 a specific verb ('Inspect') and a specific set of resources ('current device values, directions and effective simulated limits'). It is clear what the tool does, though it does not explicitly differentiate itself from likely siblings such as mhs_read or mhs_discover.

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?

There is no indication of when to use this tool versus alternatives like mhs_read, mhs_write, or mhs_discover, nor any prerequisites or exclusions. The purpose statement implies a use case, 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.

mhs_readMhs ReadC

Read declared simulated sensors or retain independently generated image bytes.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYesExact capability parameters; unknown fields are refused
device_idYesQualified simulator adapter/device ID
capabilityYesCapability declared by mhs_meta_info

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false, idempotentHint=false, destructiveHint=false, and openWorldHint=false. The description does not explain why a tool named and described as 'Read' is not read-only, nor does it detail side effects, authentication needs, or rate limits. The phrase 'retain independently generated image bytes' hints at a storage side effect but is ambiguous.

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?

Single sentence with no wasted words, front-loaded with the primary verb 'Read'. However, the second clause about retaining image bytes is vague and could be clearer.

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 three required parameters, a nested object, and rich schema/annotations/output schema, the description should clarify when to use this versus mhs_write and what 'retain' means. It leaves those gaps, making it incomplete for reliable tool selection.

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 description coverage is 100%, so the schema already documents device_id, capability, and params. The description adds no parameter-level detail, but baseline is 3 when the schema carries the load.

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?

States a specific verb 'Read' and resource 'declared simulated sensors', plus a secondary operation 'retain independently generated image bytes'. It does not differentiate from sibling tools like mhs_write or mhs_meta_info, but the core read purpose is 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 explicit when-to-use, prerequisites, or alternatives are provided. The only usage hint is implicit in 'declared simulated sensors' and 'retain image bytes', but there is no guidance on when to choose this over mhs_write or how to obtain capability via mhs_meta_info.

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

mhs_resetMhs ResetB
Idempotent

Latch a simulated emergency stop or perform separately authorized recovery.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesestop latches simulated output off; soft recovery requires host authority
device_idYesQualified simulator adapter/device ID
command_idYesExplicit command ID; replay reads its receipt without executing again

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare the operation profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=false), lowering the bar. The description contributes the useful fact that recovery requires separate authorization, but says nothing about preconditions, expected state before/after, or the replay/receipt behavior that matters for safe retries.

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?

A single front-loaded sentence with no filler; the dual behavior is stated up front. It is efficient, though its terseness borders on under-specification rather than excess.

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?

With a full output schema and rich annotations, the description needn't cover returns or safety, and the two modes plus the authorization caveat are present. Still, for a device-mutating reset it omits prerequisites and state assumptions, so it is only minimally 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?

Schema description coverage is 100% and the enum itself explains that 'estop' latches output off while 'soft' requires host authority, so the description adds nothing beyond the structured fields. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose3/5

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

The description names a specific action and object ('latch a simulated emergency stop' / 'perform recovery') so its purpose is inferable, but the framing sits awkwardly against the tool name 'reset' and the description gives no differentiation from adjacent siblings such as mhs_read, mhs_write, or mhs_discover. An agent can guess this is the estop/recovery control for an MHS simulator, but only after cross-reading the name and schema.

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?

'Separately authorized recovery' implies that one branch requires host authority, hinting at when the soft path applies, but there is no explicit when-to-use/when-not or named alternative. The mode enum carries the selection logic rather than the description, leaving usage only implied.

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

mhs_writeMhs WriteA
Idempotent

Apply one atomic simulated write or return its exact authority proposal.

Soft overrides and confirmation-required operations need separate host approval bound to this command, state and limits. confirm=True grants no approval. Terminal IDs replay their receipt. An explicitly resumed pending proposal may attempt its first action after exact host approval.

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsYesExact capability parameters; unknown fields are refused
confirmNoCaller acknowledgement only; never grants host authority
device_idYesQualified simulator adapter/device ID
capabilityYesCapability declared by mhs_meta_info
command_idYesExplicit command ID; replay reads its receipt without executing again

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Beyond the annotations (idempotent, non-destructive, non-read-only), the description discloses the approval model: confirm=True never grants authority, soft overrides need host approval bound to command/state/limits, terminal IDs replay receipts, and a resumed proposal may attempt its first action only after exact approval. This is meaningful behavioral context the annotations cannot convey.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, followed by tightly packed approval and replay rules. It is appropriately short for a high-complexity mutation tool, though the phrasing is dense and jargon-heavy ('exact authority proposal', 'bound to this command, state and limits').

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?

With an output schema present, return values need not be described, and the description covers the key non-obvious behaviors: approval gating, confirm semantics, receipt replay, and pending-proposal resumption. An agent has enough to call it correctly, though the read/write sibling relationship is left implicit.

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 description coverage is 100%, so the schema already documents all five parameters including confirm and command_id. The description reinforces that confirm grants no approval and that command_id replays a receipt, but this largely overlaps the schema text rather than adding new syntax or constraints. Baseline 3 applies.

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 a specific verb (apply a write) and resource (a simulated device write via mhs_*), and distinguishes the two outcomes: executing the write or returning its authority proposal. It does not explicitly name siblings like mhs_read or mhs_reset, so an agent must infer the read/write split from the family naming.

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 the tool is the write path and states conditions under which separate host approval is required (soft overrides, confirmation-required operations), but it never says when to choose this over mhs_read, mhs_reset, or mhs_meta_info. Usage is inferable rather than spelled out.

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

provider_capabilitiesProvider CapabilitiesA
Read-only

Inspect configured operation support and reject unsupported selections.

Profiles declare support; inspection performs no connectivity or model test.

ParametersJSON Schema
NameRequiredDescriptionDefault
backendNogemini, weaviate, text:profile, vision:profile, or omitted for the matrix
requiredNoRequested capabilities to check against one exact selected route

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, but the description adds substantive behavioral context beyond that: profiles declare support statically, and inspection performs no connectivity or model test. This prevents the agent from mistaking this for a live validation tool. It stops short of describing return values or failure behavior (e.g., does it error on unsupported selections?), but with annotations covering the safety profile, this is meaningful added value.

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

Conciseness4/5

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

Two tight sentences with the core action front-loaded and the important caveat about no connectivity testing immediately after. No filler, though the second sentence is slightly cryptic without the schema context.

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 an output schema exists (so return values needn't be explained) and annotations plus full schema coverage handle safety and parameters, the description supplies the one crucial missing piece: that this is a static inspection with no live testing. For a low-complexity, two-optional-parameter tool, this is nearly complete, missing only explicit error semantics.

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 description coverage is 100% – both parameters have detailed descriptions listing accepted backend strings and capability enums. The description adds nothing beyond the schema for parameter meaning, so the baseline of 3 is appropriate.

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

Purpose4/5

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

The description states a specific verb ('Inspect') and resource ('configured operation support'), and the second sentence clarifies what it does not do. It doesn't need to distinguish from siblings since none of the other tools perform provider capability checks, but the phrasing 'operation support' is broad enough that an agent must lean on the schema for specifics.

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?

Usage is implied: check support before selecting operations, and reject unsupported selections. The second sentence warns that no connectivity or model test occurs, which implicitly tells the agent not to use this as a health check. However, there is no explicit when-to-use or when-not-to-use statement.

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

research_assess_evidenceResearch Assess EvidenceB
Read-only

Assess a claim against sources, returning evidence tier and confidence.

ParametersJSON Schema
NameRequiredDescriptionDefault
claimYesThe claim to assess
contextNoAdditional context for assessment
sourcesYesEvidence sources to evaluate against

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds only the return contents ('evidence tier and confidence'), which the output schema largely already covers, and says nothing about how sources are weighed or what tiers mean.

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?

A single tight sentence with no wasted words, and the action plus return value are front-loaded. Slightly more detail on source handling could have been justified but is absent.

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?

An output schema exists, so return values need not be explained, and structured fields carry the parameter and safety info. For a simple read-only assessment tool the description is adequate, though it could route the agent to siblings.

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 description coverage is 100%, so all three parameters (claim, context, sources) are fully documented in the schema. The description adds no semantics beyond that, which is the expected baseline when the schema does the heavy lifting.

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

Purpose4/5

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

States a specific verb and resource ('Assess a claim against sources') plus the output ('evidence tier and confidence'). It is clearly distinguishable from research siblings, though it does not explicitly name an alternative tool.

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

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 versus related tools like research_deep, research_execute, or research_paper_citations. An agent must infer the context from the name alone.

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

research_deepResearch DeepA
Read-only

Run three-phase model-only synthesis without external source retrieval.

Phases: Scope Definition -> Evidence Collection -> Synthesis. Model tiers remain proposals. CONFIRMED and STRONG INDICATOR proposals become UNKNOWN because this route neither retrieves nor verifies sources.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoResearch depth — "quick", "moderate", "deep", or "comprehensive".moderate
topicYesResearch topic or question
thinking_levelNoGemini thinking depth.high

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only cover readOnlyHint and openWorldHint; the description goes further by disclosing a consequential behavioral trait: CONFIRMED and STRONG INDICATOR proposals degrade to UNKNOWN because this route neither retrieves nor verifies. That materially warns the agent about output reliability, which the annotations do not convey.

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

Conciseness5/5

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

Two short, front-loaded sentences plus a phase list, with zero filler. The most important constraint (no retrieval, tier degradation) is stated up front.

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?

With an output schema present and annotations covering the safety profile, the description only needs to convey routing and behavioral caveats, which it does via the phase list and the UNKNOWN-degradation warning. Adequate, though it could be stronger with an explicit sibling comparison.

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 description coverage is 100%, so topic, scope, and thinking_level are already fully documented in the schema, including enums and defaults. The description adds no parameter-level detail beyond what the schema provides, so baseline 3 applies.

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

Purpose4/5

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

States a specific verb+resource ('Run three-phase model-only synthesis') and enumerates the phases, making the operation concrete. The qualifier 'without external source retrieval' implicitly separates it from retrieval-based siblings like research_web or research_execute, though no sibling is named outright.

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 phrase 'model-only synthesis without external source retrieval' implies when this route is appropriate versus the retrieval-oriented research siblings, but there is no explicit when-to-use/when-not statement or named alternative. Usage is inferred rather than stated.

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

research_documentResearch DocumentA
Read-only

Run multi-phase deep research grounded in source documents.

Phases: Document Mapping -> Evidence Extraction -> Cross-Reference -> Synthesis. Every claim is labeled with evidence tiers and cited back to source documents.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsNoURLs to PDF documents (downloaded and uploaded to Gemini)
scopeNoResearch depth -- quick, moderate, deep, comprehensive.moderate
file_pathsNoLocal PDF/document file paths
instructionYesResearch question or analysis instruction for the documents
thinking_levelNoGemini thinking depth.high

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, so safety is covered. The description adds real behavioral value beyond that: a concrete four-phase pipeline (Document Mapping -> Evidence Extraction -> Cross-Reference -> Synthesis) and the guarantee that claims carry evidence tiers and citations.

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 compact sentences with the core action front-loaded, followed by the phase pipeline and output guarantee. No filler; every line contributes.

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?

An output schema exists, so return values need not be explained, and annotations plus full schema coverage carry safety and parameters. Behavior is well described; the only real gap is usage routing against sibling research tools.

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 description coverage is 100%, so the five parameters (urls, file_paths, instruction, scope, thinking_level) are already documented in the schema. The description adds no syntax, format, or interaction detail for them, so baseline 3 applies.

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?

States a specific verb and resource ('Run multi-phase deep research grounded in source documents') and clarifies the domain as document-grounded research. However, it does not distinguish itself from close siblings like research_deep or research_execute, leaving the agent to infer the boundary.

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

Usage Guidelines2/5

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

No explicit when-to-use, when-not-to-use, or alternative routing is given. 'Grounded in source documents' implicitly contrasts with research_web, but the agent must infer whether to pick this over research_deep, research_execute, or research_plan.

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

research_executeResearch ExecuteA

Prepare or execute source-preserving research under one global allowance.

Dry runs make no provider or URL calls. Supplied originals are byte checked. URL execution requires source-access authorization; inference requires submission authorization. Google hosted research remains a separate route. Unknown price ceilings fail closed. Model tiers never establish CONFIRMED.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExplicit route, frozen original evidence, source rules, joined subquestions and aggregate limits

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare openWorld=true, readOnly=false and non-idempotent, so the agent knows this mutates external state. The description adds real value beyond that: byte-checking of supplied originals, fail-closed behavior on unknown price ceilings, and the explicit rule that model tiers never establish CONFIRMED. It does not, however, describe run_id reuse or revision/pagination behavior.

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

Conciseness4/5

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

Seven short sentences, each carrying a distinct rule, with the prepare/execute scope front-loaded. The telegraphic style ('Unknown price ceilings fail closed') is dense but not padded.

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 complex nested schema with an output schema and annotations present, the description covers the safety envelope (authorization, dry-run, fail-closed) that structured fields cannot convey. It omits run_id/resume semantics and mode-to-field mapping, but nothing critical for a correct first call is missing.

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 description coverage is 100% and there is effectively one nested request object, so the baseline is 3. The description implies the mode semantics (URL execution vs inference) but does not map any of that to named fields such as mode, authorize_source_access, or dry_run.

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?

States a specific verb pair and resource ('Prepare or execute source-preserving research') plus the scoping constraint of a single global allowance, which distinguishes it from lightweight siblings like research_plan or research_web. It stops short of naming which sibling to choose instead, so it is clear but not fully differentiated.

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

Usage Guidelines4/5

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

Gives concrete conditional guidance: dry runs trigger no provider/URL calls, URL execution needs source-access authorization, inference needs submission authorization, and Google hosted research is a separate route. This tells an agent when routes are permitted, though it never names an alternative sibling tool to route to.

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

research_paper_citationsResearch Paper CitationsC
Read-only

Get citations or references for a paper.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax papers to return
paper_idYesPaper ID (S2, DOI:, or ArXiv:)
directionNo'citations' (papers citing this) or 'references' (papers this cites)citations

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — no note on pagination, result volume, coverage of the citation graph, or auth requirements — leaving the behavioral burden entirely on structured fields.

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

Conciseness4/5

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

A single front-loaded sentence with zero filler, appropriately sized for a three-parameter read tool. It is efficient rather than padded, though it borders on under-specified.

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?

An output schema exists, so return values need no explanation, and the parameter schema is complete. However, for a graph-traversal tool an agent would benefit from knowing the relationship semantics and any limits; the description stops at the minimum viable level.

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 description coverage is 100%, so paper_id, direction, and limit are already fully documented in the schema, establishing the baseline of 3. The phrase 'citations or references' echoes the direction enum but adds no format or edge-case meaning beyond it.

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?

States a specific verb ('Get') and resource ('citations or references for a paper') that clearly maps to the tool name. It is distinguishable from research_paper_search and research_paper_details by the citation/reference focus, though it never names those siblings explicitly.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no mention of alternatives such as research_paper_details for metadata or research_paper_recommendations for related work. The agent must infer the niche from the tool name alone.

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

research_paper_detailsResearch Paper DetailsA
Read-only

Get detailed metadata for a specific paper.

Accepts Semantic Scholar IDs, DOIs (prefix with DOI:), or ArXiv IDs (prefix with ArXiv:).

ParametersJSON Schema
NameRequiredDescriptionDefault
paper_idYesPaper ID: S2 ID, DOI (prefix 'DOI:10.xxx'), or ArXiv (prefix 'ArXiv:2301.xxx')

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety and external-lookup profile is covered. The description adds the accepted identifier forms, which is useful operational context, but says nothing about lookup failures for invalid IDs or rate limiting; the output schema covers return values, so a 3 is fair.

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?

Two short sentences, front-loaded with the core action, with zero filler. The second sentence duplicates schema content, which slightly reduces its efficiency, but the structure is clean and easy to scan.

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 single-parameter read tool with full schema coverage, an output schema, and safety annotations, the description supplies everything needed to invoke it correctly. Only the sibling-routing guidance is absent, which is a minor gap given the explicit ID formats.

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 description coverage is 100% for the single paper_id parameter, and the description merely restates the same format details (DOI:/ArXiv: prefixes) already present in the schema. Baseline 3 applies since the schema does the heavy lifting and the description adds no meaning beyond it.

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?

States a specific verb ('Get detailed metadata') and resource ('a specific paper'), making the lookup-by-ID intent clear. It does not explicitly differentiate itself from close siblings such as research_paper_search or research_paper_citations, but the 'specific paper' framing implies single-item retrieval rather than discovery.

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?

Usage is only implied: the agent can infer this is the tool to call once it already holds a paper identifier. There is no explicit guidance on when to prefer it over research_paper_search (to obtain an ID first) or research_paper_citations, and no stated preconditions.

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

research_paper_recommendationsResearch Paper RecommendationsB
Read-only

Get paper recommendations based on seed papers.

Uses Semantic Scholar's recommendation engine to find related papers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax papers to return
seed_paper_idsYesList of S2 paper IDs to base recommendations on

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the agent knows this is a safe, external-facing read. The description adds that results come from Semantic Scholar's recommendation engine, but says nothing about rate limits, API key/auth requirements, or result ordering — modest added value beyond the annotations.

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

Conciseness4/5

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

Two short, front-loaded sentences with no filler. The second sentence (mechanism) earns its place by telling the agent what engine backs the results, though it borders on redundancy with the tool name.

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?

An output schema exists, so return values need no explanation, and the two params are fully schema-documented. However, for a tool whose selection depends on distinguishing it from other research_paper_* siblings, the absence of any usage context leaves a real gap.

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 description coverage is 100%, so both parameters (seed_paper_ids, limit) are already documented in the schema. The description only says recommendations are 'based on seed papers', adding no syntax, ID format, or limit interplay 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?

States a specific verb (get) and resource (paper recommendations) with the mechanism (Semantic Scholar recommendation engine based on seed papers). It is distinguishable from sibling tools like research_paper_search and research_paper_citations, though it doesn't explicitly name them.

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

Usage Guidelines2/5

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

The description implies you need seed papers but gives no guidance on when to choose this over research_paper_search, research_paper_citations, or knowledge_related. No prerequisites, no exclusions, no alternatives named.

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

research_planResearch PlanA
Read-only

Generate a multi-agent research orchestration plan.

Returns a phased blueprint with task decomposition and model assignments. Does NOT spawn agents — provides the blueprint for the caller.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoResearch depth.moderate
topicYesResearch topic or question
available_agentsNoNumber of agents available

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds genuinely non-obvious behavior: the tool produces a plan artifact rather than spawning agents, which is the single most important thing an agent must know before calling it. It does not cover whether the plan is persisted or re-generated on repeat calls, keeping it short of a 5.

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

Conciseness5/5

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

Three short lines, no filler, and the core purpose plus the critical non-behavior are front-loaded. Every sentence carries information the agent needs.

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?

An output schema exists, so return-value detail is not required, and the description still summarizes the blueprint's shape. Combined with full schema coverage and annotations, the definition is nearly self-sufficient; only the workflow relationship to the execute/document siblings is left implicit.

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 description coverage is 100% with all three parameters documented inline (scope enum, topic bounds, available_agents range). The description adds no parameter-level meaning, so the baseline of 3 is appropriate.

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

Purpose4/5

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

States a specific verb and resource ('Generate a multi-agent research orchestration plan') and clarifies the output shape (phased blueprint with task decomposition and model assignments). It does not name any sibling explicitly, but the negative clause 'Does NOT spawn agents' implicitly distinguishes it from the execution-oriented siblings like research_execute and research_deep.

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 'Does NOT spawn agents — provides the blueprint for the caller' line implies the planning-vs-executing split, which is useful routing context. However, it never states when to prefer this over research_execute, research_deep, or research_document, so the agent must infer the workflow ordering.

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

research_webResearch WebA

Launch a Gemini Deep Research Agent for autonomous web-grounded research.

The agent plans its own research, searches the web (~80-160 queries), reads sources, and produces a cited markdown report. Runs in background; poll with research_web_status. Provider usage is billed; runtime varies.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYesPrecise research brief — the more detailed, the better results
job_idNoResume a recorded launch without resubmitting provider work
output_formatNoReport structure/format instructions (e.g. 'executive summary + data tables')

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare openWorldHint=true and readOnlyHint=false, so the safety profile is partly covered. The description adds genuinely useful behavior beyond that: autonomous planning, ~80-160 queries, background execution, provider billing, and variable runtime. It stops short of stating auth requirements or whether a launch is idempotent/reversible.

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?

Three tight sentences, each earning its place: what it is, how it runs and how to track it, and the cost/latency caveat. The scoping and polling information is front-loaded.

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?

An output schema exists, so return-value detail is not needed. For an async launch tool the description covers the essentials an agent needs: autonomy model, background execution, the polling sibling, and billing. Nothing critical is missing.

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 description coverage is 100%, so all three parameters (topic, job_id, output_format) are already documented in the schema with meaningful hints. The description adds no parameter-level detail (e.g. job_id resume semantics), so the baseline 3 applies.

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

Purpose5/5

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

States a specific verb (Launch) and resource (Gemini Deep Research Agent) plus the concrete output (cited markdown report). It distinguishes itself from siblings by naming research_web_status as the polling companion, so an agent can route correctly without opening other schemas.

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?

Gives a clear operational condition: it runs in background, so poll with research_web_status. It also flags billing and variable runtime, which informs the decision to use it. It does not, however, contrast itself against nearby alternatives like research_deep or web_search, so the 'when not to use' half is absent.

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

research_web_cancelResearch Web CancelA

Cancel a running Deep Research task.

Sends a cancel request to the Interactions API and cleans up local tracking state. Useful for stopping a task before further provider usage.

ParametersJSON Schema
NameRequiredDescriptionDefault
interaction_idYesInteraction ID to cancel

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

With only readOnlyHint=false and openWorldHint=true provided, the description adds real behavioral detail: it sends a cancel request to the Interactions API and cleans up local tracking state, and it implies cost-saving intent. It stops short of saying what happens if the task already finished or if the ID is unknown.

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?

Three short sentences, front-loaded with the action, no filler. The final sentence is slightly redundant with the purpose statement but still adds the motivation for cancelling.

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?

An output schema exists so return values need no explanation, and a one-param cancel tool has a small surface. Minor gaps remain around error/edge behavior (already-completed tasks, invalid IDs), but nothing essential to invoking it correctly is missing.

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 single interaction_id parameter is fully described in the schema (100% coverage), so the description adds nothing beyond it. Baseline 3 is appropriate when the schema carries the parameter documentation.

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

Purpose4/5

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

States a specific verb and resource: 'Cancel a running Deep Research task.' It's clearly scoped to Deep Research, distinguishing it from the generic job_cancel / source_ingest_cancel siblings, though it doesn't explicitly contrast with them.

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

Usage Guidelines3/5

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

'Useful for stopping a task before further provider usage' implies a when-to-use condition, but there are no explicit exclusions, prerequisites (e.g., task must be running), or named alternatives among the several cancel-type siblings.

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

research_web_followupResearch Web FollowupA

Ask a follow-up question about a completed Deep Research report.

Uses previous_interaction_id to maintain context from the original research. Synchronous — follow-ups are fast (no background needed).

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idNoResume a recorded follow-up without repeating inference
questionYesFollow-up question about the research report
interaction_idYesCompleted interaction ID to follow up on

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and openWorldHint=true, and the description usefully adds that this is synchronous and fast with no background job needed, plus that it reuses prior context. It does not explain why the call is not read-only (new inference is generated) nor mention cost or limits, but it contributes real context beyond the annotations.

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

Conciseness4/5

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

Three short sentences, front-loaded with the purpose, then context retention, then the synchronous trait — no padding. The mismatched parameter name ('previous_interaction_id') slightly undercuts an otherwise tight structure.

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?

With an output schema present, return values need no explanation, and the annotations cover the safety profile. The description supplies purpose, prerequisite, and synchronous behavior, though the parameter-name mismatch and unaddressed job_id path leave small gaps for an agent orchestrating a research workflow.

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 100%, so all three parameters are documented in the schema, giving a baseline of 3. The description adds context-retention meaning for the interaction id, but it refers to it as 'previous_interaction_id', which does not match the schema's 'interaction_id', and it never mentions the optional job_id resume parameter.

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?

States a specific verb and resource ('ask a follow-up question about a completed Deep Research report') and ties it to the Deep Research workflow, which is enough to separate it from research_web and research_web_status. It stops short of naming the sibling tool whose output it consumes, so differentiation relies on inference.

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 phrase 'about a completed Deep Research report' implies the prerequisite (a finished research interaction) and the context in which to use it. There is no explicit when-not or alternative routing, e.g. what to do if the report is still running, leaving usage to inference.

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

research_web_statusResearch Web StatusB
Read-only

Poll or retrieve a Deep Research task.

Returns the full report with sources when completed, or current status if still in progress. Auto-stores completed reports to Weaviate.

ParametersJSON Schema
NameRequiredDescriptionDefault
interaction_idYesInteraction ID returned by research_web

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior1/5

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

The description claims the tool 'Auto-stores completed reports to Weaviate', a persistent state mutation, while the annotations declare readOnlyHint=true (no environment modification). This is a direct conflict, so per the scoring rule it drops to 1 despite otherwise useful disclosure of 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.

Conciseness4/5

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

Three short sentences, front-loaded with the primary action and followed by return behavior. No filler, though the auto-store sentence is what creates the annotation conflict and is not qualified.

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?

With an output schema present, the description need not spell out return values, and it does convey the polling/retrieval semantics. It is nearly complete for a one-parameter status tool, though it omits polling cadence/completion signaling and leaves the store-vs-readOnly conflict unreconciled.

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 description coverage is 100% and the single parameter's schema text already explains it is the interaction ID returned by research_web. The description adds no further parameter meaning, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb+resource (poll/retrieve a Deep Research task) and describes the two outcomes (full report vs. in-progress status). It does not name the sibling research_web that creates the task or distinguish itself from research_web_followup/research_web_cancel, so sibling differentiation is only implicit.

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?

'Poll or retrieve' implies the usage context (checking on a task started by research_web, since the id parameter references it), but there is no explicit when-to-use/when-not statement or routing versus research_web_followup or research_web_cancel. Usage is inferred rather than stated.

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

reverse_search_frameReverse Search FrameA

Plan or reverse-search one captured frame using Serper Lens.

Execution publicly uploads the PNG to Uguu, verifies hosted bytes, then submits its URL to Lens. It requires both explicit grants and an enabled Serper credential. Similarity suggestions never assert entity identity; compare appearance, text and source context before reporting an identity. Publication retention/deletion and live service schemas remain unqualified.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesOne precise captured PNG, dry plan, separate public-upload/search grants and byte/deadline caps

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, openWorldHint=true, destructiveHint=false, idempotentHint=false): it discloses that execution publicly uploads the PNG to Uguu, verifies hosted bytes, submits the URL to Lens, requires both explicit grants and an enabled Serper credential, and warns that similarity suggestions never assert entity identity. It even flags that publication retention/deletion and live service schemas are unqualified.

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?

Four dense sentences, front-loaded with the purpose before mechanics and caveats, and each sentence carries distinct operational weight. The closing sentence on retention and live-service schemas is slightly jargon-heavy but still earns its place as an uncertainty disclosure.

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?

An output schema exists, so return values need not be described, and the annotations cover the safety profile. Given the nested capture payload and openWorldHint, the description supplies exactly the missing pieces: the public-upload side effect, the dual-grant requirement, and the identity-claim caveat.

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 100%, so the baseline is 3, but the description adds real meaning to the gatekeeping parameters by explaining that submission requires 'both explicit grants' (authorize_public_upload and authorize_submission) and an enabled credential, and that the default path is a plan rather than an upload.

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

Purpose5/5

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

States a specific verb+resource ('reverse-search one captured frame') and names the underlying mechanism ('using Serper Lens'), which nothing else in the sibling list does. An agent can distinguish it from image_segment, vision_grounding, or video_frame without opening any schema.

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

Usage Guidelines3/5

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

'Plan or reverse-search' plus the required grants and credential implies the dry-run vs. execute split and a precondition, but the description never names when to prefer this over sibling visual tools or what to do instead. Usage is implied rather than routed.

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

session_memorySession MemoryA
Destructive

Inspect original history or read/edit/delete one explicitly scoped derived profile.

History remains recoverable after active-session expiry when SQLite persistence is configured. Large inline-media pages export exact bounded private JSON. Memory edits require the current revision; deletion clears only derived text. Caller-selected scope is isolation, not an authenticated multi-user identity. No provider, inference, upload or global-memory search occurs.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact origin session, workspace/notebook and source; inspect originals or explicitly edit/delete non-authoritative learned text

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

With annotations already declaring destructiveHint=true and readOnlyHint=false, the description adds meaningful context: deletion clears only derived text (scoping the destruction), edits require the current revision (concurrency), history survives session expiry under SQLite persistence, and no provider/inference/upload/global search occurs. It also discloses the isolation caveat that caller-selected scope is not authenticated identity, which is a genuine security nuance beyond the annotations.

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

Conciseness4/5

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

The core purpose is front-loaded in the first sentence and each subsequent sentence carries a distinct behavioral fact. The telegraphic style ('No provider, inference, upload or global-memory search occurs') is terse but not padded.

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?

An output schema exists, so return values need not be explained, and the nested request object is fully documented in the schema. The description covers persistence, concurrency, isolation and non-occurrence traits, though it leaves the list/search/compact actions of the enum undescribed, a minor gap for a 7-action 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?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning: 'edits require the current revision' maps to expected_revision semantics, and 'scope is isolation, not an authenticated multi-user identity' clarifies the scope parameter's intent beyond the schema's exact-match note.

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 names concrete verbs (inspect/read/edit/delete) and resources (original history, explicitly scoped derived profile), which lets an agent distinguish this from the many knowledge_*/media_* siblings. However, the terminology is opaque ('derived profile') and it only accounts for the get/set/delete/history actions while the schema's action enum also exposes list/search/compact, leaving part of the purpose unstated.

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 gives behavioral conditions ('edits require the current revision', 'deletion clears only derived text') but never states when to choose this tool over an alternative or when not to use it. No sibling is named and no selection condition is offered, so the agent must infer usage entirely.

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

source_ingestSource IngestA
Idempotent

Retain original bytes and extract bounded elements with explicit source positions.

PDF requires separately installed Poppler; DOCX, Markdown, HTML, plain text and PCM16 WAV use local parsers. Unsupported OCR, PDF table reconstruction, image pixels and speech are reported explicitly. Empty/error extraction fails. Identical source/revision/parser work reuses its durable job. Extraction does not index, call a model, upload to a parser service or prove factual claims.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesOriginal file or public HTTPS response, selected format, source ID and revision

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare idempotency, non-destructiveness and open-world scope, and the description reinforces idempotency with the durable-job reuse rule. It goes further by disclosing an external runtime dependency (Poppler), explicit failure semantics for empty/error extraction, and a clear non-goals boundary. It omits auth/permission requirements and any rate or size limits.

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

Conciseness4/5

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

Front-loaded with the core purpose, then format support, failure behavior, dedupe, and non-goals — every sentence carries information. The only cost is density: a raw line break splits the first sentence and several clauses are compressed, making it slightly harder to scan.

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?

An output schema exists, so return values need no explanation; the description instead covers the things structured fields cannot — parser dependencies, unsupported feature reporting, failure conditions, idempotent job reuse, and non-goals. For a single-parameter but operationally complex ingest tool, nothing an agent needs to call it correctly is missing.

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

Parameters4/5

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

Schema coverage is 100% and the nested request object is already documented, so the baseline is 3. The description earns a bump by explaining the source_format enum in operational terms — PDF depends on Poppler, audio means PCM16 WAV, the rest use local parsers — and by flagging unsupported OCR, table reconstruction, image pixels and speech.

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?

States a specific verb and resource: retain original bytes and extract bounded elements with explicit source positions. The closing clause ('does not index, call a model, upload to a parser service') implicitly separates it from indexing siblings like knowledge_ingest, though no sibling is named directly.

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?

Gives useful operational context (which formats work, that PDF needs Poppler, that empty/error extraction fails) but never states when to choose this tool over content_extract, knowledge_ingest or media_acquire. Usage is implied from capability rather than an explicit when-to-use rule.

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

source_ingest_cancelSource Ingest CancelB
Idempotent

Request cancellation without promoting an unfinished extraction to success.

The owner acknowledges cancellation after its bounded parser has joined; this request alone does not prove that a running native process has stopped.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesDurable source ingestion job ID

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare non-read-only, idempotent, non-destructive, so the safety profile is covered. The description adds genuinely useful context beyond that: cancellation is a request that the owner only acknowledges once the bounded parser has joined, and a successful request does not prove the native process stopped. This async/settlement nuance is exactly the kind of disclosure annotations cannot express.

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

Conciseness4/5

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

Two tight sentences with no filler, and the core semantic (cancellation without false success promotion) is front-loaded. It is appropriately sized, though the phrasing is somewhat abstract jargon that marginally reduces immediate clarity.

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?

An output schema exists, so return values need not be explained, and annotations cover the safety profile. The description supplies the key missing nuance about asynchronous acknowledgment; only the absence of explicit usage/alternative guidance leaves a small gap for a tool that sits near job_cancel and research_web_cancel.

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 description coverage is 100% and there is a single parameter (job_id) fully documented as the 'Durable source ingestion job ID'. The description adds no syntax, format, or sourcing detail beyond the schema, so the baseline 3 applies.

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

Purpose3/5

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

The description names a verb ('Request cancellation') and references an 'unfinished extraction,' but never plainly states that it cancels a source-ingestion job, leaning on the tool name to carry the resource. It also does nothing to distinguish itself from the sibling 'job_cancel' or 'research_web_cancel'. The purpose is inferable but not stated outright.

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?

There is no explicit when-to-use guidance, no prerequisite (such as the job needing to be in a cancellable state), and no routing to alternatives like job_cancel for generic jobs. The second sentence hints at timing but frames it as behavior, not as a usage rule.

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

source_ingest_readSource Ingest ReadC
Read-onlyIdempotent

Recheck a retained ingestion job and read exact located extraction bytes.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesDurable source ingestion job ID

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, so the safety profile is covered. The description adds one piece of context beyond the annotations — that the job must be "retained" for this call to work — but says nothing about failure behavior when the job has been pruned, byte-size limits, or how much data is returned.

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?

A single front-loaded sentence with no filler or repetition. It is efficient, though the compressed phrasing trades brevity for 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?

An output schema exists, so return values need not be explained, and the annotations cover safety. Still, for a tool with a sibling pair (source_ingest, source_ingest_cancel) and a "retained" precondition, the description omits enough routing and precondition detail that an agent could pick the wrong 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?

Schema description coverage is 100% and the single job_id parameter is fully documented in the schema, so the baseline of 3 applies. The description adds no format, sourcing, or lookup guidance for job_id beyond what the schema already states.

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

Purpose3/5

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

The description names two verbs ("recheck", "read") and a resource ("ingestion job", "extraction bytes"), so the general intent is discernible. However, the phrase "exact located extraction bytes" is opaque jargon, and the description never distinguishes this tool from its obvious siblings source_ingest and source_ingest_cancel, leaving the agent to guess at the boundary.

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?

There is no explicit when-to-use guidance, no prerequisites, and no mention of alternatives such as source_ingest or source_ingest_cancel. The word "recheck" weakly implies a follow-up call after an ingestion, but the agent must infer the triggering condition entirely.

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

text_generateText GenerateA

Generate structured text using one selected compatible HTTP endpoint.

No default Gemini/vision account is borrowed. Sources are untrusted text; this operation cannot accept files, media, tools or grounded search. Missing input-token/currency meters cause requested hard ceilings to fail.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesConfigured text profile, inline JSON schema, bounded output, dry plan and explicit submission authority

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already disclose openWorld, non-idempotent, non-read-only behavior, so the bar is lower; the description still adds real context beyond them: no default account is borrowed, sources are treated as untrusted text, and hard token/currency ceilings fail when meters are missing. It omits the two-step dry_run/authorize_submission gating, which is the most consequential behavior for an agent.

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

Conciseness4/5

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

Four short sentences, front-loaded with the core action, each carrying distinct information (capability, credential policy, input trust, failure mode). Slightly telegraphic, but no padding.

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?

An output schema exists, so return values need no explanation. However, for a tool whose defaults are dry_run=true and authorize_submission=false, the description omits the submission workflow entirely, which an agent needs to invoke it correctly.

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 description coverage is 100% and the nested request object is fully documented, so the baseline is 3. The description adds only constraint-level meaning (no file/media/grounding inputs) and does not explain fields like backend, dry_run, or authorize_submission 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?

States a specific verb and resource (generate structured text via one selected compatible HTTP endpoint) and adds exclusionary scope (no files, media, tools or grounded search), which separates it from vision/media siblings. It never names an alternative sibling or delineates from text-adjacent tools like content_analyze or vision_chat, so it stops short of full sibling differentiation.

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

Usage Guidelines3/5

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

The 'cannot accept files, media, tools or grounded search' line gives implicit when-not guidance, and 'one selected compatible HTTP endpoint' implies a prerequisite. There is no explicit statement of when to choose this over siblings, nor of what must be configured first (backend/account) before calling it.

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

twelvelabs_callTwelvelabs CallA
Destructive

Plan or perform one bounded TwelveLabs asset/index/search/embed/entity/analysis operation.

Disabled by default. Dry plans read only selected fenced local media and make no DNS, provider or database calls. Execution requires explicit BYOK/network authority; media disclosure and deletion/cancellation have separate grants. Each call makes at most one HTTP request with no retries or automatic polling. Reusing an identical job_id reads the attested local receipt without resending. Remote readiness, exact clip seconds and IDs stay provider observations.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesOne current hosted REST operation with explicit IDs, parameters, BYOK enablement and separate submission/media/destruction grants

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior5/5

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

Annotations only say readOnly=false, destructive=true, openWorld=true, idempotent=false; the description goes well beyond them by disclosing single-HTTP-request semantics with no retries or polling, the job_id receipt-reuse path that avoids resending, the fact that dry plans touch only fenced local media, and the existence of separate media-disclosure and deletion/cancellation grants. This is exactly the behavioral context an agent needs before calling a destructive, open-world tool.

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?

Sentences are front-loaded and each covers a distinct concern: scope, default-disabled state, dry-run purity, execution authorization, one-request/no-retry behavior, receipt reuse, provider observations. It is slightly long at seven sentences, but none is filler.

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 meta-tool spanning 27 operations with a 100%-covered schema, an output schema, and rich annotations, the description supplies the safety envelope (grants, dry-run, no polling) that the structured fields cannot. It stops short of explaining per-operation prerequisites, which is a modest gap given the breadth.

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 description coverage is 100% and the top-level surface is a single `request` object, so the schema carries the field-level semantics and a baseline of 3 applies. The description adds real meaning only for a few fields (job_id receipt reuse, dry_run isolation, the authorization grants), leaving the bulk of `parameters` undocumented in prose.

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 names a specific verb pair ("Plan or perform") and a bounded resource domain ("TwelveLabs asset/index/search/embed/entity/analysis operation"), so the agent knows this is the single-operation TwelveLabs REST wrapper. It does not, however, contrast itself against near-neighbours like video_analyze or media_perceive, so sibling differentiation relies on the reader's inference.

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 supplies clear gating conditions for plan-versus-execute ("Disabled by default", "Dry plans... make no DNS, provider or database calls", "Execution requires explicit BYOK/network authority") but gives no guidance on choosing among the 27 operations or on when to prefer a sibling tool. Usage is implied by the operation enum rather than explained.

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

video_analyzeVideo AnalyzeA
Idempotent

Analyze a video (YouTube URL or local file) with any instruction.

Provide exactly one of url or file_path. Uses Gemini's structured output for reliable JSON responses. Pass a custom output_schema to control the response shape, or use the default VideoResult schema.

When strict_contract=True, runs the full contract pipeline: analysis with strict Pydantic models, parallel strategy/concept-map generation, artifact rendering, and structural quality gates. Factual/media review and observed coverage remain explicit pending/unknown fields. Returns richer output but takes longer.

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNoLocal files only: requested static sampling frames per second; observed coverage remains unknown
urlNoYouTube video URL.
dry_runNoPlan source reads/sends without provider calls
file_pathNoPath to a local video file.
use_cacheNoUse cached results
end_offsetNoLocal source interval end using h/m/s units; timestamps retain the original source origin
instructionNoWhat to analyze — e.g. 'summarize key points', 'extract all CLI commands shown', 'list all recipes and ingredients'Provide a comprehensive analysis of this video.
start_offsetNoLocal source interval start, using h/m/s units, for example '27m' or '1m30.5s'
output_fieldsNoSelect top-level response fields; complete source/citation/provenance carriers remain included
output_schemaNoOptional JSON Schema for the response. If omitted, uses default VideoResult schema.
thinking_levelNoGemini thinking depth.high
strict_contractNoEnable strict contract pipeline with quality gates, artifact rendering, and structural validation. Factual/media review and observed coverage remain explicitly pending or unknown. Produces richer output with strategy report, concept map, and HTML/Markdown artifacts.
execution_budgetNoExplicit max_calls/max_tokens/max_output_tokens/max_frames/max_windows and start_ms/end_ms/fps. Bounded execution skips optional enrichment and cache reuse.
transcript_limitNoPage a top-level transcript string without truncating stored evidence or citations
transcript_offsetNoOriginal custom-schema transcript string offset in Unicode code points

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Adds context beyond the annotations: Gemini structured output with default VideoResult schema, artifact rendering and quality gates under strict_contract, and the fact that factual/media coverage stays explicitly pending/unknown. It also discloses the latency tradeoff ('returns richer output but takes longer'), which explains why readOnlyHint=false despite it being an analysis call.

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?

Three short paragraphs, purpose and source constraint front-loaded, with the expensive strict_contract mode deferred to last. Every sentence carries information, though 'with any instruction' is mildly loose phrasing for a routing document.

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 15-parameter tool with an output schema present, the description covers the decisions that matter (source exclusivity, output shaping, strict vs default pipeline). Remaining gaps (fps, offsets, execution_budget, transcript paging) are documented in the schema, so the definition is adequately 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 100%, so the baseline is 3, and the description earns above that by supplying a cross-parameter constraint ('exactly one of url or file_path') and the output_schema-vs-default-VideoResult rule that the schema alone does not state. It stops short of explaining the interval/budget/transcript paging params, which remain schema-only.

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?

States a specific verb+resource ('Analyze a video') and covers both accepted source types (YouTube URL or local file) plus the open-ended 'any instruction' contract. It is clearly distinct from frame/storyboard/window siblings, though it never names a sibling explicitly to route the agent.

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?

Gives a concrete usage constraint ('Provide exactly one of url or file_path') and a conditional mode ('When strict_contract=True...'), which is real guidance. However, it never says when to prefer this over video_analyze_windows, video_batch_analyze, or video_storyboard, so the alternative-selection guidance is only implied.

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

video_analyze_windowsVideo Analyze WindowsC

Plan or execute contiguous source windows with retained partial outcomes.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idNoOptional caller ID for one immutable durable run; retrying this ID never repeats a recorded window
dry_runNoReturn a frozen local plan with zero provider calls; false explicitly executes against the configured provider
requestYesExactly one local file_path or YouTube url, instruction, start_ms/end_ms, window_ms, optional fps/output_schema/thinking_level; remote byte identity and freshness remain unknown
execution_budgetYesExplicit max_calls/max_tokens/max_output_tokens/max_frames/max_windows for this run; counts and generations each consume media transmissions, File API preparation is reported separately
continuation_tokenNoPrevious partial-run token; binds source/settings/windows and resolves one idempotent child run

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare destructive=false and openWorld=true, so safety is partially covered. The description adds one genuine behavioral trait beyond the schema: partial outcomes are retained across windows. It says nothing about budget behavior, continuation semantics, or the plan/execute default, which the schema carries instead of the description.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though arguably under-specified rather than optimally concise for a tool of this complexity.

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 tool with nested required objects, an execution budget, idempotent continuation, and a default dry-run plan mode, a single abstract sentence is far too thin. The output schema excuses explaining return values, but the plan-vs-execute contract and partial-result behavior are the agent's biggest risks and go unaddressed.

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 description coverage is 100%, and the schema richly documents request, execution_budget, job_id, dry_run, and continuation_token. The description adds no parameter meaning at all, so the baseline 3 for high coverage applies.

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

Purpose3/5

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

The description states a general verb pair ('Plan or execute') and a resource ('contiguous source windows'), but 'source windows' is domain jargon and 'retained partial outcomes' is opaque. It does not distinguish this tool from the sibling video_analyze or video_batch_analyze, so an agent must open the schema to understand what it actually does.

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?

There is no guidance on when to plan (dry_run default true) versus execute, no mention of when to pass a continuation_token, and no routing to or from sibling analysis tools. The description leaves all usage conditions to the schema and inference.

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

video_batch_analyzeVideo Batch AnalyzeA
Read-onlyIdempotent

Analyze all video files in a directory concurrently.

Scans the directory for supported video files (mp4, webm, mov, avi, mkv, mpeg, wmv, 3gpp), then analyzes each with the given instruction using bounded concurrency (3 parallel Gemini calls). Discovery rejects more than 5,000 entry visits; narrow the directory or pattern to stay within that bound.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idNoResume this exact batch without repeating completed or ambiguous submissions
directoryYesPath to a directory containing video files
max_filesNoMaximum files to process
instructionNoWhat to analyze in each videoProvide a comprehensive analysis of this video.
glob_patternNoGlob pattern to filter files within the directory*
output_schemaNoOptional JSON Schema for each video's response
thinking_levelNoGemini thinking depth.high
max_concurrencyNoMaximum concurrent item submissions

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare the safe read-only/idempotent/closed-world profile, and the description still adds real behavioral detail: 3-way bounded concurrency, the 5,000-entry discovery rejection bound, and the list of supported containers. It does not disclose the long-running/job lifecycle implied by the job_id resume parameter, which is the main remaining gap.

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?

Three tight sentences, front-loaded with the core action, then formats, then limits. No filler, though the extension list is slightly verbose.

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?

With an output schema present and annotations covering safety, the description only needs to supply operational bounds, which it does (formats, concurrency, discovery cap). It omits any mention of the job/resume workflow around job_id and what happens to unsupported or failed files.

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 description coverage is 100% across all 8 params, so the schema already carries the semantics; this is the baseline 3 case. The description adds a little (concurrency of 3 maps to max_concurrency, formats relate to glob_pattern/directory), but says nothing about job_id, instruction, output_schema, or thinking_level.

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?

States a specific verb and resource with scope: 'Analyze all video files in a directory concurrently,' plus the accepted file extensions. It implicitly separates itself from the single-file video_analyze sibling via 'all ... in a directory,' but never names or contrasts with that sibling explicitly.

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

Usage Guidelines3/5

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

Gives operational guidance ('narrow the directory or pattern to stay within that bound') and implies the batch-vs-single use case, but never states when to prefer this over video_analyze, content_batch_analyze, or video_analyze_windows, nor any prerequisites.

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

video_clip_exportVideo Clip ExportA

Export a bounded source clip and verify its encoded output and manifest.

Requested bounds, selected original PTS and actual encoded timing remain separate. This operation preserves the original and invokes no provider.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesFinite local source interval and explicit output/crop/audio limits; actual decoded times are measured

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations declare a non-read-only, non-idempotent, non-destructive, non-open-world write. The description adds real context beyond that: the original is preserved, no provider is invoked, and requested bounds versus selected PTS versus actual encoded timing are kept separate - important for a tool that measures real decoded times rather than trusting inputs.

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?

Three short sentences with the primary action front-loaded and no filler. The timing-separation sentence is dense jargon but it carries genuine information an agent needs; nothing is padding.

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?

An output schema exists, so return values need not be described. For a non-idempotent write tool the description covers preservation, provider isolation, and timing semantics; the only gap is lack of guidance on prerequisites (e.g. whether the source must first be inspected) or sibling routing.

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 100%, so the baseline is 3. The description goes slightly beyond by clarifying that start/end values are 'requested bounds' distinct from 'selected original PTS and actual encoded timing', which is meaningful semantics for the two timing parameters rather than restating 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?

States a specific verb (export) and resource (bounded source clip), plus a secondary action (verify encoded output and manifest). It clearly distinguishes this from analysis tools like video_analyze or video_clip_select, though it never names the close sibling audio_clip_export explicitly.

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?

Usage is implied by 'export a bounded source clip' - the agent can infer this is for cutting out a clip rather than analyzing it. But there is no explicit when-to-use/when-not guidance and no routing against near neighbors such as video_clip_select, audio_clip_export, or media_edit_footage.

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

video_clip_selectVideo Clip SelectC

Export a whole or one-sided bounded video selection using measured clip timing.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact source video; omitted endpoints resolve from source under existing 60-second/256-frame/8MiB clip gates

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare it is not read-only, not destructive, not idempotent, and closed-world. The description adds no further behavioral context such as output file location, resource limits, or authorization needs, so it contributes little beyond structured data.

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

Conciseness3/5

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

A single sentence with no wasted words, but the phrasing 'whole or one-sided bounded video selection using measured clip timing' is dense and slightly ambiguous, reducing front-loaded clarity.

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 crowded sibling space and a nested request object with an output schema, the description should at least differentiate this export from video_clip_export. It does not, leaving a key selection decision to inference.

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 description coverage is 100% and the nested request object has its own description. The main description adds no parameter-level meaning beyond the schema, so the baseline of 3 applies.

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

Purpose4/5

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

States a specific verb (Export) and resource (video selection) with scope: whole or one-sided bounded, using measured clip timing. It is clear enough for an agent to know it produces a video excerpt, though it does not differentiate itself from the sibling video_clip_export.

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?

Offers no guidance on when to use this tool versus alternatives such as video_clip_export or audio_clip_export. There are no exclusions, prerequisites, or context cues.

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

video_commentsVideo CommentsA
Read-onlyIdempotent

Fetch top YouTube comments sorted by relevance.

Returns comment text, like count, and author for each comment. Costs 1+ YouTube API units, 0 Gemini units.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube video URL (youtube.com or youtu.be)
max_commentsNoMaximum comments to fetch (sorted by relevance)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/openWorld, so safety is covered. The description adds genuinely non-structured context: the API quota cost ('1+ YouTube API units, 0 Gemini units') and that results are relevance-sorted. It does not cover pagination or reply handling, keeping it short of a 5.

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

Conciseness5/5

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

Three short sentences, purpose front-loaded, then return shape, then cost. Every sentence carries information and nothing is padded.

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?

With rich annotations and an output schema, the description covers purpose, return fields, and quota cost adequately. Minor gaps remain around pagination behavior and whether comment count interacts with the quota ('1+'), but nothing essential for a correct call is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so both url and max_comments are fully documented in the schema, and the description's reference to relevance-sorted comments merely echoes the schema. No added format, bounds, or filtering semantics beyond the structured fields, so baseline 3 applies.

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?

States a specific verb and resource (fetch YouTube comments) plus an explicit scope ('top', 'sorted by relevance'). It does not distinguish itself from siblings like video_analyze, video_metadata, or youtube_channel_inspect, so an agent gets a clear purpose but no routing help.

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 gives no when-to-use guidance, prerequisites, or named alternatives among the ~60 sibling tools. An agent must infer on its own when comment retrieval beats video_analyze or video_metadata.

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

video_continue_sessionVideo Continue SessionB

Continue analysis within an existing video session.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoExact workspace/notebook from creation; required for scoped sessions
promptYesFollow-up question or instruction
session_idYesSession ID from video_create_session

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already disclose readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so safety is largely covered. The description adds the 'existing session' operational context but does not explain what 'continue' changes (state accumulation, cost, session lifetime).

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?

A single, front-loaded sentence with no wasted words. It is efficient, though arguably too terse to be maximally useful.

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

Completeness3/5

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

An output schema exists so return values need not be explained, and annotations cover safety. Still, for a stateful session-continuation tool the description leaves unclear how the follow-up prompt interacts with prior context and whether continuation is expensive or bounded.

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 description coverage is 100%, so the schema already documents session_id, prompt, and scope. The description adds nothing beyond it, making the baseline 3 appropriate.

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?

States a clear verb+resource ('continue analysis' within a 'video session'), which distinguishes it from the sibling video_create_session. However, it does not name the sibling it complements or contrast with video_analyze, so differentiation relies on the name alone.

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

Usage Guidelines2/5

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

The description gives no explicit when-to-use, when-not-to-use, or alternative routing guidance. The requirement for an existing session is only inferable from the schema's session_id note, not the description itself.

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

video_create_sessionVideo Create SessionA

Create a persistent session for multi-turn video exploration.

Provide exactly one of url or file_path. When download=True and the source is YouTube, the video is downloaded via yt-dlp, uploaded to the Gemini File API, and context-cached for fast multi-turn use.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoYouTube video URL.
scopeNoExact workspace/notebook isolation for sessions and derived memory; omit for legacy unscoped sessions
downloadNoDownload YouTube video locally for cached multi-turn sessions. Slower startup (~2 min) but faster and cheaper per turn. Requires yt-dlp installed.
file_pathNoPath to a local video file.
descriptionNoSession purpose or focus area

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare this is a state-creating (readOnlyHint=false, idempotentHint=false) but non-destructive open-world operation. The description goes beyond them by disclosing the concrete side effect chain for download=True: yt-dlp fetch, upload to the Gemini File API, and context-caching, which tells the agent what actually happens on disk/network. Session lifetime and continuation behavior are left unstated.

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?

Two sentences, front-loaded with purpose followed by the key constraint and the download caveat. No filler; each clause carries information, though the download sentence is dense.

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?

An output schema exists so return values need no explanation, and all five parameters are schema-documented. The description supplies the exclusivity rule and the download side-effect, making it sufficiently complete for a session-creation tool; only agent-facing routing and session lifecycle are absent.

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 description coverage is 100%, so the baseline is 3, and the description adds meaning beyond the schema by stating the mutual-exclusivity rule for url/file_path that the schema does not encode. It does not clarify the scope parameter's semantics, which the schema already covers.

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?

States a specific verb and resource (create a persistent session for multi-turn video exploration), which distinguishes it from one-shot tools like video_analyze. However, it does not name the natural sibling video_continue_session or otherwise explicitly route the agent among the many video_* 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?

It gives a hard correctness constraint ('Provide exactly one of url or file_path') that is genuinely useful usage guidance. But it never states when to prefer this tool over alternatives such as video_analyze or video_continue_session, so the when-to-use dimension is only implied.

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

video_deduplicate_framesVideo Deduplicate FramesC

Compare bounded source frames without dropping similar or failed candidates.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesEvery candidate source point and explicit greedy dHash Hamming threshold; visual similarity cannot establish identity
include_imageNoInclude bounded native candidate frames; all decisions remain in text

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=false, so the safety profile is largely covered. The description adds one genuine behavioral fact — that similar or failed candidates are not dropped — which matters for a tool named 'deduplicate', but it omits any mention of the identity-verification requirement, permissions, or cost.

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?

A single compact sentence with no wasted clauses, and the core action is front-loaded. It is efficient, though its brevity shades into under-specification rather than crisp conciseness.

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?

An output schema exists so return values need not be explained, and the nested schema covers parameters. However, for a fairly intricate tool (SHA-256 identity check, dHash Hamming threshold, bounded frame extraction) the description leaves the agent without any sense of purpose or selection criteria.

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 description coverage is 100%, and the nested request object even carries its own explanation ('visual similarity cannot establish identity'), so the schema does the heavy lifting. The description adds no syntax, format, or threshold guidance beyond what is already documented, making the baseline 3 appropriate.

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

Purpose3/5

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

The description supplies a verb ('Compare') and a resource ('bounded source frames'), but 'bounded' is unexplained jargon and the negated clause ('without dropping similar or failed candidates') is hard to parse against the tool name's promise of deduplication. With dozens of sibling video tools (video_frame, video_frames, video_detect_scenes, video_storyboard), it does nothing to distinguish itself from them.

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?

There is no statement of when to use this tool versus alternatives, no prerequisites (e.g. that a valid source hash must be supplied), and no routing to siblings such as video_frame or video_detect_scenes. The reader is left to infer everything from the name.

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

video_detect_scenesVideo Detect ScenesC

Detect hard visual cuts and return contiguous intervals with actual source PTS.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local source, bounded window and explicit hard-cut threshold; no semantic scene claim

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior1/5

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

The annotations declare readOnlyHint=false, but the description ('Detect... and return') implies a read-only operation with no side effects. This is a contradiction. Even beyond that, the description adds no detail about what state is modified, authentication needs, or rate limits.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no wasted words. It is appropriately concise.

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 tool with a complex nested request object and many siblings, the description is too sparse. It does not explain how to choose this tool over alternatives, nor does it clarify the meaning of parameters like threshold or max_cuts. Although an output schema exists, the description fails to provide sufficient context for correct invocation.

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 description coverage is 100%, so the schema documents the parameters. The description itself adds no parameter-level meaning; it only describes the output.

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 a specific action (detect hard visual cuts) and a specific output (contiguous intervals with actual source PTS). It does not, however, differentiate this tool from siblings like video_analyze or video_frames; an agent must infer that this is for cut detection rather than semantic analysis.

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?

There is no guidance on when to use this tool versus alternatives such as video_analyze or video_storyboard. No prerequisites or exclusions are mentioned.

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

video_frameVideo FrameB

Retrieve a source frame with requested time, original decoded PTS and actual delta.

Times are relative to the measured container presentation origin. Precise selection returns the first decoded frame at or after the request. Keyframe selection reports its measured approximation and selection method.

ParametersJSON Schema
NameRequiredDescriptionDefault
crop_boxNox,y,width,height in rotated source pixel grid; explicit SAR policy; crop before scale
file_pathYesRegular local media path within LOCAL_FILE_ACCESS_ROOT
selectionNoDecoded point or explicitly approximate indexed keyframeprecise
max_pixelsNoMaximum output pixels per frame
time_secondsYesTime relative to measured container presentation origin
include_imageNoInclude bounded native PNG blocks; false returns text metadata

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With annotations provided the bar is lower, and the description does add genuine behavioral context: times are relative to the measured container presentation origin, precise selection returns the first decoded frame at or after the request, and keyframe selection reports its approximation and method. However it does not explain why readOnlyHint is false for what reads as a pure retrieval operation, nor does it mention decode cost, caching, or any side effect an agent should know about.

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?

Three short sentences, front-loaded with the core action and with no filler. The phrasing is dense and slightly jargon-heavy ('original decoded PTS', 'actual delta'), but nothing is wasted.

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?

An output schema exists, so return values need not be described here. All six parameters are documented in the schema, and the description covers the two facts an agent cannot get from structured fields alone: the time reference origin and what each selection mode actually returns.

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 description coverage is 100%, so baseline is 3. The description reinforces the meaning of time_seconds (relative to the measured container presentation origin) and elaborates the selection enum's return semantics, but adds little about crop_box, max_pixels, or include_image beyond what the schema already states.

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 opens with a specific verb+resource pair ('Retrieve a source frame') and immediately scopes it to a requested time, which cleanly separates it from bulk siblings like video_frames and video_storyboard. It never names an alternative, so the differentiation is implicit rather than explicit.

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

Usage Guidelines2/5

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

There is no when-to-use statement and no reference to the obvious siblings video_frames, video_frame_by_query, video_detect_scenes or video_storyboard, which an agent must choose between. The precise-vs-keyframe explanation describes behavior of a mode rather than advising when each mode is appropriate (e.g. speed vs accuracy tradeoff).

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

video_frame_by_queryVideo Frame By QueryB

Select a frame by lexical transcript match, requiring the exact video digest.

Segment times use the container-relative presentation clock. Ties choose the earliest segment. A zero-token match abstains. The supplied transcript remains unverified; the extracted frame carries measured PTS.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesLexical query matched against supplied transcript tokens
file_pathYesRegular local media path within LOCAL_FILE_ACCESS_ROOT
max_pixelsNoMaximum output pixels per frame
transcriptYesSource SHA256 and bounded timestamped segments; supplied speech remains unverified
include_imageNoInclude bounded native PNG blocks; false returns text metadata

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior4/5

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

Goes well beyond the annotations by disclosing tie-breaking ("ties choose the earliest segment"), the timebase ("container-relative presentation clock"), abstention semantics, the unverified nature of the supplied transcript, and that the frame carries measured PTS. This is substantive operational context that annotations (readOnlyHint=false, idempotentHint=false) do not convey.

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

Conciseness4/5

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

Front-loads the core action in the first sentence and follows with four tight sentences covering clock, ties, abstention, and verification status. No filler, though the sentence fragments are slightly telegraphic.

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?

An output schema exists, so return values need not be described, and the description covers matching, timebase, ties, and abstention. What is missing is sibling routing and any prerequisites around the exact-digest requirement, leaving a gap for a tool with five parameters among many frame/media siblings.

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 description coverage is 100%, so the schema already documents query, file_path, transcript, source_sha256, and include_image. The description adds only the mapping of "exact video digest" to the source_sha256 requirement and reinforces that the transcript is caller-supplied, so it is close to the baseline.

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?

States a specific verb+resource ("Select a frame by lexical transcript match") with the matching mechanism named, so the agent knows this is a transcript-driven frame selector. It does not, however, differentiate itself from nearby siblings like video_frame or video_frames, leaving the choice to inference.

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?

There is no explicit when-to-use, when-not-to-use, or alternative routing guidance. The only edge-case guidance ("A zero-token match abstains") describes failure behavior, not tool selection.

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

video_framesVideo FramesC

Inspect a bounded burst/window or timestamped contact sheet without a watched claim.

Dense filmstrips require a narrow window and explicit FPS. Selection retains changed text; it performs no similarity pruning or OCR. Sheet tiles carry actual source times/digests. Scene/keyframe sampling may miss short events.

ParametersJSON Schema
NameRequiredDescriptionDefault
fpsNoMaximum selected rate for uniform frames
modeNoUniform stills/grid/vertical strip, scene changes, or keyframessheet
crop_boxNox,y,width,height in rotated source pixel grid; explicit SAR policy; crop before scale
file_pathYesRegular local media path within LOCAL_FILE_ACCESS_ROOT
max_framesNoMaximum returned frames; cap stop remains explicit
max_pixelsNoMaximum output pixels per frame
end_secondsNoExclusive window end; defaults to measured video presentation end
include_imageNoInclude bounded native PNG blocks; false returns text metadata
start_secondsNoInclusive source-relative window start

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior3/5

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

The description adds real behavioral context beyond the annotations: no similarity pruning, no OCR, sheet tiles carry actual source times/digests, and scene/keyframe sampling may miss short events. However, annotations set readOnlyHint=false and idempotentHint=false for what reads as an inspection operation, and the description does nothing to explain that discrepancy or what output is produced.

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?

Five short sentences with no filler, and the mode/constraint guidance is reasonably front-loaded. But the terseness shades into opacity ('without a watched claim', 'Selection retains changed text') rather than efficient 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?

An output schema exists so return values need not be explained, and the annotations cover the safety profile. Still, for a nine-parameter, five-mode media tool, the description leaves key operational questions (default behavior, mode trade-offs, relationship to sibling tools) unanswered.

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 description coverage is 100%, so the schema already documents all nine parameters, establishing a baseline of 3. The description only loosely reinforces two of them ('narrow window' -> start/end_seconds, 'explicit FPS' -> fps) without adding format or constraint detail the schema lacks.

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

Purpose3/5

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

The phrase 'Inspect a bounded burst/window or timestamped contact sheet' gestures at extracting frames from a video, and the mode enum (frames/sheet/filmstrip/scenes/keyframes) clarifies intent. But the wording is jargon-heavy ('bounded burst/window', 'watched claim') and never plainly states 'extract frames from a video file', nor does it distinguish this tool from close siblings like video_frame, video_storyboard, video_detect_scenes, or video_frame_by_query.

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?

Only 'Dense filmstrips require a narrow window and explicit FPS' offers actionable guidance, and it is scoped to one mode. There is no when-to-use/when-not guidance and no routing to any of the many sibling frame/scene/dedup tools, leaving the agent to guess which one applies.

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

video_metadataVideo MetadataA
Read-onlyIdempotent

Fetch YouTube video metadata without Gemini analysis.

Returns title, description, view/like/comment counts, duration, tags, channel info, category, and language. Costs 1 YouTube API unit, 0 Gemini units.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube video URL (youtube.com or youtu.be)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds non-obvious operational context: the API-unit cost profile relative to Gemini, which is genuinely useful for tool selection. It does not cover pagination or rate limits, keeping it at 4.

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?

Front-loaded purpose sentence followed by return fields and cost. Efficient and well organized; the return-field enumeration is slightly redundant given an output schema exists but is not wasteful.

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 single-parameter read tool with full annotations, a documented output schema, and cost context provided, nothing an agent needs to call it correctly is missing. The description is complete for its 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 description coverage is 100% and the single url parameter is fully documented in the schema. The description implies the input is a YouTube video but adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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

Purpose5/5

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

States a specific verb (Fetch) and resource (YouTube video metadata) and differentiates from the analysis-oriented sibling by specifying 'without Gemini analysis'. An agent can distinguish this from video_analyze or media_metadata without opening a schema.

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

Usage Guidelines4/5

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

'Without Gemini analysis' plus the cost line (1 YouTube API unit, 0 Gemini units) clearly signals the context in which to prefer this over video_analyze. It stops short of an explicit 'use X instead when Y' statement, so it earns a 4 rather than 5.

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

video_note_createVideo Note CreateA
Destructive

Create a source-linked illustrated tutorial PDF or validate a read-only dry plan.

Actual generation retains exact source PNGs, page rasters and a manifest/receipt. Missing illustrations or AV inference preserve supplied text with warnings. Deterministic PDF checks do not establish factual or human review.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local source SHA, ordered supplied steps and PDF destination; dry-run default. Optional AV inference needs its own explicit submission grant.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, idempotentHint=false and openWorldHint=true. The description adds genuine context beyond that: what artifacts are retained (source PNGs, page rasters, manifest/receipt), the fallback behavior when illustrations are missing or AV inference is used (supplied text preserved with warnings), and the caveat that deterministic checks do not equal factual/human review.

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?

Four short sentences, front-loaded with the core action and the dry-run alternative. Each sentence carries information, though the last two are dense and slightly elliptical ('Deterministic PDF checks do not establish factual or human review'), which costs a little clarity.

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?

An output schema exists, so return values need not be described, and the annotations carry the safety profile. The description covers both modes, side-effect artifacts, degraded-input behavior, and a review caveat, leaving only explicit when-to-use routing to siblings unaddressed.

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 description coverage is 100% and nested objects (request, steps, perception) are already documented inline, so the baseline is 3. The description only loosely gestures at two parameters (dry-run plan, AV inference) without adding syntax or constraints 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?

States a specific verb and resource: 'Create a source-linked illustrated tutorial PDF', plus the alternate mode 'validate a read-only dry plan'. No sibling tool produces a tutorial PDF, so overlap is minimal, but the description never names a sibling or explicitly carves out its niche against the large video/media tool set.

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 two modes (dry-run plan validation vs actual generation) imply a workflow, and the schema default of dry_run=true reinforces that. However, there is no explicit 'use this when...' guidance, no statement of when to prefer this over video_storyboard, video_analyze, or research_document, and no prerequisites such as the required source SHA being available first.

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

video_playlistVideo PlaylistA
Read-onlyIdempotent

Get video IDs and titles from a YouTube playlist.

Results can be passed to video_analyze for batch analysis. Costs 1 YouTube API unit per page (max 50 items/page).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube playlist URL (must contain 'list=' parameter)
max_itemsNoMaximum videos to return

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds genuinely useful behavioral context beyond that: cost of 1 YouTube API unit per page and a 50-item page cap, which helps the agent reason about quota and batching. Pagination semantics beyond 'per page' are not spelled out.

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?

Three short, front-loaded sentences with zero filler: purpose first, downstream use second, cost third. Every sentence carries distinct information and nothing is wasted.

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?

With an output schema present, return values need not be explained, and annotations cover the safety profile. The description supplies cost context, and both parameters are documented. The only mild gap is pagination behavior and how to iterate past the first page, but overall it is complete for calling the tool correctly.

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 description coverage is 100%, so both url and max_items are already fully documented in the schema. The description's mention of 'max 50 items/page' loosely reinforces the max_items ceiling but adds no syntax or format detail beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose4/5

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

The description states a specific verb and resource: 'Get video IDs and titles from a YouTube playlist.' This is precise and tells the agent exactly what data comes back. It does not, however, explicitly differentiate itself from similar siblings like video_metadata or youtube_channel_inspect, which also return video-level data.

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?

Usage is only implied through 'Results can be passed to video_analyze for batch analysis,' which hints at the downstream workflow. There is no explicit when-to-use-vs-alternatives guidance, no prerequisites, and no statement of when this tool is the wrong choice.

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

video_storyboardVideo StoryboardC

Create a measured source storyboard with literal absolute source-clock labels.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact local source, at most 120-second window and sixteen actual frame tiles with burned source timestamps
include_imageNoEmit the actual storyboard PNG within native byte limits

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare the non-mutating, non-destructive, non-idempotent profile, so the bar is lower, but the description adds almost nothing beyond them or the schema. It doesn't mention the 120-second window limit, the ~16-tile cap, the sha256 source verification, or what artifact is produced, leaving the key behavioral constraints undisclosed.

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?

A single short sentence with the core action front-loaded and no filler. It is appropriately sized, though the cryptic phrasing reduces the value of the brevity.

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?

An output schema exists and the input schema is fully documented, so return values needn't be explained. However, for a tool with nested constraints (window, tile count, hash verification) and multiple frame-producing siblings, the description omits the constraints and routing an agent would need to call it correctly.

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 description coverage is 100% and the nested request object documents rows, columns, pixel limits, time ranges, and hash verification, so the schema carries the parameter burden. The description adds no parameter-level meaning (e.g., how rows/columns map to tiles), which is the baseline-3 case.

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

Purpose3/5

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

The verb+resource (create a storyboard) is identifiable, but the qualifiers 'measured source' and 'literal absolute source-clock labels' are opaque jargon that don't clarify what a storyboard actually is (a grid of sampled frames with timestamps burned in). It also does nothing to distinguish this from siblings like video_frames, video_detect_scenes, or video_clip_select, which also produce frame samples.

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 when-to-use, when-not-to-use, or alternative is stated. An agent cannot tell whether to reach for this versus video_frames, video_detect_scenes, or media_perceive; the description offers no routing signal at all.

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

vision_chatVision ChatA

Analyze, identify or compare exact images and bounded source video samples.

Dry plans perform local preparation with zero provider calls. A live request requires explicit workflow authorization and a configured model/account. Interpretation remains model inference, separately from source byte lineage.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact original sources, instruction, selected backend, dry plan and explicit workflow submission grant

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, and non-idempotency, so the safety profile is partly covered. The description adds genuine context the annotations cannot: that dry plans make zero provider calls, that a live submission needs explicit workflow authorization plus a configured model/account, and that model interpretation is separate from source byte lineage. It stops short of describing cost, latency, or failure behavior on live calls.

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?

Three sentences with the purpose front-loaded and no filler; the dry-versus-live distinction follows immediately. The phrasing is somewhat abstract ('bounded source video samples', 'source byte lineage'), costing a little readability but not wasting space.

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?

An output schema exists, so return values need no explanation. For a single nested request parameter at full schema coverage, the description supplies the key operational context (dry default, authorization gate, provider dependency) that an agent needs before invoking. It could say more about which sources are valid or how the live path behaves on failure.

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 description coverage is 100%, so the nested request object, limits, sources, crop, and resize semantics are already documented in the schema. The description adds the dry/live authorization framing but no field-level syntax or defaults beyond what the schema provides, so the baseline 3 is appropriate.

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

Purpose4/5

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

The description opens with a specific verb triad (analyze, identify, compare) and a precise resource ('exact images and bounded source video samples'), which is more than a restatement of the name. It does not, however, explicitly distinguish itself from close siblings like vision_ocr, vision_grounding, or video_analyze, leaving the agent to infer the boundary.

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

Usage Guidelines3/5

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

It implies usage context by contrasting 'dry plans' (local, zero provider calls) with a 'live request' that requires explicit authorization and a configured model/account, which maps to the dry_run and authorize_submission flags. It never states when to prefer this tool over vision_ocr, vision_grounding, or video_analyze, so the routing decision is left implicit.

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

vision_groundingVision GroundingB

Locate objects with strict inferred boxes and optional actual original-pixel crops.

Normalized1000 boxes map through the exact transmitted preparation to original stored/oriented pixels. Crop byte/geometry verification does not verify that the model identified the object correctly. Empty detections remain valid abstentions.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact original sources, instruction, selected backend, dry plan and explicit workflow submission grant

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

The description adds real behavioral context beyond the annotations: coordinate mapping (normalized1000 -> original stored/oriented pixels), the caveat that crop verification does not confirm correct identification, and that empty detections are valid abstentions. However it omits the significant two-phase workflow implied by dry_run (default true) and authorize_submission (default false), and does not mention cost/limits or open-world submission implications flagged by openWorldHint=true.

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?

Three tight sentences, front-loaded with the core purpose, with no filler. It is slightly jargon-dense ('exact transmitted preparation', 'oriented source grid'), which costs a little readability but does not waste space.

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?

An output schema exists, so return values need not be explained, and the nested request schema is well described. Still, for a tool whose default behavior is a dry-run plan with an explicit submission grant, the description should say more about the dry_run -> authorize_submission flow to be complete for correct invocation.

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 description coverage is 100%, so the baseline is 3. The description reinforces the coordinate-space semantics ('Normalized1000 boxes map through the exact transmitted preparation to original stored/oriented pixels'), but the equally important dry_run/authorize_submission and backend/limits controls are left entirely to 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 states a concrete verb+resource+output ('Locate objects with strict inferred boxes and optional actual original-pixel crops'), which is clear and actionable. It does not, however, differentiate this tool from plausible siblings such as media_ground_events, image_segment, or vision_chat, leaving the agent to infer which grounding-family tool applies.

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?

There is no guidance on when to use this tool versus alternatives, and no prerequisites or exclusions are stated. Given several overlapping detection/grounding/content-analysis siblings, the agent gets no routing help from the description.

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

vision_ocrVision OcrB

Infer visible text from exact prepared images or precise source frames.

Model transcription is labeled inference. The separate image_ocr operation selects local Tesseract/Vision observations. No automatic fallback occurs.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesExact original sources, instruction, selected backend, dry plan and explicit workflow submission grant

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false, openWorldHint=true and idempotentHint=false, so the agent already knows this is a non-idempotent, open-world model call. The description usefully adds that output is labeled inference rather than ground truth and that no silent fallback happens, but omits the significant operational fact that dry_run defaults to true and authorize_submission must be granted before a real run.

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?

Three short sentences, front-loaded with the core action and followed by the differentiator and the no-fallback caveat. No filler, though 'Model transcription is labeled inference' is phrased awkwardly enough to cost a little 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?

An output schema exists, so return values need no explanation, and the model-vs-local distinction is covered. What is missing for a non-read-only, open-world tool is the dry-run-default and explicit-submission workflow, which the agent must discover from the schema rather than the description.

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 description coverage is 100% and the nested request object is thoroughly documented, including crop, resize, limits and the dry-plan/submission grant. The description adds no parameter-level detail beyond that, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb+resource ('Infer visible text from exact prepared images or precise source frames') and explicitly distinguishes itself from the sibling image_ocr, which uses local Tesseract/Vision. An agent can separate the two model-vs-local paths without opening either schema.

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

Usage Guidelines3/5

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

It names the alternative (image_ocr) and asserts 'No automatic fallback occurs', which tells the agent the choice is explicit and must be made deliberately. However it never states when a model-based transcription is preferable to the local observation path, so the routing decision is only half-specified.

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

web_extractWeb ExtractA

Acquire one checked UTF-8 page or a labeled provider-returned representation.

Dry plans make no DNS/HTTP requests. Direct redirects stay within the source allowlist. Provider services' remote page peers, redirects and original-byte identity remain unverified; returned text cannot authorize further actions.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesOne HTTPS source, checked host rules, direct or configured provider route and explicit access authority

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/5

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

Beyond the annotations, the description discloses substantive behavior: dry runs perform no DNS/HTTP, direct redirects stay within the source allowlist, and provider-returned content is unverified and cannot authorize further actions. This trust/safety framing is meaningful context the annotations do not convey, though it omits what the default dry_run=true implies for a normal call.

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?

Three tight sentences with the primary purpose front-loaded and no filler. The terse phrasing is efficient, though the abstraction slightly reduces scannability.

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?

With an output schema present and full schema coverage, the description needn't explain return values, and it covers the safety-relevant behavior (dry runs, redirect allowlisting, provider trust caveats). It is complete enough for correct invocation, though it never clarifies selection against siblings.

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 description coverage is 100%, so the nested request object and its fields (backend, dry_run, allowed_domains, etc.) are already documented. The description alludes to dry runs and the allowlist but adds no per-parameter syntax or defaults beyond what the schema provides, so the baseline 3 applies.

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

Purpose4/5

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

The description states a concrete verb ("Acquire") and resource ("one checked UTF-8 page" / "provider-returned representation"), so the core action is identifiable. However, it never distinguishes itself from close siblings such as content_extract, research_web, or knowledge_fetch, and the jargon ("checked UTF-8 page") makes the purpose slightly opaque.

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?

There is no explicit when-to-use guidance or named alternative among the many sibling tools. The only usage-adjacent statement is "Dry plans make no DNS/HTTP requests," which describes a mode rather than when this tool should be chosen over content_extract or web_search.

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

web_search_providerWeb Search ProviderA

Plan or perform one explicitly selected optional search request.

Automatic selection uses configured credential-ready Serper, Tavily, Exa, then Serply. Missing pinned keys and failed requests never cause fallback. Provider snippets remain untrusted data and do not establish factual support.

ParametersJSON Schema
NameRequiredDescriptionDefault
requestYesOne query, enabled backend, dry plan, strict submission authority and byte/deadline bounds

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior4/5

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

Going beyond the annotations, the description discloses two meaningful behavioral traits: missing pinned keys and failed requests never trigger fallback, and provider snippets are untrusted data that do not establish factual support. The annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false) are consistent with 'perform a search request'; nothing here contradicts them. It could say more about the dry_run/authorize_submission gating that effectively controls whether a network submission occurs.

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?

Four short sentences, front-loaded with the action and followed by the two constraints that matter most (fallback policy, snippet trust). Phrasing is dense but every sentence carries content; no filler or restatement of the tool name.

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?

With an output schema present, return values need not be described, and the annotations cover safety hints. The description adequately covers the plan-vs-perform duality (matching dry_run's default) and the fallback semantics. The remaining gap is routing guidance relative to sibling search tools.

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 description coverage is 100% and the nested request object is documented, so the baseline is 3. The description does add one semantic fact the schema does not: the order in which providers are tried when backend='auto' (Serper, Tavily, Exa, Serply). Otherwise it adds no syntax, format, or bounds detail 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 phrase 'Plan or perform one explicitly selected optional search request' gives a specific verb pair (plan/perform) plus the resource (a single search request with an explicitly selected provider), which is more precise than a generic 'search the web'. It does not, however, distinguish itself from near-siblings like web_search, research_web, or web_extract, so an agent cannot tell from this text alone why it would pick this tool over those.

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 never states when to use this tool versus the many search/extract siblings. The only quasi-usage content is the backend ordering for 'auto' mode and the no-fallback rule, which describe how a call behaves once chosen rather than when to choose it. No prerequisites beyond the implicit credential requirement are spelled out.

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

youtube_channel_catalogYoutube Channel CatalogA
Read-onlyIdempotent

List one channel uploads page and retain any continuation token.

A channel video count and playlist reported total are provider metadata. The returned items establish this page's coverage; no video bytes are fetched.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_itemsNoMaximum upload entries in this API page
referenceYesYouTube UC channel ID, @handle or canonical channel URL
page_tokenNoOptional next_page_token from a prior response

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, openWorld), so the bar is lower, yet the description adds genuinely useful context: it clarifies that video counts and playlist totals are provider metadata and that no video bytes are fetched. This warns the agent that reported totals may not match returned items, which annotations do not convey.

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

Conciseness4/5

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

The action is front-loaded in the first sentence and the three sentences are largely free of padding. The phrasing 'The returned items establish this page's coverage' is slightly abstract, but nothing is wasted.

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?

An output schema exists, so return values need not be explained, and the description correctly focuses on scope (one page) and the metadata-only nature of the call. It is nearly complete; a note on how to obtain the next page token would close the remaining gap.

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 100%, so all three parameters (max_items, reference, page_token) are already documented in the schema. The description's mention of the continuation token loosely maps to page_token but adds no format or syntax detail beyond what the schema provides, so baseline 3 applies.

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

Purpose4/5

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

States a specific verb (List) and resource (one channel uploads page) and makes the single-page scope explicit, which is meaningful given the paginated nature. It does not, however, explicitly distinguish itself from siblings like youtube_channel_inspect or video_playlist, leaving the agent to infer the boundary.

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

Usage Guidelines3/5

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

Mentions retaining a continuation token, which implies the one-page-at-a-time paging workflow, but never states when to choose this tool over youtube_channel_inspect, video_playlist, or video_metadata. Usage is implied rather than spelled out.

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

youtube_channel_inspectYoutube Channel InspectB
Read-onlyIdempotent

Inspect channel metadata through YouTube Data API without downloading media.

ParametersJSON Schema
NameRequiredDescriptionDefault
referenceYesYouTube UC channel ID, @handle or canonical channel URL

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered. The description adds modest value by clarifying it reads via the YouTube Data API and downloads no media, but discloses no auth, quota, or rate-limit behavior.

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?

A single well-formed sentence that front-loads the action and resource with no filler. Slightly terse given the available space, but nothing is wasted.

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?

An output schema exists, so return values need no explanation, and the tool is a low-complexity one-parameter read. The definition is largely sufficient, with the only real gap being the unstated distinction from the sibling channel catalog 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?

Schema coverage is 100% with a single parameter whose description already enumerates accepted forms (UC channel ID, @handle, canonical URL). The description adds nothing beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb (inspect) and resource (channel metadata) and adds the key qualifier 'without downloading media', which separates it from media-fetching tools. However, it does not distinguish itself from the closely named sibling youtube_channel_catalog, leaving some ambiguity.

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?

There is no explicit when-to-use guidance, no prerequisites, and no routing to an alternative such as youtube_channel_catalog. The phrase 'without downloading media' is a weak implied condition but not a usage rule an agent can act on.

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. 63 tool updatesv0.7.1
    • Addedaudio_clip_export
    • Addedaudio_deduplicate
    • Addedaudio_dsp_analyze
    • Addedaudio_transcribe
    • Addedimage_crop
    • Addedimage_edit
    • Addedimage_manifest_read
    • Addedimage_ocr
    • Addedimage_read
    • Addedimage_segment
    • Changedinfra_configure2 fields changed
      • changedInput schema / properties / preset / description
        Previous value: -"Named model preset: \"best\" (3.1 Pro), \"stable\" (3 Pro), or \"budget\" (3 Flash)"New value: +"Named model preset: \"best\" (Pro preview), \"stable\" (Flash), or \"budget\" (Flash-Lite)"
      • changedInput schema / properties / temperature / description
        Previous value: -"Sampling temperature"New value: +"Sampling temperature for models that support it (not 3.6+ Flash)"
    • Addedjob_cancel
    • Addedjob_status
    • Addedmedia_acquire
    • Addedmedia_analyze_music
    • Addedmedia_asset_remove
    • Addedmedia_assets_list
    • Addedmedia_caption_events
    • Addedmedia_count_events
    • Addedmedia_edit_footage
    • Addedmedia_ground_events
    • Addedmedia_info
    • Addedmedia_metadata
    • Addedmedia_perceive
    • Addedmedia_source_inspect
    • Addedmhs_discover
    • Addedmhs_health_check
    • Addedmhs_meta_info
    • Addedmhs_read
    • Addedmhs_reset
    • Addedmhs_write
    • Addedprovider_capabilities
    • Addedresearch_execute
    • Changedresearch_web1 field changed
      • addedInput schema / properties / job_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Resume a recorded launch without resubmitting provider work"
        +}
    • Changedresearch_web_followup1 field changed
      • addedInput schema / properties / job_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Resume a recorded follow-up without repeating inference"
        +}
    • Addedreverse_search_frame
    • Addedsession_memory
    • Addedsource_ingest
    • Addedsource_ingest_cancel
    • Addedsource_ingest_read
    • Addedtext_generate
    • Addedtwelvelabs_call
    • Changedvideo_analyze9 fields changed
      • addedInput schema / properties / dry_run
        Added value: +{
        +  "default": false,
        +  "description": "Plan source reads/sends without provider calls",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / end_offset
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maxLength": 64,
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Local source interval end using h/m/s units; timestamps retain the original source origin"
        +}
      • addedInput schema / properties / execution_budget
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": true,
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Explicit max_calls/max_tokens/max_output_tokens/max_frames/max_windows and start_ms/end_ms/fps. Bounded execution skips optional enrichment and cache reuse."
        +}
      • addedInput schema / properties / fps
        Added value: +{
        +  "anyOf": [
        +    {
        +      "exclusiveMinimum": 0,
        +      "maximum": 30,
        +      "type": "number"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Local files only: requested static sampling frames per second; observed coverage remains unknown"
        +}
      • addedInput schema / properties / output_fields
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Select top-level response fields; complete source/citation/provenance carriers remain included"
        +}
      • addedInput schema / properties / start_offset
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maxLength": 64,
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Local source interval start, using h/m/s units, for example '27m' or '1m30.5s'"
        +}
      • changedInput schema / properties / strict_contract / description
        Previous value: -"Enable strict contract pipeline with quality gates, artifact rendering, and semantic validation. Produces richer output with strategy report, concept map, and HTML/Markdown artifacts."New value: +"Enable strict contract pipeline with quality gates, artifact rendering, and structural validation. Factual/media review and observed coverage remain explicitly pending or unknown. Produces richer output with strategy report, concept map, and HTML/Markdown artifacts."
      • addedInput schema / properties / transcript_limit
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maximum": 10000,
        +      "minimum": 1,
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Page a top-level transcript string without truncating stored evidence or citations"
        +}
      • addedInput schema / properties / transcript_offset
        Added value: +{
        +  "default": 0,
        +  "description": "Original custom-schema transcript string offset in Unicode code points",
        +  "maximum": 2147483647,
        +  "minimum": 0,
        +  "type": "integer"
        +}
    • Addedvideo_analyze_windows
    • Changedvideo_batch_analyze2 fields changed
      • addedInput schema / properties / job_id
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Resume this exact batch without repeating completed or ambiguous submissions"
        +}
      • addedInput schema / properties / max_concurrency
        Added value: +{
        +  "default": 3,
        +  "description": "Maximum concurrent item submissions",
        +  "maximum": 3,
        +  "minimum": 1,
        +  "type": "integer"
        +}
    • Addedvideo_clip_export
    • Addedvideo_clip_select
    • Changedvideo_continue_session1 field changed
      • addedInput schema / properties / scope
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {
        +        "type": "string"
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Exact workspace/notebook from creation; required for scoped sessions"
        +}
    • Changedvideo_create_session1 field changed
      • addedInput schema / properties / scope
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {
        +        "type": "string"
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Exact workspace/notebook isolation for sessions and derived memory; omit for legacy unscoped sessions"
        +}
    • Addedvideo_deduplicate_frames
    • Addedvideo_detect_scenes
    • Addedvideo_frame
    • Addedvideo_frame_by_query
    • Addedvideo_frames
    • Addedvideo_note_create
    • Addedvideo_storyboard
    • Addedvision_chat
    • Addedvision_grounding
    • Addedvision_ocr
    • Addedweb_extract
    • Addedweb_search_provider
    • Addedyoutube_channel_catalog
    • Addedyoutube_channel_inspect
  2. 13 tool updatesv0.6.1
    • Changedcontent_analyze1 field changed
      • addedInput schema / properties / thinking_level / description
        Added value: +"Gemini thinking depth."
    • Changedcontent_batch_analyze1 field changed
      • addedInput schema / properties / thinking_level / description
        Added value: +"Gemini thinking depth."
    • Changedinfra_cache1 field changed
      • addedInput schema / properties / action / description
        Added value: +"Cache operation — \"stats\", \"list\", \"clear\", or \"context\"."
    • Changedinfra_configure1 field changed
      • addedInput schema / properties / thinking_level / description
        Added value: +"Thinking depth — \"minimal\", \"low\", \"medium\", or \"high\"."
    • Changedknowledge_fetch1 field changed
      • addedInput schema / properties / collection / description
        Added value: +"Collection the object belongs to."
    • Changedknowledge_ingest1 field changed
      • addedInput schema / properties / collection / description
        Added value: +"Target collection name."
    • Changedknowledge_related1 field changed
      • addedInput schema / properties / collection / description
        Added value: +"Collection the source object belongs to."
    • Changedresearch_deep2 fields changed
      • addedInput schema / properties / scope / description
        Added value: +"Research depth — \"quick\", \"moderate\", \"deep\", or \"comprehensive\"."
      • addedInput schema / properties / thinking_level / description
        Added value: +"Gemini thinking depth."
    • Changedresearch_document2 fields changed
      • addedInput schema / properties / scope / description
        Added value: +"Research depth -- quick, moderate, deep, comprehensive."
      • addedInput schema / properties / thinking_level / description
        Added value: +"Gemini thinking depth."
    • Changedresearch_plan1 field changed
      • addedInput schema / properties / scope / description
        Added value: +"Research depth."
    • Changedvideo_analyze3 fields changed
      • addedInput schema / properties / file_path / description
        Added value: +"Path to a local video file."
      • addedInput schema / properties / thinking_level / description
        Added value: +"Gemini thinking depth."
      • addedInput schema / properties / url / description
        Added value: +"YouTube video URL."
    • Changedvideo_batch_analyze1 field changed
      • addedInput schema / properties / thinking_level / description
        Added value: +"Gemini thinking depth."
    • Changedvideo_create_session2 fields changed
      • addedInput schema / properties / file_path / description
        Added value: +"Path to a local video file."
      • addedInput schema / properties / url / description
        Added value: +"YouTube video URL."
  3. 34 tool updatesv0.6.0
    • First observedcontent_analyze
    • First observedcontent_batch_analyze
    • First observedcontent_extract
    • First observedinfra_cache
    • First observedinfra_configure
    • First observedknowledge_ask
    • First observedknowledge_fetch
    • First observedknowledge_ingest
    • First observedknowledge_query
    • First observedknowledge_related
    • First observedknowledge_schema
    • First observedknowledge_search
    • First observedknowledge_stats
    • First observedresearch_assess_evidence
    • First observedresearch_author_search
    • First observedresearch_deep
    • First observedresearch_document
    • First observedresearch_paper_citations
    • First observedresearch_paper_details
    • First observedresearch_paper_recommendations
    • First observedresearch_paper_search
    • First observedresearch_plan
    • First observedresearch_web
    • First observedresearch_web_cancel
    • First observedresearch_web_followup
    • First observedresearch_web_status
    • First observedvideo_analyze
    • First observedvideo_batch_analyze
    • First observedvideo_comments
    • First observedvideo_continue_session
    • First observedvideo_create_session
    • First observedvideo_metadata
    • First observedvideo_playlist
    • First observedweb_search

TDQS

B3/5.0

Scored across 90 tools

Disambiguation2/5

With 90 tools across knowledge, research, video, audio, image, web, and device simulation, many boundaries overlap: video_analyze/content_analyze/media_perceive/vision_chat, research_web/research_deep/research_document/research_execute, and video_frame/video_frames/video_frame_by_query are especially confusable. The detailed descriptions help, but an agent still faces high misselection risk because many distinctions are workflow-specific and subtle.

Naming Consistency4/5

All names use snake_case and largely follow a domain-prefixed operation pattern (knowledge_ingest, video_analyze, research_web_status), which is readable and predictable by area. However, there are mixed noun-only and verb styles (knowledge_stats, media_info, job_status) and brand/acronym prefixes (mhs_, twelvelabs_), so it is not a perfectly uniform verb_noun convention.

Tool Count1/5

90 tools is far beyond the typical 3-15 scoped set and exceeds even the 25+ heavy threshold. The server spans many unrelated domains, making the surface unwieldy and creating extreme cognitive load for tool selection.

Completeness4/5

The surface covers research, knowledge, video/image/audio processing, web, and media assets with lifecycle operations such as ingest, search, acquire, export, edit, and cancel. Minor gaps exist, including knowledge object update/delete and collection management, but most workflows have supporting tools.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers