steam-storefront-mcp
# steam-storefront-mcp
An [MCP (Model Context Protocol)](https://modelcontextprotocol.io) server that gives AI assistants access to public Steam Storefront metadata, official genres, categories, and player review sentiment via structured [Steam Storefront JSON APIs](https://partner.steamgames.com/doc/webapi).
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](https://partner.steamgames.com/doc/webapi).
---
## 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"`). |
---
## Prerequisites
- [Node.js](https://nodejs.org) v18 or later
- **No API keys or Steam account required** — this server uses public Steam Storefront endpoints.
---
## Installation & Configuration
### Option A — npx (Recommended, no install required)
Add the following to your MCP client config file:
```json
{
"mcpServers": {
"steam-storefront": {
"command": "npx",
"args": ["-y", "steam-storefront-mcp"]
}
}
}
```
### Option B — Clone and build locally
```bash
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:
```json
{
"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
TDQS
Scored across 3 tools
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.
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.
Three tools is an appropriate, focused scope for a Steam storefront server. Each tool provides a necessary capability without unnecessary bloat.
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.