Skip to main content
Glama

get_upload_link

Use this when the user says their video is ON THEIR COMPUTER rather than at a link — "I have a video on my desktop, find me music and score it". Returns upload_page — a link with a file picker — plus the video_url to score afterwards. GIVE THEM upload_page AS A LINK TO OPEN. Do not paste a terminal command at someone in a chat window — they have no terminal, and this is the step where we lose them. Wait for them to say it finished, then call score_my_video with the video_url this returned. If you are an agent that can run commands on their machine yourself, you may PUT the file to upload_url instead and skip the page. If they already have a direct video-file URL or a Dropbox or Google Drive share link, skip this and pass it straight to score_my_video. Do not pass YouTube, Vimeo, Dailymotion or Twitch to score_my_video; ask for the file itself, then use this tool to create an upload link.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filenameNotheir file's name, for the link

TDQS

A4.6/5.0
Behavior5/5

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

Even with minimal annotations, the description discloses the tool's behavior: it returns an upload_page link with a file picker plus a video_url for scoring. It explains the user interaction ('GIVE THEM upload_page AS A LINK TO OPEN'), the required wait for confirmation, and the alternative PUT flow for command-capable agents. This goes well beyond the annotations and does not contradict them.

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 longer than a typical tool description, but it is front-loaded with the core usage trigger and each sentence conveys necessary operational instructions. It could be tightened, but the additional length is justified by the multi-step workflow it must communicate.

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?

There is no output schema, so the description fully compensates by explaining both return values (upload_page and video_url), the required follow-up call to score_my_video, and alternative handling for different agent capabilities. It provides a complete self-contained workflow for the agent.

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 already provides 100% coverage for the single parameter (filename) with the description 'their file's name, for the link'. The tool description itself adds no further semantic detail about the parameter, so it stays at the baseline of 3 where the schema carries the explanatory burden.

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 this tool creates an upload link for videos located on the user's computer ('Use this when the user says their video is ON THEIR COMPUTER'). It explicitly names the returned artifacts (upload_page and video_url) and differs from sibling tools by saying to skip this when a URL already exists and pass directly to score_my_video.

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?

Usage guidance is exceptionally explicit: it gives the exact trigger ('when the user says their video is ON THEIR COMPUTER'), exclusions ('If they already have a direct video-file URL or a Dropbox or Google Drive share link, skip this'), and forbidden sources ('Do not pass YouTube, Vimeo, Dailymotion or Twitch'). It also tells the agent exactly what to do after getting the video_url.

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.

TDQS

A4.1/5.0
Disambiguation3/5

search_music, find_soundtrack, and search_by_reference all discover catalogue music, and find_soundtrack overlaps with search_music for description-based requests. The long descriptions clarify the intended input type, but an agent could still reasonably pick the wrong tool when a user asks for music for a video.

Naming Consistency3/5

Most tools follow a readable verb + object pattern (analyze_video, deliver_score, get_track, get_upload_link), but others are noun phrases (cue_sheet, listen_link, feedback) or awkwardly different (about_ainsof, score_my_video). The naming is not chaotic but lacks a single consistent convention.

Tool Count5/5

With 12 tools, the set is within the well-scoped 3-15 range and each tool addresses a clear stage of the catalogue and scoring workflow: search, preview, upload, analyze, score, deliver, and feedback. No obvious filler or redundancy bloating the count.

Completeness4/5

The set covers the core lifecycle from music discovery and video analysis through scoring, delivery, and user feedback. Minor gaps exist such as no explicit browse/album listing tool, but search_music can retrieve albums and composers, so this should not cause agent failures.

Resources