Skip to main content
Glama

Server Details

Search and license 5,000+ fully cleared music tracks via MCP. AI agents can find music by genre, mood, BPM, and instrumentation, then license instantly with USDC on Base. No human in the loop. Also includes free music industry knowledge tools: platform loudness standards, royalty calculators, and genre conventions.

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 4.2/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: ai_search and search_catalog offer different search modalities, get_track retrieves details, and the three utility tools cover royalty calculations, genre conventions, and loudness standards with no functional overlap.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern, using 'get_' for retrieval operations and descriptive names for other actions (calculate_, ai_search, search_catalog). No naming irregularities.

Tool Count5/5

With 6 tools, the server is well-scoped for a music catalog and industry utility service. It provides core search and retrieval functions plus complementary music business tools without being overwhelming or insufficient.

Completeness4/5

The tool set covers catalog search (two methods), track metadata retrieval, and three industry-specific utilities. Missing an explicit purchase/license tool, but the purpose seems focused on information retrieval and modeling, so only a minor gap.

Available Tools

6 tools
calculate_royalty_splitAInspect

Calculates royalty splits and estimated earnings for music rights deals. Handles songwriter/publisher splits, producer points, co-writer splits, sync fee splits, and streaming payout estimates. Works for any music — not limited to the OnChain Music catalog. Useful for artists, managers, agents, and label tools that need to model deal economics.

ParametersJSON Schema
NameRequiredDescriptionDefault
streamsNoNumber of streams. Used for streaming_estimate.
writersNoArray of co-writers with their percentage splits. Used for co_writer_split. Each item: { name: string, percentage: number }. Percentages must sum to 100.
platformNoStreaming platform for payout estimate. Use "average" for a blended estimate across platforms.
sync_feeNoTotal sync licensing fee in USD. Used for sync_fee_split.
units_soldNoNumber of units sold. Used for producer_points calculation.
gross_royaltiesNoTotal gross royalties collected (in USD). Used for songwriter_publisher_split and co_writer_split.
producer_pointsNoNumber of producer points (percentage of master royalties). Used for producer_points calculation. Example: 3 for 3 points.
calculation_typeYesThe type of royalty calculation to perform.
artist_royalty_rateNoArtist royalty rate as a percentage of label revenue (0-100). Used for streaming_estimate. Example: 18 for a standard 18% royalty deal. Use 100 for independent artists keeping all revenue.
master_royalty_rateNoMaster royalty rate as a percentage (0-100). Used for producer_points. Example: 18 for an 18-point deal.
publisher_percentageNoPublisher's percentage of the songwriter share (0-100). Used for songwriter_publisher_split. Example: 50 for a 50/50 co-publishing deal.
suggested_retail_priceNoSuggested retail price of the album in USD. Used for producer_points calculation. Example: 9.99.
master_owner_percentageNoMaster rights owner's share of the sync fee as a percentage (0-100). Used for sync_fee_split. Typically 50% goes to master, 50% to publishing.
publisher_sync_percentageNoPublisher's share of the sync fee as a percentage (0-100). Used for sync_fee_split. The remainder goes to the songwriter.
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 describes the tool as a calculator ('Calculates royalty splits and estimated earnings'), implying it is stateless and non-destructive, but it does not explicitly state that it modifies no data, requires no permissions, or has rate limits. The behavioral traits are implied but not explicit.

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 four sentences long, front-loaded with the core action, followed by a list of handled scenarios, scope, and target users. Every sentence adds value without redundancy.

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?

The tool has 14 parameters and no output schema, yet the description does not explain what the return values look like (e.g., structured results, estimated values, breakdowns). It also does not provide guidance on how to combine parameters for different calculation types beyond listing them. This leaves a significant gap for a complex tool.

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 structured data already explains each parameter's purpose and usage. The description adds no extra parameter information beyond what the schema provides, meeting the baseline of 3.

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 calculates royalty splits and estimated earnings for music rights deals, listing specific calculation types (songwriter/publisher splits, producer points, co-writer splits, sync fee splits, streaming payout estimates). It also notes it works for any music, distinguishing it from sibling tools (e.g., search_catalog, get_genre_conventions) that serve different purposes.

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 description says 'Useful for artists, managers, agents, and label tools that need to model deal economics,' which provides clear context for when to use it. However, it does not explicitly state when not to use it or alternative tools, but since no sibling tool performs royalty calculations, the absence of exclusions is acceptable.

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

get_genre_conventionsAInspect

Returns music industry conventions for a given genre including typical BPM ranges, song structure, instrumentation, key tendencies, production characteristics, and common sync use cases. Useful for songwriting, production decisions, A&R research, playlist curation, and sync licensing briefs. Works for any music — not limited to the OnChain Music catalog.

ParametersJSON Schema
NameRequiredDescriptionDefault
genreYesThe genre to look up. Examples: Pop, Rock, Hip-Hop, Electronic, Jazz, Country, R&B, Classical, Indie, Metal, Folk, Latin, Reggae, Blues, Soul, Funk, Ambient, House, Techno, Drum and Bass, Trap, Lo-Fi.
include_sync_usesNoIf true, includes common sync licensing use cases for the genre (TV, film, advertising contexts). Default true.
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses that the tool works for any music, not limited to the OnChain Music catalog, and lists the categories of information returned. It does not address authentication or rate limits, but for a lookup tool this is sufficient.

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 with no redundant words. It front-loads the core functionality and then provides use cases and scope, achieving maximum efficiency.

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 there is no output schema, the description compensates by enumerating the types of information returned (BPM ranges, structure, instrumentation, etc.). It could add an example of output format, but the current detail is adequate for a parameter-light tool.

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 description coverage is 100%, so the schema already documents both parameters. The description adds value by providing a detailed list of examples for the 'genre' parameter and explaining the effect of 'include_sync_uses'.

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 returns music industry conventions for a given genre, listing specific aspects like BPM ranges, song structure, etc. It distinguishes itself from sibling tools like 'get_track' or 'search_catalog' by focusing on genre research.

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 description provides explicit use cases such as songwriting, production, A&R, playlist curation, and sync licensing. However, it does not mention when not to use this tool or compare it to alternatives like 'get_loudness_standards' or 'calculate_royalty_split'.

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

get_loudness_standardsAInspect

Returns the official loudness normalization standards for major music and video platforms. Includes integrated LUFS target, true peak limit, and short-term LUFS where applicable. Useful for mastering decisions, mix prep, and ensuring tracks meet platform requirements before distribution or licensing. Works for any music — not limited to the OnChain Music catalog.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoOptional. Filter to a specific platform. Examples: Spotify, Apple Music, YouTube, TikTok, Netflix, Amazon Music, Tidal, SoundCloud, Podcast. Leave empty to return all platforms.
Behavior3/5

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

No annotations provided, so description carries full burden. It honestly indicates a read operation ('Returns') and clarifies scope, but does not disclose rate limits, authentication, or potential side effects. Adequate for a simple lookup.

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?

Three efficient sentences: purpose, data included, use cases. No wasted words, well structured.

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?

Given no output schema, the description explains what the tool returns (LUFS, true peak, short-term LUFS) and clarifies it works for any music. Complete for a simple data retrieval tool.

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 coverage is 100% with a well-described optional parameter. The tool description adds examples and context for return values, but the schema description already covers the parameter meaning. No additional semantic value beyond schema.

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 returns loudness normalization standards for major platforms, listing specific metrics (LUFS target, true peak limit). This is distinct from siblings like get_track or calculate_royalty_split.

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?

Describes use cases (mastering, mix prep, ensuring platform compliance) but does not explicitly state when not to use or compare to alternatives. Implicit usage guidance is present but lacks exclusion criteria.

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

get_trackAInspect

Retrieve full metadata for a specific track from the OnChain Music catalog, including license pricing, available download formats (MP3, WAV, AIF), artist information, BPM, key, mood, and complete license terms. Use this after search_catalog or ai_search to get full details before purchasing a license.

ParametersJSON Schema
NameRequiredDescriptionDefault
track_idYesThe track ID returned from search_catalog or ai_search results.
Behavior4/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 describes the tool as retrieving metadata and lists numerous fields, implying a read-only operation. It does not disclose authentication or rate limits, but for a simple retrieval tool this is sufficient.

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 extremely concise: two sentences, the first stating the purpose and data returned, the second providing usage guidance. Every word adds value, and it is front-loaded with the verb and object.

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?

Given the tool has only one parameter, no output schema, and is a retrieval operation, the description fully covers what the agent needs: what data is returned (metadata, licenses, formats) and how to use it in the workflow. No gaps.

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?

There is only one parameter, track_id, with 100% schema description coverage. The description adds context by specifying it is 'for a specific track' and that it is used after search results, reinforcing the schema's hint that the ID comes from previous searches.

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 retrieves full metadata for a specific track, listing many data fields, and explicitly distinguishes it from sibling tools like search_catalog and ai_search by indicating when it should be used.

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 description provides explicit usage guidance: 'Use this after search_catalog or ai_search to get full details before purchasing a license.' This clearly indicates sequential usage, though it does not explicitly mention when not to use it.

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

search_catalogAInspect

Search the OnChain Music catalog of 5,000+ independently owned, fully cleared tracks. Filter by genre, mood, tempo, BPM, key, and instrumentation. All results are available for immediate licensing with USDC on Base. Use the description parameter as your primary search field — pass style, mood, energy, and use-case words. Returns track IDs, metadata, and license pricing.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoMusical key. Examples: C Minor, G Maj, A Minor, F Maj.
pageNoPage number for pagination. Vary this for different results.
genreNoGenre filter. Examples: Rock, Hip-Hop, Electronica, Orchestral, Jazz, Country, R&B, Pop.
bpm_maxNoMaximum BPM. Use with bpm_min to filter by tempo range.
bpm_minNoMinimum BPM. Use with bpm_max to filter by tempo range.
keywordsNoAdditional keyword search across track titles, artist names, and tags.
per_pageNoResults per page. Default 20, maximum 50.
subgenreNoSubgenre filter. Examples: Indie, Deep House, Trap, Classical.
descriptionNoPRIMARY search field. Pass style, mood, energy, instrumentation, or use-case words. Each word is searched individually across multiple fields. Example: "epic orchestral trailer" or "upbeat summer pop".
instrumentalNoYes = instrumental only (no vocals). No = has vocals.
license_typeNoFilter by intended license type. social_media = $5 USDC. all_digital = $35 USDC.
Behavior4/5

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

Without annotations, the description fully explains the tool's behavior: it performs a search with filtering, returns track IDs/metadata/license pricing, and highlights that results are ready for licensing via USDC on Base. It does not mention rate limits or pagination details beyond the schema, but the core behavior is transparent.

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 concise and well-structured: it starts with the overall purpose, lists filters, emphasizes the primary parameter, and concludes with return information. Every sentence serves a purpose with no redundancy, making it highly efficient for an AI agent.

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?

Given the tool's complexity (11 optional parameters, no required ones) and no output schema, the description covers all essential aspects: what the tool does, how to use the primary parameter, filtering options, licensing context, and return values. It is comprehensive for an AI agent to understand and invoke the tool correctly.

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?

With 100% schema description coverage, the baseline is 3. The description adds significant value by highlighting the 'description' parameter as the primary search field, explaining enum values for license_type with specific pricing, and providing usage examples for genre, key, etc., going beyond what the schema alone conveys.

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 it searches a catalog of 5,000+ tracks with specific filtering capabilities (genre, mood, BPM, key, etc.) and highlights unique features like immediate licensing with USDC on Base, distinguishing it from siblings like get_track which retrieves a single track.

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 description explicitly advises using the description parameter as the primary search field with examples of style, mood, energy, and use-case words, providing clear context on how to effectively use the tool. However, it does not explicitly state when to prefer this over alternatives like ai_search.

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