Skip to main content
Glama

Server Details

Free, copyright-safe AI music library for video creators and AI agents.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 3.7/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct functionality: similarity, download, status polling, metadata, search, and stem separation. No overlap exists, ensuring clear agent selection.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., find_similar, get_download_url). No deviations or mixed conventions.

Tool Count5/5

6 tools is well-scoped for a music library and audio processing server. Each tool serves a clear purpose without redundancy or unnecessary complexity.

Completeness4/5

Core workflows (search, metadata, download, stem separation) are covered. Minor gaps like missing cancellation for async stems jobs are acceptable given the scope.

Available Tools

6 tools
find_similarBInspect

Find tracks similar to a given track using Tonr's semantic embeddings.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of similar tracks (max 10)
track_idYesTrack ID to find similar tracks for
Behavior2/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 mentions the method ('semantic embeddings') but doesn't disclose behavioral traits such as performance characteristics, rate limits, authentication needs, or what the output looks like (e.g., format, ordering). This is a significant gap for a tool with no annotation coverage.

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?

The description is a single, efficient sentence with zero waste, front-loading the core purpose. Every word earns its place, making it highly concise and well-structured.

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

Completeness2/5

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

Given the complexity (semantic similarity search), lack of annotations, and no output schema, the description is incomplete. It doesn't explain the return values, error conditions, or behavioral context needed for effective use, leaving gaps in understanding how the tool behaves.

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%, so the schema already documents both parameters ('track_id' and 'limit' with default and max). The description adds no additional meaning beyond what the schema provides, such as explaining how similarity is calculated or the implications of the limit. Baseline 3 is appropriate when the schema does the heavy lifting.

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?

The description clearly states the verb ('find') and resource ('tracks similar to a given track'), specifying the semantic embedding method ('using Tonr's semantic embeddings'). It distinguishes from siblings like 'get_track' (fetch single track) and 'search_music' (general search), but doesn't explicitly contrast with 'get_download_url'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when similarity based on embeddings is needed, but doesn't explicitly state when to use this tool versus alternatives like 'search_music' or provide exclusions. It lacks guidance on prerequisites or constraints beyond the parameters.

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

get_download_urlAInspect

Get a download URL for a Tonr track. Download access depends on the caller's plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoAudio formatmp3
api_keyNoYour Tonr paid API key (starts with tnr_). Required for download access.
track_idYesTrack ID
Behavior3/5

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

No annotations are provided, so the description must convey behavioral traits. It discloses the dependency on the caller's plan for download access, but does not mention rate limits, authentication beyond the api_key, or error conditions. Some transparency is present but not comprehensive.

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?

The description is very concise with two sentences, no redundant information, and front-loads the purpose. Every sentence earns its place.

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?

Given the parameter count of 3 and no output schema, the description is minimally adequate but lacks details on the response format, URL expiration, or error handling. It does not fully compensate for the missing output schema.

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%, so the baseline is 3. The description does not add significant meaning beyond the schema's parameter descriptions; the only addition is the mention of plan dependency for the api_key. This does not elevate the score above baseline.

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 the tool's purpose as 'Get a download URL for a Tonr track', using a specific verb and resource. It distinguishes itself from sibling tools like get_track and search_music by focusing on download URLs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions that download access depends on the caller's plan, providing some context, but does not explicitly state when to use this tool versus alternatives or provide exclusions. Usage guidance is implied but incomplete.

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

get_stems_statusAInspect

Poll the status of a stems separation job started with separate_stems. Returns stem URLs when status is 'done'.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesJob ID returned by separate_stems.
api_keyYesYour Tonr API key (must be the same key that started the job).
Behavior3/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 that this is a polling operation and mentions the return behavior ('Returns stem URLs when status is 'done''), which adds useful context beyond basic parameters. However, it doesn't cover other behavioral traits like rate limits, error handling, or what happens if the job isn't done (e.g., retry logic or status updates).

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?

The description is two sentences, front-loaded with the core purpose and followed by return behavior. Every sentence earns its place by providing essential information without waste, making it highly efficient and well-structured for quick understanding.

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?

Given the tool's moderate complexity (polling job status), no annotations, and no output schema, the description is adequate but has gaps. It explains the purpose and return condition, but lacks details on output format beyond 'stem URLs', error scenarios, or polling intervals. For a status-checking tool, more behavioral context would improve completeness.

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%, so the schema already documents both parameters ('job_id' and 'api_key') fully. The description adds minimal value beyond this, as it only implies the 'job_id' comes from 'separate_stems' and the 'api_key' must match, which is partially covered in the schema. Baseline 3 is appropriate since the schema does the heavy lifting.

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?

The description clearly states the tool's purpose: 'Poll the status of a stems separation job started with separate_stems.' It specifies the verb ('poll') and resource ('stems separation job'), but doesn't explicitly differentiate from siblings like 'get_download_url' or 'get_track', which might also retrieve status or results. The mention of 'separate_stems' as the initiating tool provides context but not full sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by referencing 'separate_stems' as the tool that starts the job, suggesting this should be used after that operation. However, it doesn't provide explicit guidance on when to use this versus alternatives (e.g., 'get_download_url' for direct downloads) or any exclusions. The context is clear but lacks detailed alternatives or prerequisites beyond the job initiation.

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

get_trackAInspect

Get complete metadata for a specific Tonr track. Returns all details including mood arc, instruments, use cases, and preview URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_idYesTrack ID (starts with tnr_)
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the return data (metadata details) but does not cover aspects like error handling, rate limits, authentication needs, or whether it's a read-only operation. The description adds value by specifying the scope of metadata but lacks comprehensive behavioral context.

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?

The description is front-loaded with the core purpose in the first sentence and efficiently lists the returned details in the second sentence. Every sentence earns its place by providing essential information without redundancy or unnecessary elaboration, making it appropriately sized for the tool's complexity.

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?

Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is reasonably complete. It explains what the tool does and what data it returns, though it could benefit from more behavioral details like error cases or performance expectations. Without an output schema, it adequately covers the expected return values.

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 input schema has 100% description coverage, with the single parameter 'track_id' documented as 'Track ID (starts with tnr_)'. The description does not add any additional meaning beyond this, such as format examples or validation rules, so it meets the baseline for high schema coverage without compensating further.

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 the specific action ('Get complete metadata') and resource ('for a specific Tonr track'), distinguishing it from sibling tools like 'find_similar' (similarity search), 'get_download_url' (download functionality), and 'search_music' (broad search). It specifies the scope of returned data including mood arc, instruments, use cases, and preview URL.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when detailed metadata for a specific track is needed, but it does not explicitly state when to use this tool versus alternatives like 'search_music' for broader queries or 'find_similar' for related tracks. No exclusions or prerequisites are mentioned, leaving some ambiguity about optimal use cases.

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

search_musicBInspect

Search the Tonr music library. Use natural language queries like 'upbeat music for a cooking video' or structured filters. Returns tracks with preview URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault
moodNoFilter by mood (happy, sad, calm, dark, epic, romantic, energetic, mysterious, etc.)
genreNoFilter by genre (cinematic, electronic, ambient, acoustic, lo-fi, etc.)
limitNoNumber of results (max 20)
queryNoNatural language search query
bpm_maxNoMaximum tempo in BPM
bpm_minNoMinimum tempo in BPM
energy_maxNoMaximum energy between 0 and 1
energy_minNoMinimum energy between 0 and 1
has_vocalsNoFilter for vocal (true) or instrumental (false) tracks
instrumentsNoFilter by one or more instruments
video_themeNoFilter by video type (travel, corporate, wedding, gaming, vlog, tutorial, etc.)
duration_maxNoMaximum duration in seconds
duration_minNoMinimum duration in seconds
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions that the tool 'returns tracks with preview URLs', which gives some output information, but doesn't cover important behavioral aspects like rate limits, authentication requirements, pagination, error handling, or whether this is a read-only operation. The description is insufficient for a tool with 13 parameters.

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?

The description is perfectly concise with two sentences that each earn their place. The first sentence states the purpose and usage method, while the second specifies the return format. There's zero waste or redundancy in the wording.

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

Completeness2/5

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

For a complex search tool with 13 parameters and no output schema, the description is incomplete. It doesn't explain the return format beyond 'tracks with preview URLs', doesn't mention result ordering, pagination, or error cases. With no annotations and rich parameter schema, the description should provide more behavioral and output context to be truly complete.

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%, so the schema already documents all 13 parameters thoroughly. The description adds minimal value beyond the schema by mentioning 'natural language queries' which relates to the 'query' parameter, but doesn't provide additional semantic context or usage examples for the parameters. This meets the baseline for high schema coverage.

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 the specific action ('Search the Tonr music library'), the resource ('music library'), and distinguishes from siblings by specifying it returns tracks with preview URLs. It provides concrete examples of natural language queries, making the purpose immediately understandable and differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by mentioning natural language queries and structured filters, but doesn't explicitly state when to use this tool versus sibling tools like 'find_similar' or 'get_track'. It provides some guidance on query types but lacks explicit alternatives or exclusions.

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

separate_stemsAInspect

Split an audio file into 7 stems (vocals, drums, bass, guitar, piano, other, instrumental). Async — returns a jobId you poll with get_stems_status. Requires a Pro or Business plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyYesYour Tonr API key (starts with tnr_). Get one at tonr.app/settings/api-keys.
audio_urlYesPublic https:// URL to an audio file (MP3/WAV/OGG/FLAC/M4A, up to 50 MB).
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses key behavioral traits: the operation is async (returns a jobId for polling), has plan requirements (Pro or Business), and implies a mutation (splitting audio). However, it doesn't mention rate limits, error handling, or what happens to the original file.

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?

The description is front-loaded with the core purpose in the first sentence, followed by critical behavioral details (async nature, polling method, plan requirements). Every sentence adds essential information with zero waste, making it highly efficient.

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?

Given the tool's complexity (async operation with polling) and no annotations or output schema, the description is mostly complete. It covers the purpose, usage, and key behavioral aspects, but lacks details on output format (e.g., what get_stems_status returns) and error cases.

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%, so the schema already documents both parameters (audio_url and api_key) thoroughly. The description doesn't add any parameter-specific meaning beyond what the schema provides, such as explaining why these parameters are needed or their interaction.

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 the specific action ('split an audio file') and the exact resources produced ('7 stems: vocals, drums, bass, guitar, piano, other, instrumental'). It distinguishes this tool from siblings like 'get_stems_status' (which polls results) and 'search_music' (which searches).

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?

The description explicitly states when to use this tool ('split an audio file into 7 stems') and when not to use it (requires a Pro or Business plan). It also provides an alternative for checking results ('returns a jobId you poll with get_stems_status'), clearly differentiating from sibling tools.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources