steam-mcp
Steam market intelligence for AI agents — an MCP server that gives your coding assistant live Steam data: app search, player-count trends, store details, review mining, and news digests.
Built for game developers and community managers who want Steam answers inside their IDE conversation instead of tab-switching to store pages.
Why
Steam's public APIs are fragmented (store search, appdetails, user stats) and none of them keep player-count history — the single most useful signal for launch planning. steam-mcp stitches the surfaces together behind one tool set and pairs them with a companion backend that snapshots player counts every 30 minutes, so your agent can answer "how is the game actually doing" with real numbers.
Install
# from npm
npm install -g @playtide-studios/steam-mcp
steam-mcp
or from source:
git clone https://github.com/Playtide-studios/steam-mcp.git
cd steam-mcp
npm install
npm start
Requires Node 26+. Zero runtime dependencies — the server talks plain HTTP/JSON-RPC over stdio.
Tools
| Tool | What it does |
|---|---|
steam_search_apps |
Resolve a game name to appids via Steam store search |
steam_get_app_overview |
One-call health check: players, reviews, price, release, genres, latest news |
steam_get_store_details |
Full store listing: pricing per region, platforms, DLC count, metacritic |
steam_get_app_reviews |
Review mining with recency/sentiment/keyword filters + representative quotes |
steam_get_game_news |
News and patch-note digests, summary or full text |
steam_get_player_trend |
Player-count history with min/max/avg, week-over-week change, and a plain-language insight line |
steam_get_market_pulse |
Curated market digest for game developers: Steam trends, live-ops patterns, competitor notes |
Client configuration
stdio (Claude Desktop / Cursor / any MCP client):
{
"mcpServers": {
"steam": {
"command": "node",
"args": ["/path/to/steam-mcp/src/index.ts"]
}
}
}
Streamable HTTP:
npm run start:http # serves MCP on http://localhost:8788/mcp
Ready-to-edit client configs live in examples/.
Configuration
| Variable | Default | Purpose |
|---|---|---|
STEAM_MCP_BACKEND_URL |
https://api.playtide.dev |
Companion backend base URL — hosted beta by default; override to self-host. Must be https:// unless loopback |
STEAM_MCP_BACKEND_KEY |
— | Backend API key (optional; the hosted beta is open) |
STEAM_MCP_REMOTE_MANIFEST |
0 |
Opt in to fetching tool descriptions from the backend each boot |
STEAM_MCP_TIMEOUT_MS |
10000 |
Per-request timeout to Steam or the backend |
Everything else is zero-config: tool schemas are pinned to the packaged manifest (see src/fallback-manifest.json).
Data provenance & safety
- Store search, details, reviews, and news come directly from Steam's public endpoints at request time — nothing is scraped ahead or cached on disk.
- Trends and the market digest come from the companion backend.
- All free-text fetched from the internet (reviews, news bodies) is treated as data, never instructions — tool descriptions tell the model the same.
- The server sends no telemetry anywhere. The only outbound calls are the Steam endpoints you asked about and the backend you configured.
The companion backend
Trend and pulse data come from the steam-mcp companion backend — a small Express + Postgres service that snapshots player counts for every tracked app every 30 minutes.
-
Hosted backend (open beta — the default): installs use
https://api.playtide.devout of the box; no key needed during beta. To pin it explicitly:STEAM_MCP_BACKEND_URL=https://api.playtide.dev npm start
-
Self-hosted: the backend is a standard docker-compose Postgres + API stack; set
STEAM_MCP_BACKEND_URLto your instance. See docs/TROUBLESHOOTING.md for connectivity help.
Troubleshooting
Backend unreachable, HTTPS requirement errors, deprecated_client on trend calls, rate limits — see docs/TROUBLESHOOTING.md.
Contributing
Issues and PRs are welcome — see CONTRIBUTING.md. Bug reports that include the failing tool call JSON get fixed first.
License
MIT © Playtide Studios. Steam is a trademark of Valve Corporation; this project is not affiliated with Valve.
Metadata
Release files for playtide-steam-mcp 0.2.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| playtide_steam_mcp-0.2.6.tar.gz | 24.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| playtide_steam_mcp-0.2.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 55.1 kB
Release files / playtide_steam_mcp-0.2.6.tar.gz
| Download URL | playtide_steam_mcp-0.2.6.tar.gz |
|---|---|
| Size | 24.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1fe9c9f387925060a1a2ff77638e2b02f6601adbab20b2b34af5610e66ee6014
|
|
BLAKE2b-256 checksum How to use checksums |
d147b2ecf431d8fa38f7980385c298681c0d81792851eac830c2480d3e86e124
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / playtide_steam_mcp-0.2.6-py3-none-any.whl
| Download URL | playtide_steam_mcp-0.2.6-py3-none-any.whl |
|---|---|
| Size | 30.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0a75b7ee05c6279d4e03271187c9a26d2b358531d218c3706e859572b00aa88f
|
|
BLAKE2b-256 checksum How to use checksums |
7e72fb112a584757d9b9cc197b9f62efcbad4ce9cf49a8f155c100f368a08c3c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|