Skip to main content
Glama
meomeo-dev

shell-as-mcp

by meomeo-dev

ffmpeg__generate_thumbnail

Extract a single frame from a video at a specified timestamp to create a thumbnail or poster image.

Instructions

Extract a single frame from a video at a specified timestamp to use as a thumbnail or poster image. @remarks Returns JSON in stdout with output_path and applied parameters. Output format is determined by output_path extension (jpg recommended). @param input_path Source video path. @param output_path Destination image path (for example thumbnail.jpg or poster.png). @param timestamp Timestamp to extract the frame from. Default 00:00:01. @param width Output image width in pixels. Height is auto-calculated. Default 1280. @param quality JPEG quality factor 1-31 (lower value = better quality). Default 2. @param __mcp_response_mode Optional response mode: content (default) or structuredContent.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
widthNo
qualityNo
timestampNo
input_pathYes
output_pathYes
__mcp_response_modeNocontent
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses that output is JSON in stdout containing output_path and applied parameters, that output format depends on extension, and provides defaults and quality semantics. This offers meaningful behavioral context, though it omits potential edge-case behaviors like error handling or file overwriting.

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

Conciseness4/5

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

The description is well-structured with a clear purpose sentence followed by @remarks and @param entries. Every line adds value, and while longer than the ideal two-sentence format, it remains concise and free of fluff. The use of parameter annotations aids scanning.

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 has 6 parameters, no output schema, and no annotations. The description covers purpose, all parameters, defaults, output format, and response mode, which is quite complete. It lacks only a few optional details like accepted timestamp formats or explicit error behavior, but given the moderate complexity, it is well-rounded.

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

Parameters5/5

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

Schema description coverage is 0%, and the description fully compensates by documenting all six parameters with clear semantics (@param input_path, output_path, timestamp, width, quality, __mcp_response_mode), including defaults, value ranges, and format guidance. This adds substantial meaning beyond the bare schema.

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

Purpose5/5

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

The description clearly states 'Extract a single frame from a video at a specified timestamp to use as a thumbnail or poster image.' This uses a specific verb and resource, and explicitly mentions 'single frame' and 'thumbnail or poster', which distinguishes it from sibling tools like extract_frames_for_vision that extract multiple frames for other purposes.

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

Usage Guidelines4/5

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

The description provides clear usage context by specifying the intended use case (thumbnail/poster). However, it does not explicitly mention alternative tools or when not to use this tool, so it lacks explicit exclusions but still gives enough context for selection.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/meomeo-dev/shell-as-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server