Skip to main content
Glama

identify_language

Detects the spoken language in an audio file or YouTube link and returns a language label such as en_us, not a transcript.

Instructions

Say which language is spoken in one audio file or one YouTube link. Returns one label, such as en_us. Listens to about 10 seconds of speech, skipping a pause at the start. Less reliable for Latvian and Slovenian. Not a transcript.

Input Schema

NameRequiredDescriptionDefault
pathYes
label_setNofleurs
candidatesNo
clip_secondsNo
wait_secondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and delivers real behavioral detail: one label returned, roughly 10 seconds of audio sampled, an initial pause is skipped, degraded accuracy for Latvian and Slovenian. It doesn't disclose error/failure behavior or whether the call blocks synchronously versus returning a job handle, which matters given job-status siblings exist.

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?

Five short sentences, each earning its place: purpose, return value, sampling behavior, known weakness, and scope boundary. The most decision-relevant facts (what it returns, what it is not) are front-loaded.

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

Completeness3/5

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

With no output schema and no annotations, the description does cover the return value (a single label) and reliability caveats, which is the core need. However, for a five-parameter tool at 0% schema coverage it leaves the label_set/candidates/wait_seconds behavior unexplained, which is a meaningful gap for correct invocation.

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

Parameters2/5

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

Schema description coverage is 0% across five parameters, and the description only indirectly touches two of them — 'audio file or YouTube link' for path and 'about 10 seconds' for clip_seconds. label_set, candidates, and wait_seconds are entirely undocumented in both schema and description, leaving the agent to guess at label taxonomies, candidate constraints, and blocking timeout semantics.

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?

Uses a specific verb-plus-resource framing ('Say which language is spoken') and pins the input domain to 'one audio file or one YouTube link.' The closing 'Not a transcript' explicitly separates it from the transcribe sibling, so an agent can route correctly without opening any 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?

The 'Not a transcript' line gives a clear negative condition against transcribe, and the label example (en_us) shows the expected usage shape. It stops short of naming alternatives such as list_languages for supported labels or saying when to prefer transcribe/translate instead, so it's clear context rather than a full when/when-not routing rule.

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