Skip to main content
Glama

Search Apple Music Catalog

am_search_songs
Read-onlyIdempotent

Search the Apple Music catalog for songs, albums, or artists and retrieve stable catalog IDs for playlist building and exploration. Ideal for quick lookups before using resolve candidates for larger pools.

Instructions

Search the Apple Music catalog for a small exploratory lookup and return stable catalog IDs. For an LLM-proposed playlist-sized pool, use am_resolve_candidates instead. / 中文:在 Apple Music catalog 搜索歌曲/专辑/艺人,返回可用于建歌单的歌曲 ID。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
termYes搜索词,例如 '晴天 周杰伦' 或 'Bohemian Rhapsody'
limitNo返回条数,默认 5
typesNosongs / albums / artists,默认 songs
storefrontNo地区代码(如 us / jp / cn)。不给则用配置里记住的账号地区,再兜底 us

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive behavior, so the bar is lower. The description adds valuable context beyond annotations: results are stable catalog IDs suited for later playlist construction, and the search is intentionally lightweight. This is meaningful behavioral information for downstream use.

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?

The core guidance is front-loaded in one tight sentence, followed by an explicit alternative and a short Chinese translation. The translation is redundant for an English-speaking agent but not bloated; the structure is efficient overall.

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 simple read-only search tool with fully documented parameters and no output schema, the description is nearly complete: it states the purpose, the return value type (stable IDs), and the appropriate scale. The only minor gap is no explicit mention of default types or storefront fallback, but the schema covers those details.

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 every parameter is documented in the schema. The description adds some meaning by referencing songs/albums/artists (matching the types parameter) and IDs, but it does not add details about limit or storefront that the schema lacks. A baseline 3 is appropriate.

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 states a specific action (Search), a clear resource (Apple Music catalog), and a precise purpose: small exploratory lookups returning stable catalog IDs. It explicitly distinguishes itself from am_resolve_candidates, so an agent can tell them apart immediately.

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?

Directly instructs when NOT to use this tool: for LLM-proposed playlist-sized pools, use am_resolve_candidates instead. It also frames the intended scope as 'small exploratory lookup,' giving clear selection criteria without needing to inspect sibling tools.

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