Steam MCP Server
The Steam MCP Server interacts with the Steam Web API, enabling you to retrieve and manage Steam-related data for players and games.
Social & Profile
Get player summaries, friends lists, Steam level, badges, badge progress, and ban status
View user group memberships and resolve vanity URLs to 64-bit Steam IDs
Game Library
List owned games with playtime stats (with pagination/sorting), recently played games, and game details (description, price, requirements)
Check if a game is played via Family Sharing and search the Steam catalog by name
Achievements & Stats
View player achievements and in-game stats for specific games
Get global achievement percentages, aggregated global game stats, and achievement/stat schemas
Summarize achievement progress, list perfect games (100% achievements)
Game Info
Fetch latest news and patch notes, current player counts, and game server info at a given IP
Check if a specific app version is up to date
Inventory
Access player inventories for any game (requires public profile), with specialized tools for TF2, CS2/CSGO, and Dota 2
Wishlist
Retrieve a player's wishlist (with priorities and dates added) and check how many users have wishlisted a specific game
Trading (requires API key with trade permissions)
View active/historical trade offers, trade summaries, and specific trade offer details
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Steam MCP Servershow me my recently played games"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Steam MCP Server
An MCP (Model Context Protocol) server that provides tools for interacting with the Steam Web API.
Setup
1. Get a Steam API Key
Obtain an API key from Steam's developer portal.
2. Install Dependencies
npm install3. Build
npm run build4. Configure Your MCP Client
Claude Code
Add to your Claude Code settings file (~/.claude/settings.json):
{
"mcpServers": {
"steam": {
"command": "node",
"args": ["/path/to/steam-mcp-server/dist/index.js"],
"env": {
"STEAM_API_KEY": "your-api-key-here",
"STEAM_ID": "your-64-bit-steam-id"
}
}
}
}Or use npx (no build required):
{
"mcpServers": {
"steam": {
"command": "npx",
"args": ["-y", "steam-mcp-server"],
"env": {
"STEAM_API_KEY": "your-api-key-here",
"STEAM_ID": "your-64-bit-steam-id"
}
}
}
}Claude Desktop
Add to your Claude Desktop configuration:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"steam": {
"command": "npx",
"args": ["-y", "steam-mcp-server"],
"env": {
"STEAM_API_KEY": "your-api-key-here",
"STEAM_ID": "your-64-bit-steam-id"
}
}
}
}Cursor
Add to Cursor's MCP settings (.cursor/mcp.json in your project or global config):
{
"mcpServers": {
"steam": {
"command": "npx",
"args": ["-y", "steam-mcp-server"],
"env": {
"STEAM_API_KEY": "your-api-key-here",
"STEAM_ID": "your-64-bit-steam-id"
}
}
}
}Windsurf
Add to Windsurf's MCP configuration (~/.windsurf/mcp.json):
{
"mcpServers": {
"steam": {
"command": "npx",
"args": ["-y", "steam-mcp-server"],
"env": {
"STEAM_API_KEY": "your-api-key-here",
"STEAM_ID": "your-64-bit-steam-id"
}
}
}
}Related MCP server: Steam-MCP
Environment Variables
Variable | Required | Description |
| Yes | Your Steam Web API key |
| No | Default Steam ID to use when not specified in tool calls |
| No | Per-request timeout for Steam API calls in milliseconds (default |
When STEAM_ID is set, you can call tools like get_owned_games without passing a Steam ID - it will use your default profile automatically.
Reliability & Pagination
Every Steam API request is bounded by a timeout (
STEAM_HTTP_TIMEOUT_MS) and automatically retries transient failures (timeouts, HTTP 429, and 5xx) with exponential backoff. Non-retriable errors (401/403/404) fail fast with a clear, actionable message, and failures are returned withisError: true.List-returning tools accept
limitandoffsetand return a consistent envelope with the pre-slice total and ahas_moreflag, e.g.{ "total_games": 412, "returned": 50, "offset": 0, "has_more": true, "games": [...] }.get_inventoryadditionally returns anext_cursor(Steamstart_assetid) for deep paging.search_appsuses Steam's relevance-ranked storefront search (no full-catalog download), so it returns the top matches quickly and reliably.
Available Tools
Social & Profile
Tool | Description |
| Get player profile info (name, avatar, status, current game) |
| Get a player's friends list |
| Get player's Steam account level |
| Get player's badges, XP, and level progression |
| Get trading card collection progress |
| Check for VAC bans, game bans, or trade bans |
| Get Steam groups a player belongs to |
| Convert vanity URL to 64-bit Steam ID |
Game Library
Tool | Description |
| Get all games owned with playtime stats (supports pagination) |
| Get games played in last 2 weeks |
| Get detailed game info (description, price, requirements) |
| Check if playing via Steam Family Sharing |
| Search Steam catalog by game name |
Achievements & Stats
Tool | Description |
| Get player's achievements for a game |
| Get player's statistics for a game |
| Get global achievement unlock rates |
| Get global aggregated stats for a game |
| Get games where player has 100% achievements |
| Get condensed achievement progress across games |
| Get achievement/stat definitions for a game |
Game Info
Tool | Description |
| Get latest news and patch notes for a game |
| Get current number of players in a game |
| Get game servers at a specific IP |
| Check if an app version is up to date |
Inventory
Tool | Description |
| Get inventory for any game (requires public profile) |
| Get Team Fortress 2 inventory |
| Get CS2/CSGO inventory |
| Get Dota 2 inventory |
Finding Your Steam ID
Use resolve_vanity_url with your custom profile URL, or find your 64-bit Steam ID at steamid.io.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sharkusmanch/steam-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server