Skip to main content
Glama

list_player_scores

Read-onlyIdempotent

Retrieve a player's BeatLeader scores filtered by accuracy, date, modifiers, stars, difficulty, mode, and song. Use pagination and sorting to review performance or choose practice maps.

Instructions

List current scores with pagination, percentage accuracy bounds, modifiers, dates, stars, difficulty, mode and song filters. Accuracy is 0–100; dates use ISO timestamps with timezones

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoISO end time with an explicit timezone
fromNoISO start time with an explicit timezone
modeNo
pageNo
sortNodate
countNo
orderNodesc
playerNoPlayer ID, alias, or https://beatleader.com/u/ID; stdio can use BEATLEADER_PLAYER_ID when omitted
searchNo
contextNogeneral
starsToNo
modifiersNoBeatLeader modifier filter, e.g. FS or FS,SF
starsFromNo
difficultyNo
rankedOnlyNo
accToPercentNo
accFromPercentNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well established. The description adds minor behavioral context by specifying that accuracy uses 0–100 and dates are ISO timestamps with timezones, but it does not disclose pagination behavior, default ordering, or other runtime traits. With annotations covering the main safety aspects, the added context is useful but not extensive.

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, efficient sentence that front-loads the primary action and resource, then lists filter categories compactly. Every clause carries information, and the added accuracy/date conventions are valuable without padding. No extraneous words or repetition.

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 17 optional parameters, no output schema, and rich annotations, the description provides a reasonable high-level map of the tool's capabilities but leaves gaps. It does not explain the meaning of 'song filters' (presumably the 'search' parameter), does not mention the default sort/order/page/count behavior, and does not clarify the 'context' parameter's role. The read-only and idempotent hints reduce the need for safety disclaimers, but the operational details remain underspecified.

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 only 24%, so the description must compensate for many undocumented parameters. It does group parameters conceptually (e.g., 'percentage accuracy bounds' for accFromPercent/accToPercent, 'dates' for from/to, 'stars' for starsFrom/starsTo), which adds meaning beyond the raw schema. However, it omits or vaguely references several parameters such as 'mode', 'context', 'rankedOnly', 'sort', and 'order', leaving the agent to infer their semantics from names alone.

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 uses the specific verb 'List' with the resource 'current scores' and enumerates several filter dimensions, so the core action is clear. It distinguishes itself from most siblings (get_player, search_maps, analyze_player) by focusing on score listing, but does not explicitly differentiate from get_player_history or get_leaderboard, leaving some ambiguity about whether it returns a player's personal scores or general leaderboard entries.

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 is purely declarative and gives no explicit guidance about when to use this tool versus alternatives. It does not mention get_player_history for historical trends, get_leaderboard for map-specific leaderboards, or any exclusion criteria. An agent must infer the appropriate context from the name and schema rather than from the description.

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