Skip to main content
Glama

nba_hustle_player

Read-only

Get Returns the league's player hustle table: contested shots, deflections, charges drawn, screen assists and points, loose balls recovered and box-outs, one row per player. Use it when comparing player-level hustle before or alongside nba-hustle-stats (one game) and nba-hustle-team (team level); season defaults to the current one and per_mode changes the aggregation. Returns the league's player hustle table: contested shots, deflections, charges drawn, screen assists and points, loose balls recovered and box-outs, one row per player. Use it when comparing player-level hustle before or alongside nba-hustle-stats (one game) and nba-hustle-team (team level); season defaults to the current one and per_mode changes the aggregation.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "nba_hustle_player"
  }
}

Input Schema

NameRequiredDescriptionDefault
seasonNoOptional season in YYYY-YY form; defaults to the current NBA season.
per_modeNoOptional aggregation; defaults to PerGame.
league_idNoOptional league id; only 00 (NBA) is verified.
season_typeNoOptional season type; Regular Season, Playoffs, Pre Season or All Star.

Output Schema

NameRequiredDescriptionDefault
dataYesThe tool result payload (shape varies per tool; see each tool's docs resource).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and external-API nature are covered structurally. The description adds useful behavioral facts — the season defaults to the current one and per_mode controls the aggregation — but says nothing about latency, rate limits, or pagination behavior for an open-world remote call, and the content is duplicated verbatim rather than expanded.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The entire description is repeated twice word-for-word, roughly doubling length with zero added information. It also opens awkwardly with 'Get Returns' and buries the sibling routing mid-paragraph, so structure and economy are both weak.

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 values need not be described, and 100% schema coverage plus readOnly/openWorld annotations carry the rest of the burden. The description covers purpose, row grain, defaults, and sibling routing, leaving only minor gaps around external-call behavior.

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 all four parameters are already documented in the schema; baseline is 3. The description restates only the season default and that per_mode changes aggregation, which largely duplicates the schema defaults and says nothing about league_id or season_type beyond what the schema already provides.

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 and resource ('Get ... the league's player hustle table'), enumerates the metrics returned (contested shots, deflections, charges drawn, screen assists, loose balls, box-outs) and the row grain ('one row per player'). It also distinguishes itself from the two nearest siblings by naming them and their scope (nba-hustle-stats one game, nba-hustle-team team level).

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?

Explicitly says to use it 'when comparing player-level hustle' and routes the agent to the game-level and team-level alternatives. It stops short of stating when NOT to use it (e.g. single-game or team-aggregate needs are implied rather than stated as exclusions), so it is strong but not fully exhaustive.

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.