Skip to main content
Glama

video_to_sfx

Analyzes a video to generate matching sound effects. Provide a local file path or URL; returns the audio file.

Instructions

Generate sound effects for a video: Sonilo analyzes the video and creates matching SFX. Returns the generated sound-effects audio file. Provide either a local video file path or a publicly accessible video URL. Generation is asynchronous on the backend; this tool waits for completion and returns the saved file paths.

⚠️ COST WARNING: This tool makes an API call to Sonilo which may incur charges. Only use when explicitly requested by the user.

Args: video_path (str, optional): Absolute local path, or relative to SONILO_MCP_BASE_PATH. Supports .mp4/.mov/.webm/.m4v/.gif (gif must be animated). Subject to the account's max upload size (typically 300 MB). Maximum video duration is 180 seconds (3 minutes). video_url (str, optional): HTTPS URL to a video file. prompt (str, optional): Overall description of the desired sound effects (max 2000 chars). segments (list, optional): Per-segment SFX descriptions, each {"start": float, "end": float, "prompt": str}. Backend rules: first start must be 0; segments must be contiguous (each end == next start); every end > start; every prompt non-empty (max 200 chars); last end must not exceed the video duration; max 30 segments. Invalid segments are rejected before any charge. audio_format (str, optional): One of wav, mp3, aac, flac. Defaults to aac (.m4a file). output_directory (str, optional): Where to save the resulting files. Defaults to SONILO_MCP_BASE_PATH.

Exactly one of video_path and video_url must be provided.

Returns: One TextContent: the saved audio file path. If the call times out, the error message includes the task_id — recover with get_sfx_task.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
promptNo
segmentsNo
video_urlNo
video_pathNo
audio_formatNo
output_directoryNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses async backend processing, cost implications, file format/limits, segment validation rules, and error recovery via get_sfx_task. Could mention authentication or file lifecycle but sufficient.

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?

Well-structured with intro, cost warning, parameter details, and return info. Each sentence adds value, though slightly verbose. Front-loaded with purpose.

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

Completeness4/5

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

Covers all 6 parameters with constraints, mutual exclusivity, async nature, error recovery. Does not specify output file persistence, but output schema exists. Adequate for the tool's complexity.

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

Parameters5/5

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

Schema coverage is 0%, so the description must add meaning. It thoroughly explains each parameter: video_path/video_url constraints, prompt length, segments structure and validation, audio_format options, output_directory default. Adds significant value 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 'Generate sound effects for a video: Sonilo analyzes the video and creates matching SFX'. It distinguishes this tool from siblings like text_to_sfx or video_to_music by specifying it takes video input and produces sound effects.

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 explicit guidance: 'Provide either a local video file path or a publicly accessible video URL' and 'Exactly one of video_path and video_url must be provided'. Also includes a cost warning and notes asynchronous behavior. However, it does not explicitly differentiate from sibling tools like text_to_sfx.

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/sonilo-ai/sonilo-mcp'

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