Skip to main content
Glama

Cut audio

cut_audio

Cut audio from a YouTube, TikTok, Instagram, or SoundCloud URL and return a short-lived download link. Lead with download_url for cut/download requests; offer editor_url when the user wants to tweak the selection. Links expire after about an hour — ask again in chat for a fresh cut if expired. Omit start_sec and end_sec for the full track. format defaults to mp3 (wav allowed). clip_id and peaks drive the interactive clip card some chat apps show; do not show them to the user. If the user adjusted the clip in the card, read the widget context for the current range and download link before answering follow-ups.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesYouTube, TikTok, Instagram, or SoundCloud URL to cut
formatNoDownload format; default mp3
contextYesOne short sentence on what the user is trying to do with this audio (for example 'ringtone from the chorus'). No links, names or personal details.
end_secNoRange end in seconds
llm_modelYesThe exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess.
start_secNoRange start in seconds
duration_secNoClip length in seconds from start_sec (default 0) when end_sec is omitted
conversation_idNoPass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
fullYes
peaksYes
titleYes
formatYes
clip_idYes
end_secNo
filenameYes
start_secNo
editor_urlYes
expires_atYes
download_urlYes
track_duration_secYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / url / description
      Previous value: -"YouTube, TikTok, or Instagram URL to cut"New value: +"YouTube, TikTok, Instagram, or SoundCloud URL to cut"
  2. Changed4 schema fields changed
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "One short sentence on what the user is trying to do with this audio (for example 'ringtone from the chorus'). No links, names or personal details.",
      +  "type": "string"
      +}
    • addedInput schema / properties / conversation_id
      Added value: +{
      +  "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.",
      +  "type": "string"
      +}
    • addedInput schema / properties / llm_model
      Added value: +{
      +  "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.",
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "url"
      -]New value: +[
      +  "url",
      +  "context",
      +  "llm_model"
      +]
  3. Changed5 schema fields changed
    • addedOutput schema / properties / clip_id
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / filename
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / peaks
      Added value: +{
      +  "items": {
      +    "type": "number"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / track_duration_sec
      Added value: +{
      +  "type": "number"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "title",
      -  "format",
      -  "full",
      -  "download_url",
      -  "editor_url",
      -  "expires_at"
      -]New value: +[
      +  "title",
      +  "format",
      +  "full",
      +  "download_url",
      +  "editor_url",
      +  "expires_at",
      +  "clip_id",
      +  "track_duration_sec",
      +  "filename",
      +  "peaks"
      +]
  4. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations only declare the read/write/open-world profile; the description adds real operational context beyond them — links expire after about an hour and a re-request yields a fresh cut, and clip_id/peaks are internal fields that must not be surfaced to the user. Auth requirements and rate limits are still unstated, so it is 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.

Conciseness4/5

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

Front-loaded with the verb, sources and return artifact, then batches agent-facing instructions (link preference, expiry, hidden fields, widget re-read) into compact sentences. Every sentence carries instruction value, though the density of imperatives makes it slightly heavier than an ideal terse definition.

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 explanation is not required, and the description still covers expiry, hidden fields, default format and full-track behavior. The one real gap is sibling routing against retrim_clip for re-cutting an existing clip, which the description does not address.

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 does add non-schema behavior: omitting start_sec and end_sec yields the full track, and it reinforces the mp3 default with wav as the allowed alternative. It does not explain the start_sec/duration_sec/end_sec precedence, which the schema only partially clarifies.

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 (cut) and resource (audio) plus the supported source platforms and the artifact returned (a short-lived download link). It does not, however, differentiate itself from the sibling retrim_clip, which also produces clips — an agent must infer the boundary from context rather than the description.

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 when-to-do-what rules: omit start_sec/end_sec for the full track, offer editor_url when the user wants to tweak the selection, and re-read widget context after an in-card adjustment. It never names retrim_clip or states when that alternative should be preferred, so routing between the two siblings 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources