使用说明
Steam MCP服务器
用于Steam Web API的MCP服务器-通过Claude访问玩家档案、游戏库、成就、新闻、好友列表和商店搜索。
概述
这 模型上下文协议(MCP) 服务器将Claude连接到Steam Web API,提供 20工具 跨越6个模块:
- 玩家 --配置文件、级别、虚荣URL解析、禁令、徽章
- 图书馆 --拥有的游戏,最近玩过的,愿望清单
- 游戏信息 --店铺详情、新闻、实时玩家数量、评论
- 成就 --玩家进度、全局解锁百分比、游戏模式、每场比赛统计数据
- 社交 --好友列表、群成员资格
- 发现 --Steam商店搜索、特色游戏和销售
需求
- Node.js 20+
- Steam Web API密钥 --得到一个在 steamcommunity.com/dev/apikey
安装
只需让Claude使用repo URL安装此MCP服务器:
Install the MCP server from https://github.com/matheusslg/steam-mcp
Claude将为您处理克隆、构建和配置。
快速启动(手动)
# Clone
git clone https://github.com/matheusslg/steam-mcp.git
cd steam-mcp
# Install & build
npm install
npm run build
# Add to Claude Code
claude mcp add steam -e STEAM_API_KEY=your_key_here -- node /absolute/path/to/steam-mcp/dist/index.js
或者手动将其添加到MCP配置中:
{
"mcpServers": {
"steam": {
"command": "node",
"args": ["/absolute/path/to/steam-mcp/dist/index.js"],
"env": {
"STEAM_API_KEY": "your_key_here",
"STEAM_ID": "your_steam_id_here"
}
}
}
}
配置
| 变量 | 必填 | 描述 |
|---|---|---|
STEAM_API_KEY |
是 | 您的Steam Web API密钥 |
STEAM_ID |
否 | 默认64位Steam ID(用于 steam_id 参数被省略) |
可用工具
玩家
| 工具 | 说明 |
|---|---|
get_player_summary |
个人资料信息——显示名称、头像、在线状态、当前游戏、帐户年龄 |
get_steam_level |
玩家的帐户级别 |
resolve_vanity_url |
将自定义配置文件URL转换为64位Steam ID |
get_player_bans |
检查VAC禁令、游戏禁令、社区禁令和贸易禁令状态 |
get_badges |
徽章收集,包括经验值细分、玩家等级和下一级经验值 |
图书馆
| 工具 | 说明 |
|---|---|
get_owned_games |
带游戏时间的完整游戏库--可按游戏时间、名称或最近时间排序 |
get_recently_played_games |
过去两周玩过的游戏,游戏时间细分 |
get_wishlist |
玩家的Steam愿望清单(取决于隐私设置) |
游戏信息
| 工具 | 说明 |
|---|---|
get_game_details |
存储页面数据——价格、流派、元评论、平台、发布日期 |
get_game_news |
游戏的最新新闻文章 |
get_player_count |
游戏的当前在线玩家数量 |
get_game_reviews |
带有情绪总结(分数、积极/消极)和评论文本的评论 |
成就
| 工具 | 说明 |
|---|---|
get_player_achievements |
玩家在特定游戏中的成就进度 |
get_global_achievement_percentages |
全球解锁率——每个成就有多罕见 |
get_game_schema |
统计数据和成就的完整列表,包括显示名称、描述、图标 |
get_user_stats_for_game |
玩家每场比赛的统计数据(击杀、获胜等)——每场比赛不同 |
社交
| 工具 | 说明 |
|---|---|
get_friends_list |
玩家的好友列表,包括好友日期 |
get_user_groups |
玩家所属的Steam组ID |
发现
| 工具 | 说明 |
|---|---|
search_apps |
按名称搜索Steam商店——返回应用程序ID、价格和Metascores |
get_featured_games |
特色商店类别:销售额、最畅销商品、新品发布、即将上市 |
用法示例
自然地问克劳德——它会根据需要组合工具。
游戏库分析
"How much is my Steam library worth?"
"Show me my shame list — games I own but have 0 hours played"
"What am I actually playing? Show me my last two weeks"
成就狩猎
"What are my rarest achievements? Find ones less than 5% of players have"
"Which games am I closest to 100% completion on?"
"Give me an achievement difficulty report for Elden Ring"
社交/朋友
"What are my friends playing right now?"
"Compare my game library with my friend's — what do we both own?"
"Rank my friends by Steam level"
"Who's the OG? Rank my friends by account creation date"
游戏英特尔
"Is Battlefield 2042 alive? Check the player count"
"Get me a news digest for the games I've played recently"
"Look up Celeste on Steam — price, reviews, the works"
禁令与信任
"Is this player legit? Check their VAC ban history"
"How many bans does player X have?"
愿望清单和评论
"What's on my Steam wishlist?"
"Show me the reviews for Elden Ring — what are people saying?"
"What's the review score for Cyberpunk 2077?"
店铺与销售
"What's on sale on Steam right now?"
"Show me the top sellers and new releases on Steam"
比赛数据
"Show me my Counter-Strike stats — kills, deaths, wins"
"What are all the possible achievements for Hades?"
有趣的统计数据
"Roast my Steam profile — age, level, games owned vs played, hours wasted"
"What games define my friend group? Most commonly owned games across all my friends"
"Give me my Counter-Strike addiction report"
项目结构
steam-mcp/
├── src/
│ ├── index.ts # Server entry point
│ ├── config.ts # Environment config & Steam ID resolution
│ ├── types.ts # Steam API response interfaces
│ ├── api/
│ │ ├── client.ts # HTTP client with retry logic
│ │ └── endpoints.ts # Steam API endpoint constants
│ └── tools/
│ ├── player.ts # get_player_summary, get_steam_level, resolve_vanity_url, get_player_bans, get_badges
│ ├── library.ts # get_owned_games, get_recently_played_games, get_wishlist
│ ├── game-info.ts # get_game_details, get_game_news, get_player_count, get_game_reviews
│ ├── achievements.ts # get_player_achievements, get_global_achievement_percentages, get_game_schema, get_user_stats_for_game
│ ├── social.ts # get_friends_list, get_user_groups
│ └── discovery.ts # search_apps, get_featured_games
├── package.json
├── tsconfig.json
├── LICENSE
└── README.md
发展
npm run build # Compile TypeScript
npm run dev # Watch mode
npm run start # Run the server
npm run clean # Remove dist/
许可证
麻省理工学院