Skip to main content
Glama

steam-storefront-mcp

An MCP (Model Context Protocol) server that gives AI assistants access to public Steam Storefront metadata, official genres, categories, and player review sentiment via structured Steam Storefront JSON APIs.

Search for games on Steam, retrieve official store details, and analyze Steam player review ratings — all without needing a Steam API key. For underlying API documentation and technical guidelines, see the official Steam Web API Documentation.


Tools

Tool

Parameters

Description

search_store

term (string)

Search Steam Storefront by game title query — returns matching games with AppIDs via structured JSON API.

get_store_details

appId (number)

Get official store metadata (genres, categories, short/detailed description, developers, publishers, metacritic score, platforms, release date).

get_app_reviews

appId (number)

Get Steam player review statistics (positive review percentage, total review count, rating score string e.g. "Overwhelmingly Positive").


Related MCP server: Steam MCP Server

Prerequisites

  • Node.js v18 or later

  • No API keys or Steam account required — this server uses public Steam Storefront endpoints.


Installation & Configuration

Add the following to your MCP client config file:

{
  "mcpServers": {
    "steam-storefront": {
      "command": "npx",
      "args": ["-y", "steam-storefront-mcp"]
    }
  }
}

Option B — Clone and build locally

git clone https://github.com/brandikun/steam-storefront-mcp.git
cd steam-storefront-mcp
npm install
npm run build

Then add to your MCP config:

{
  "mcpServers": {
    "steam-storefront": {
      "command": "node",
      "args": ["/absolute/path/to/steam-storefront-mcp/dist/index.js"]
    }
  }
}

MCP Client Config Locations

Client

Config File Location

Antigravity / AGY

~/.gemini/antigravity-cli/settings.json or mcp_config.json

Claude Desktop (macOS)

~/Library/Application Support/Claude/claude_desktop_config.json

Claude Desktop (Windows)

%APPDATA%\Claude\claude_desktop_config.json


Example Usage

Once connected, you can ask your AI assistant questions like:

  • "What is the Steam review consensus for Vampire Crawlers?"

  • "Search Steam for Elden Ring to get its AppID"

  • "Find out if Hades II supports full controller support, co-op, and Steam Deck"


Performance & Caching

Feature

Details

In-Memory Cache

All Steam Storefront API and store page requests are cached in memory for 1 hour (3600s).

Rate Limit Protection

Repeated lookups for the same game use 0 network requests.


License

MIT

Available Tools

3 tools
get_app_reviewsA

Get Steam player review summaries (review score rating e.g. 'Overwhelmingly Positive', total reviews, positive ratio).

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesThe numeric Steam AppID.

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It explains what the tool returns (rating, total reviews, positive ratio) and implicitly indicates a read operation. However, it does not mention any potential side effects, data freshness, or limitations, which is a minor gap given the simple read-only nature.

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, front-loaded sentence that concisely states the verb, resource, and specific output fields. Every word adds value, with no redundancy or filler.

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 tool with one parameter and no output schema, the description covers the essential context by naming the return fields and the domain (Steam reviews). It is somewhat minimal but sufficient for a simple retrieval tool, though it could benefit from a brief note about how 'summaries' are calculated or aggregated.

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 coverage is 100%, and the parameter 'appId' is already well described as 'The numeric Steam AppID'. The description adds only general context about Steam reviews, but no extra parameter semantics beyond what the schema provides. 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 clearly states what the tool does: 'Get Steam player review summaries' and lists specific output elements (review score rating, total reviews, positive ratio). This distinguishes it from sibling tools like search_store and get_store_details, which focus on different data.

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 description implies usage when review summaries are needed, but it does not explicitly mention when to use this tool vs alternatives or any exclusions. No alternative tools are referenced in the description, so guidance is only implied from the clear purpose.

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

get_store_detailsA

Get detailed Steam storefront metadata for a game (genres, categories, description, developers, metacritic, release date).

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesThe numeric Steam AppID (e.g. 730 for CS2, 1245620 for Elden Ring).

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description must carry behavioral disclosure. It states the tool retrieves read-only storefront metadata and lists output fields, which is transparent about the expected result. However, it does not mention any side effects, authentication requirements, or failure cases, leaving some behavioral gaps.

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?

One sentence, front-loaded with the action and resource, with parenthetical examples of fields. No wasted words.

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 single-parameter getter, the description adequately conveys the tool's scope and return content by listing key fields. It lacks an explicit return type but is otherwise sufficient.

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?

The input schema fully documents appId with an example, and schema coverage is 100%. The description adds no parameter-specific semantics beyond confirming it identifies a game, so the baseline of 3 applies.

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 uses the specific verb 'Get' with a resource 'detailed Steam storefront metadata' and enumerates expected fields (genres, categories, description, developers, metacritic, release date), clearly distinguishing it from siblings like search_store (discovery) and get_app_reviews (reviews).

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?

No explicit guidance about when to use this tool versus siblings is provided. The phrasing implies it is for fetching known app details, but there is no direct mention of alternatives or exclusions, so usage guidance is only implied.

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

search_storeA

Search the Steam Storefront for games matching a query string to get their Steam AppIDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
termYesThe search query (e.g. 'Elden Ring', 'Hades', 'Cyberpunk').

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description must carry the full burden. It states the core operation (search) and the output (AppIDs), but it does not disclose details such as response format, pagination, rate limits, or side effects. It is not contradictory, but lacks comprehensive behavioral context.

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, front-loaded sentence with no filler. It efficiently conveys the action, resource, and purpose.

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?

Given the tool's simplicity (one parameter, no output schema), the description states the purpose and key output (AppIDs) sufficiently for basic use. It does not specify the exact response structure, but for a search tool with low complexity, it is mostly complete.

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?

The schema provides 100% coverage with a clear description of the 'term' parameter, including examples. The tool description adds no additional semantic information beyond the schema, so the baseline of 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 uses the specific verb 'Search' and identifies the resource 'Steam Storefront', clearly stating the outcome 'to get their Steam AppIDs'. This distinguishes it from sibling tools like get_store_details and get_app_reviews, which serve different functions.

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 description implies the tool is for finding AppIDs by search query, but it does not explicitly state when to use it versus alternatives or provide exclusions. There is no direct guidance on tool selection beyond the inferred purpose.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.2
    • First observedget_app_reviews
    • First observedget_store_details
    • First observedsearch_store

TDQS

A4.1/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a distinct purpose: search for games, get metadata, and get reviews. There is no overlap between searching, fetching details, and fetching reviews, so an agent will not confuse them.

Naming Consistency5/5

All tool names follow a clear verb_noun pattern: search_store, get_store_details, get_app_reviews. The consistent use of imperative verbs and specific resource nouns makes the set predictable.

Tool Count5/5

Three tools is an appropriate, focused scope for a Steam storefront server. Each tool provides a necessary capability without unnecessary bloat.

Completeness4/5

The core workflow of searching for a game and viewing its details and reviews is fully covered. Minor gaps exist such as listing trending or new releases, but for the stated purpose of storefront metadata and reviews, the surface is complete enough.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    MCP server providing 25 tools to query Steam store data, player statistics, achievements, reviews, pricing, workshop items, leaderboards, inventory, and player profiles for AI-powered IDEs like Cursor.
    26
    63
    4
    Creative Commons Attribution Non Commercial No Derivatives 4.0 International
  • A
    license
    A
    quality
    B
    maintenance
    An MCP server that connects AI assistants to the Steam Web API and storefront, enabling game library analysis, mood-based backlog recommendations, wishlist evaluation, and storefront searches.
    8
    20
    MIT