Skip to main content
Glama
rollecode

lastfm-mcp

by rollecode

get_track

Read-onlyIdempotent

Retrieve detailed Last.fm track metadata—duration, listeners, playcount, album, tags, wiki—by artist and track name or MusicBrainz ID, with optional user playcount and loved status.

Instructions

Get track metadata: duration, listeners, playcount, album, tags, wiki.

Args: artist: Artist name. Required unless mbid is given. track: Track name. Required unless mbid is given. mbid: MusicBrainz id for the track. username: Include this user's playcount and loved status. autocorrect: Let Last.fm fix a misspelled artist or track name.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mbidNo
trackNo
artistNo
usernameNo
autocorrectNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, so the safety profile is covered. The description adds little beyond autocorrect behavior and lookup semantics, but it does not contradict the annotations and is adequate for a simple read-only fetch.

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 purpose is front-loaded in a single clear sentence, followed by a compact Args block with no filler. Every sentence adds useful information and the structure is easy to scan.

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?

With an output schema present, return-value details do not need to be repeated. The description covers purpose and all parameter semantics sufficiently for a read-only lookup; the main gap is explicit usage guidance relative to sibling tools, but that is not required to invoke the tool correctly.

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 must carry parameter semantics, and it does. It explains artist/track requiredness unless mbid is given, identifies mbid as a MusicBrainz ID, notes username includes playcount/loved status, and clarifies autocorrect behavior.

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 specific verb ('Get') and resource ('track metadata'), followed by a concrete list of returned fields: duration, listeners, playcount, album, tags, wiki. This clearly differentiates it from sibling track tools like get_track_correction or get_track_tags.

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 gives parameter-level guidance such as artist/track required unless mbid is given, but provides no explicit statement of when to choose this tool over related track or user lookup tools. No alternatives or exclusions are named.

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