Skip to main content
Glama

Submit Song Edit Task

submit_song_edit_task
Destructive

Starts one Fotor song extension, remix or local edit task. May consume existing Fotor credits. Returns a task ID without waiting for completion; use get_task to check its status once. This tool does not poll for completion. Repeating the request may create another task and consume additional credits. Do not automatically retry when the submission outcome is uncertain. This tool does not purchase credits or initiate a checkout flow.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "audio_url": "<audio_url>",
      "operation": "<operation>",
      "lyrics": "<lyrics>"
    },
    "name": "submit_song_edit_task"
  }
}

Input Schema

NameRequiredDescriptionDefault
lyricsYesLyrics for the generated section; at most 3000 characters for extend/edit, 5000 for remix.
promptNoDescribe the new arrangement; required for remix only.
audio_urlYesAccessible HTTPS song URL. Remix requires mp3/m4a music, 10–350 seconds long, with a detectable beat.
operationYesextend: continue a song; remix: create a new arrangement; edit: replace a time interval. Supply only fields for the chosen operation.
edit_end_msNoReplacement end in integer milliseconds; required for edit only. Use a window of at least 3000 ms and leave at least 12000 ms of source audio after it.
extend_typeNohead: extend before the position; tail: extend after it. Required for extend only.
extend_at_msNoExtension position in integer milliseconds; required for extend only.
edit_start_msNoReplacement start in integer milliseconds; required for edit only. Leave at least 12000 ms of source audio before it.

Output Schema

NameRequiredDescriptionDefault
errorNoStable failure code; null when no failure is reported.
statusYesObserved task state. processing does not distinguish queued or running; unknown is an unrecognized upstream state.
task_idYesFotor task ID for get_task.
model_idYesModel ID used for this task.
task_typeYesAudio operation performed.
media_typeNoGenerated media category.audio
result_urlNoCompleted output URL; availability is not guaranteed permanently. Audio output may be MP3 or ZIP.
is_terminalYesWhether the task has completed, failed, timed out or been cancelled.
result_formatNoCompleted file format: mp3 audio or zip archive; null until completed.
failure_reasonNoSafe failure summary; may be generic rather than the upstream root cause.
credits_incrementNoReported task credit cost; not an additional charge on each query. Null if unavailable.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior5/5

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

Annotations declare destructive/non-idempotent/open-world, and the description adds the concrete consequences an agent needs: it may consume Fotor credits, repeats create another task and consume more credits, it is async (returns a task ID without waiting), and it does not purchase credits or start checkout. This goes well beyond the annotation flags.

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?

Front-loaded with the action, then the credit-cost warning, then the async/return behavior, then the retry hazard. Each sentence carries distinct operational information with no filler.

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 an async, credit-consuming, non-idempotent mutation with 8 parameters, the description covers cost, return shape, follow-up tool, retry policy, and the boundary that it does not handle checkout. Output schema exists, so return-value explanation is not needed.

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, per-operation field requirements, and millisecond constraints are all documented in the schema. The description adds no parameter-level detail beyond what the schema already states, so 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?

Opens with a specific verb and resource plus scope: 'Starts one Fotor song extension, remix or local edit task.' It names the three operation modes and points to get_task as the follow-up tool, so an agent can distinguish it from the submit_* siblings 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?

Explicitly says not to poll ('use get_task to check its status once', 'does not poll for completion') and not to auto-retry on uncertain outcomes, which is real when-to-use guidance. It does not compare against sibling tools like submit_soundtrack_task or submit_audio_track_task, so task-selection guidance is incomplete.

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