Skip to main content
Glama

Kindle Music

相似曲目 / Find tracks similar to a track

km_similar_by_track

以曲库里一首已有曲目为锚点,找音频听感相似的曲目(向量检索,不是关键词)。 Audio-similarity search anchored on an existing catalog track (vector search, not keywords).

何时用 / When: 用户说"再来一些像这首的",或你已经命中一首合适的曲目、想扩出一组候选时。 接力用法:对"七八分像"的曲目取相似 → 挑出更像的一首再取相似,两三轮通常就能逼近目标。

入参 / Args: id = km_search 返回的曲目 id(不是 track_identity),须是主版本。limit 默认 12,上限 50。 不认 partition(独立精选 / 环球UPM 分区);要按 BPM / 时长 / 标签收窄,拿结果在本地筛。 返回 / Returns: { searchId, total, tracks[] },曲目字段与 km_search 一致。

返回的 track_url 仅供试听/临时分析,见 audioNotice。 Returned track_url values are for audition / temporary analysis only; see audioNotice.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesTrack id as returned by km_search (field "id").
limitNoDefault 12, clamped to 50.
libraryTypeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/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 behavioral burden and mostly delivers: it discloses the retrieval mechanism (vector, not keyword), that the anchor id must be a main version, that partition filtering is unsupported, and that track_url is audition/temporary-analysis only. It omits auth/permission requirements and any rate or cost characteristics, so not a full 5.

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?

Front-loaded with purpose, then sectioned into When / Args / Returns, with every sentence carrying information (id provenance, limit bounds, partition caveat, return shape, audition caveat). The bilingual duplication roughly doubles the surface length for no added meaning, which is the main cost against a 5.

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?

For a tool with no output schema and no annotations, the description supplies the return shape ({ searchId, total, tracks[] } with km_search-consistent fields), the audition-only caveat on track_url, and the id-provenance rule, so an agent can call it correctly. The unexplained libraryType parameter is the one remaining completeness gap.

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?

At 67% schema coverage the description must add value, and it does for two of three params: id must be a km_search id (explicitly 'not track_identity') and must be a main version, and limit's default 12 / cap 50 is restated with the 'clamped' behavior. The third parameter, libraryType, is left entirely unexplained in both schema and description, which keeps this below 5.

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?

States a precise verb+resource ('find audio-similar tracks anchored on an existing catalog track') and explicitly disambiguates the mechanism ('vector search, not keywords'), which cleanly separates it from the sibling km_search. An agent can distinguish it from km_search and km_track_versions without opening a schema.

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?

Provides an explicit 'When' trigger ('user asks for more like this one', or you've hit a good track and want candidates), a concrete iterative workflow ('take similars of a ~70% match, pick a closer one, repeat 2-3 rounds'), and negative guidance ('does not honor partition; narrow by BPM/duration/tags locally'). This is genuine routing guidance, not implication.

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.

Resources