Skip to main content
Glama

Server Details

Find independent music by how it sounds: similar tracks and playlists from a track link.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
tommasosavorana/diggercamp-mcp
GitHub Stars
0

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

Server CoherenceA
Disambiguation4/5

Most tools have distinct purposes: deep_match for technical DJ matching, find_similar for general sonic similarity, generate_playlist for creating full sets, inspire_me for personalized discovery, playlist_match for multi-track centroid matching, and surprise_me for broad discovery. However, inspire_me and surprise_me both relate to discovery with overlap in scope, causing minor ambiguity.

Naming Consistency3/5

Tool names use a mix of verbs and descriptive phrases (deep_match, find_similar, generate_playlist, inspire_me, playlist_match, surprise_me). The pattern is not fully consistent; some use verb_noun (generate_playlist) while others use verb_adjective (find_similar) or are more abstract (inspire_me). Not chaotic but lacks a uniform structure.

Tool Count5/5

6 tools is well-scoped for a music discovery server. Each tool covers a specific function without redundancy, covering technical matching, similarity search, playlist generation, personalized discovery, group matching, and broad exploration. The number feels balanced and appropriate.

Completeness4/5

The tools cover core music discovery workflows: single-track matching, multi-track centroid matching, playlist generation with energy flow, and personalized/random discovery. Minor gaps include lack of explicit CRUD for user playlists beyond generation and no tools for browsing or managing user history directly.

Available Tools

6 tools
deep_matchA
Read-only
Inspect

Deep Match: technical match by rhythm, timbre and key — great for building DJ sets. Requires a Pro or Studio plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint as false. The description adds value by specifying the matching criteria (rhythm, timbre, key) and the plan requirement, which are behavioral constraints not captured in annotations. No contradictions.

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?

Two sentences, no fluff. The purpose is front-loaded, and the plan requirement is clearly stated. Every word earns its place.

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?

Despite having an output schema and annotations, the description omits critical information about the single required input parameter ('url'). This is a significant gap that makes the tool description incomplete, as the agent cannot determine what to provide.

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

Parameters1/5

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

Schema coverage is 0% (no description for the 'url' parameter in the schema). The description does not explain what the 'url' parameter should contain (e.g., track URL, playlist URL). With 0% coverage, the description must compensate, but it fails to provide any parameter guidance, leaving the agent to guess.

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 function: 'technical match by rhythm, timbre and key' and specifies its use case 'great for building DJ sets.' This distinguishes it from siblings like 'find_similar' which may be more general, and 'playlist_match' which likely focuses on playlist-level matching.

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 context: 'great for building DJ sets' and the plan requirement 'Requires a Pro or Studio plan.' However, it does not explicitly contrast with siblings or state when not to use this tool.

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

find_similarA
Read-only
Inspect

Find sonically similar tracks to a song (closest by sound). Paste a Bandcamp, YouTube or SoundCloud link.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already indicate readOnlyHint: true and destructiveHint: false, so the tool is safe and non-destructive. The description adds value by specifying input format (paste a link), platforms accepted, and that similarity is based on sound, not metadata. No contradiction with annotations.

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, short sentence that front-loads the core purpose ('Find sonically similar tracks'), then adds the crucial input guidance. Every word is necessary and there is no redundancy.

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 that there is an output schema (likely describing the similar tracks returned), the description does not need to explain what the tool returns. The single parameter is fully explained, annotations cover safety, and the purpose is crystal clear. The complexity is low, so the description is complete.

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?

The schema has only one parameter (url) with 0% coverage (no description in schema). The tool description compensates by explaining that the URL must be a Bandcamp, YouTube, or SoundCloud link, giving the parameter meaning beyond the schema alone.

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 that this tool finds sonically similar tracks to a given song using a link. It specifies the supported platforms (Bandcamp, YouTube, SoundCloud), which distinguishes it from sibling tools like deep_match or generate_playlist.

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 tells the user to paste a link, which implies when to use it: when you have a specific song URL and want similar tracks. It does not explicitly mention when not to use it or compare with alternatives like deep_match, but the supported URL types give clear context.

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

generate_playlistAInspect

Generate and SAVE a playlist to the user's diggercamp account. It starts from a seed track and develops the set from there (energy and genre flow), optionally ending on a chosen track. Requires the user to be signed in to diggercamp. - url: seed track link (Bandcamp / YouTube / SoundCloud) — the playlist starts here. - n: number of tracks, 5 to 30 (default 15). - end_url: optional link of the track to END on. - vibe: optional one of warm_up, afterhours, yoga, focus, sunset (shapes the energy curve).

ParametersJSON Schema
NameRequiredDescriptionDefault
nNo
urlYes
vibeNo
end_urlNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations indicate non-read-only (readOnlyHint=false) and non-destructive (destructiveHint=false), and the description adds that the tool saves to the user's account and requires sign-in. It also explains the energy flow and vibe shaping. No contradiction with annotations.

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: three sentences plus a bulleted list. Each bullet covers one parameter. No redundant information. The main action is front-loaded, and the structure is easy to parse.

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 (generation, saving, multiple parameters, vibe), the description covers prerequisites, parameter meanings, and core behavior. Output schema exists to document return values, so omission is acceptable. However, it could mention error handling (e.g., invalid URL) for completeness.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries full burden. It explains url as a seed track link with specific platforms, n with range 5-30 and default, end_url as optional ending track, and vibe with allowed values and effect on energy curve. This adds significant meaning beyond the 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 'Generate and SAVE a playlist' from a seed track with energy and genre flow. It distinguishes itself from sibling tools like find_similar or inspire_me by emphasizing full playlist generation and saving to an account.

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 the prerequisite of being signed in but does not explicitly guide when to use this tool versus alternatives. Sibling tools like deep_match or surprise_me are not referenced, leaving the agent to infer usage context from the action of saving.

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

inspire_meA
Read-only
Inspect

Discovery: pick a starting track and show similar tracks. For signed-in users with search history the pick is personalised on their recent digs; spread controls how far to roam: familiar (right next to their digs), fresh (close relatives, default), adventurous (two hops out, same lineage but unexpected), random (the whole crate).

ParametersJSON Schema
NameRequiredDescriptionDefault
spreadNofresh

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

The description adds behavioral context beyond annotations: personalization based on search history, spread parameter semantics, and the concept of a 'starting track.' However, it fails to disclose how the starting track is determined (e.g., from current playback, user context, or an implicit source), which is critical given that the input schema lacks a track parameter. This gap reduces transparency despite the helpful spread details.

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 compact (three sentences), front-loaded with the core purpose ('Discovery: pick a starting track...'), and efficiently covers personalization and spread options without unnecessary words. Every sentence adds value, making it easy for an agent to parse quickly.

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 has only one optional parameter and an output schema (covering return values), the description adequately explains the spread parameter and personalization. However, it omits how the starting track is provided (critical for invocation) and what happens for non-signed-in users. These gaps prevent it from being fully self-contained, even with annotations present.

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

Parameters5/5

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

With 0% schema description coverage, the description must fully document the only parameter ('spread'). It does so excellently, explaining each enum value with vivid, intuitive analogies ('familiar', 'fresh', 'adventurous', 'random') and noting the default. This goes well beyond the enum names, providing clear, actionable semantics for the agent.

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: 'pick a starting track and show similar tracks.' This is a specific verb-resource pairing. However, it does not explicitly differentiate from sibling tools like 'find_similar' or 'surprise_me', which could overlap in functionality. The personalization and spread details add context, but sibling differentiation is absent.

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 detailing personalization for signed-in users and the meaning of each spread value. It offers implicit guidance on when each spread setting is appropriate (e.g., 'familiar' vs 'random'). However, there is no explicit comparison to siblings or advice on when to use this tool versus alternatives, leaving the agent to infer usage from the behavior description alone.

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

playlist_matchA
Read-only
Inspect

Find tracks that fit a SET of 2-8 tracks together (their combined sound / centroid), not similarity to a single seed. Pass 2-8 Bandcamp/YouTube/SoundCloud links.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds behavioral context: it explains the underlying logic (combined sound/centroid instead of single-seed similarity) and specifies input requirements (2-8 links from specific platforms). This enriches the agent's understanding beyond the safety profile provided by annotations.

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, ~40 words) with zero filler. The key functional distinction (set-based vs single-seed) is front-loaded in the first sentence, and the concrete input guide follows immediately. Every sentence earns its place.

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 (set similarity), 1 required parameter with 0% schema coverage, and presence of an output schema, the description covers the core semantics and constraints thoroughly. It does not explain return value format, but that is acceptable because an output schema exists. The only minor gap is no mention of error handling (e.g., invalid links).

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

Parameters5/5

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

Schema coverage is 0% (no description in schema), so the description must fully compensate. It does so excellently by explaining that the 'urls' parameter must contain 2-8 Bandcamp/YouTube/SoundCloud links, adding constraints like min/max count and supported platforms. This adds critical meaning absent from the bare schema, making the parameter actionable.

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 explicitly states the tool finds tracks fitting a combined set (centroid) of 2-8 tracks, not similarity to a single seed. It names specific supported platforms (Bandcamp, YouTube, SoundCloud) and uses specific verb 'Find' with clear resource ('tracks') and scope ('SET of 2-8 tracks'). This strongly differentiates from siblings like 'find_similar' (single seed) and 'deep_match'.

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 clear context for when to use this tool: 'Find tracks that fit a SET of 2-8 tracks together... not similarity to a single seed' and specifies the exact format needed ('Pass 2-8 Bandcamp/YouTube/SoundCloud links'). It implies not to use with a single track or with unsupported platforms, but does not explicitly name sibling alternatives nor state when-not-to-use in negative terms.

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

surprise_meB
Read-only
Inspect

Surprise: sonically related tracks with wider variety / less obvious picks. Requires a Pro or Studio plan.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

The description adds meaningful context beyond annotations: it specifies the output type (sonically related tracks) and the bias toward variety and less obvious picks. The plan requirement is noted. Annotations (readOnlyHint, openWorldHint, destructiveHint) are consistent and not contradicted. It could further describe randomness or deterministic behavior, but overall good.

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 with two sentences: the first clearly states the tool's function, and the second communicates a critical usage requirement. Every sentence is valuable and front-loaded.

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?

Despite having an output schema, the description lacks parameter documentation and usage guidance. For a single-parameter tool, the omission of 'url' semantics makes it incomplete. The complexity is low, so the description should fully cover inputs and behavior.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate. However, it does not describe what the 'url' parameter means (e.g., track or playlist URL). Without any clarification, an AI agent cannot infer how to populate this required field.

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 states 'surprise: sonically related tracks with wider variety / less obvious picks,' which clearly indicates the tool's purpose of providing related but less obvious track recommendations. It distinguishes from sibling tools like 'find_similar' or 'deep_match' by emphasizing variety and unexpectedness, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

The description mentions 'Requires a Pro or Studio plan,' which is a prerequisite, but provides no guidance on when to use this tool versus its siblings (e.g., when you want obvious picks instead). There is no explicit when-to-use or when-not-to-use context.

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!

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Cross-platform music link resolution for AI agents. Resolve any song or album across Spotify, Apple Music, Amazon, YouTube, and more. Returns affiliate-ready links with click tracking
    4
    68
    3
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Analyze listening patterns, create custom playlists, discover missing albums, validate radio streams, and provide personalized recommendations through natural language.
    79
    83
    AGPL 3.0
  • A
    license
    A
    quality
    D
    maintenance
    Enables creating and managing Spotify playlists using natural language with advanced similarity matching across 8 different algorithms. Supports finding similar tracks based on audio features, mood, energy, genre, and custom weighted parameters to build personalized playlists automatically.
    9
    1
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.