Skip to main content
Glama

steam_get_game_schema

Read-only

Get achievement and stat definitions for a Steam game using its app ID. Returns non-user-specific schema details.

Instructions

Get the achievement and stat definitions for a game (not user-specific).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv1.18.0
    • removedInput schema / $defs / AppOnlyInput
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "appid": {
      -      "description": "Steam application (game) ID.",
      -      "minimum": 1,
      -      "title": "Appid",
      -      "type": "integer"
      -    },
      -    "response_format": {
      -      "$ref": "#/$defs/ResponseFormat",
      -      "default": "markdown"
      -    }
      -  },
      -  "required": [
      -    "appid"
      -  ],
      -  "title": "AppOnlyInput",
      -  "type": "object"
      -}
    • addedInput schema / $defs / GameSchemaInput
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "appid": {
      +      "description": "Steam application (game) ID.",
      +      "minimum": 1,
      +      "type": "integer"
      +    },
      +    "limit": {
      +      "default": 100,
      +      "description": "Max achievement definitions to list (1-250); the count always covers all of them.",
      +      "maximum": 250,
      +      "minimum": 1,
      +      "type": "integer"
      +    },
      +    "response_format": {
      +      "default": "markdown",
      +      "enum": [
      +        "markdown",
      +        "json"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "appid"
      +  ],
      +  "type": "object"
      +}
    • removedInput schema / $defs / ResponseFormat
      Removed value: -{
      -  "description": "Output format for tool responses.",
      -  "enum": [
      -    "markdown",
      -    "json"
      -  ],
      -  "title": "ResponseFormat",
      -  "type": "string"
      -}
    • changedInput schema / properties / params / $ref
      Previous value: -"#/$defs/AppOnlyInput"New value: +"#/$defs/GameSchemaInput"
    • removedInput schema / title
      Removed value: -"steam_get_game_schemaArguments"
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "title": "Result",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "title": "steam_get_game_schemaOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv1.14.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, covering the safety profile. The description adds the 'not user-specific' distinction, which is useful, but it does not disclose behavior like pagination limits or output format variations. Given the annotation coverage, a 3 is appropriate—the description adds some context but not rich behavioral detail.

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, tight sentence with no fluff. It front-loads the core purpose and includes a scoping qualifier, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is incomplete for a tool with three parameters and no output schema. It does not explain how limit works, what response_format options exist, or what the returned data structure looks like. An agent would need to rely on the schema alone, which partially covers limit and response_format, but the overall tool behavior is underspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden for explaining parameters. It fails to mention appid (required), limit, or response_format. The schema itself has descriptions for limit and response_format, but the tool description does not reinforce or clarify them. With zero coverage and no compensation, this is a critical gap.

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 clearly states the verb 'Get', the resource 'achievement and stat definitions for a game', and explicitly scopes it as 'not user-specific'. This distinguishes it from user-specific siblings like steam_get_player_achievements and steam_get_user_game_stats without needing to read their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'not user-specific' gives implied context about when to use this tool (for game-wide definitions) but does not explicitly name alternatives or state when not to use it. An agent might infer that for user-specific data it should use another tool, but the description offers no direct routing guidance.

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