关于 steam-local-mcp
steam-local-mcp 是面向 Windows 的开源 Steam MCP 服务,让 Agent 操作当前用户安装的 Steam 客户端。它提供本地游戏管理和商店查询,也可选用 Steam Web API 获取账户游戏数据。
主要功能
- 01查找已安装游戏
- 02启动游戏并打开 Steam 页面
- 03查看安装、下载与更新状态
- 04统计 Steam 库存储空间
- 05搜索商店并查询游戏资料
- 06可选查询账户游戏与游玩记录
适用场景
- 01让 Agent 根据本地游戏库推荐游戏
- 02通过对话启动已安装游戏
- 03检查下载状态及库空间
- 04查询近期游玩记录或已拥有游戏
MCP 相关
这是标准 stdio MCP 服务,可由 Codex、Claude 或其他能运行本地命令的 MCP 客户端连接。账户相关工具需配置 Steam Web API 密钥和 Steam ID。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y steam-local-mcpSTEAM_API_KEY密钥Optional Steam Web API key for account-library and recently-played tools.STEAM_IDOptional 64-bit Steam ID used with STEAM_API_KEY for account-library tools.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
17收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| offset | integer | 否 |
详细介绍
Steam Local MCP
一个免费的开源 Windows Model Context Protocol 服务,可让支持 MCP 的 Agent 操作当前 Windows 用户安装的 Steam 客户端。
你可以让 Agent 查找已安装的游戏、启动游戏、打开 Steam 页面、检查本地下载/更新状态、搜索商店,或汇总 Steam 库的存储情况。当请求的客户端操作需要启动 Steam 时,Steam 会在后台静默启动。
这是一个标准的 stdio MCP 服务。它与 Agent 无关:可搭配 Codex、Claude 或任何能够运行本地命令的 MCP 客户端使用。
使用示例
User: "Pick a strategy game for me to play."
Agent: 🛠️ Calling steam_list_games()
Agent: "How about Balatro? Should I launch it?"
User: "Yes."
Agent: 🛠️ Calling steam_launch_game(app_id: 2861700)
Agent: "Launched Balatro."
功能
本地 Steam 工具 — 无需 API 密钥
steam_list_games和steam_find_game— 查看所有已配置 Steam 库中的本地已安装游戏。steam_launch_game— 按名称或 app ID 启动一个已安装的游戏。steam_get_game_install_status和steam_get_download_status— 查看清单记录的安装、更新、下载和暂停下载状态。steam_get_library_storage— 显示每个本地 Steam 库的已安装内容大小和磁盘可用空间。steam_open_library_page、steam_open_store_page和steam_open_client_page— 在 Steam 客户端中导航。steam_install_game— 请求 Steam 安装一个 app ID;Steam 会验证所有权并管理安装流程。steam_client_status— 报告检测到的 Steam 安装信息、发现来源以及 Steam 是否正在运行。
公开商店工具 — 无需 API 密钥
steam_search_store— 根据游戏名称查找商店 app ID。steam_get_game_details— 获取公开元数据、价格、类型、发行日期和 Metacritic 评分。
可选账户工具 — 需要 Steam Web API 密钥
设置 STEAM_API_KEY 和 STEAM_ID 以启用:
steam_api_status— 验证 API 凭据是否已配置、有效并已连接到 Steam Web API。steam_get_library— 获取拥有的游戏、游戏时间、上次游玩时间,并支持筛选和分页。steam_get_recently_played— 按两周游戏时间排序,获取最近游玩的游戏。
要求
- Windows 10 或更高版本
- 当前 Windows 用户已安装 Steam
- Node.js 20 或更高版本
从 npm 安装
若要通过 npm 安装已发布的软件包,请将以下等效配置添加到 MCP 客户端:
{
"mcpServers": {
"steam": {
"command": "npx",
"args": ["-y", "steam-local-mcp"]
}
}
}
配置文件的位置因 Agent 而异,但上述命令和参数保持不变。保存配置后,重启或重新连接 MCP 客户端。
若要手动确认安装,请运行:
npx -y steam-local-mcp print-config
从源代码安装
在开发、审查源代码或 npm 版本尚未发布时使用此方式:
git clone https://github.com/Jackson-Brooks/steam-local-mcp.git
cd steam-local-mcp
npm install
npm run build
然后配置 MCP 客户端,使其从克隆目录运行已编译的入口文件:
{
"mcpServers": {
"steam": {
"command": "node",
"args": ["C:\\path\\to\\steam-local-mcp\\dist\\src\\index.js"]
}
}
}
将 C:\path\to\steam-local-mcp 替换为你自己的克隆位置。请勿使用其他用户的路径。
可选的 Steam Web API 配置
通过 MCP 客户端的环境配置或操作系统环境传递凭据:
{
"mcpServers": {
"steam": {
"command": "npx",
"args": ["-y", "steam-local-mcp"],
"env": {
"STEAM_API_KEY": "your_key",
"STEAM_ID": "your_64_bit_steam_id"
}
}
}
}
服务不会自动加载 .env 文件。切勿提交凭据。Steam 个人资料和游戏详情的隐私设置可能导致账户工具无法返回数据;即使个人资料设为私密,本地客户端控制功能仍可使用。
获取 Steam API 凭据
- 在浏览器中登录 Steam,并打开 Steam Web API 密钥页面。
- 创建或复制密钥,然后在 MCP 客户端的环境配置中将其设为
STEAM_API_KEY。请妥善保密。 - 将
STEAM_ID设为你的数字 64 位 Steam ID,而不是账户名。它通常显示在个人资料 URL 中,例如https://steamcommunity.com/profiles/7656119...。 - 重启或重新连接 MCP 客户端,然后调用
steam_api_status,确认凭据已配置。
配置好密钥后,Agent 可以回答“显示我尚未玩过的 Steam 游戏”或“我最近玩过什么?”之类的请求。密钥是可选的:启动游戏、查看本地安装状态和存储空间、搜索商店以及获取商店元数据都无需密钥。
Steam 检测和本地状态
Steam Local MCP 会按以下顺序检查:
STEAM_PATH— Steam 目录或其steam.exe- 当前用户和计算机的 Valve 注册表项
- 常见的每用户目录、Program Files 目录和
C:\Steam位置 PATH中的steam.exe
使用 steam_client_status 查看选定的路径和发现来源。对于便携式安装或安装在特殊自定义驱动器上的情况,请将 STEAM_PATH 设为包含 steam.exe 的目录。
安装和下载工具会读取 Steam 的本地应用清单。needs_update: true 表示 Steam 已记录有待处理的更新。false 表示当前本地未记录待处理的更新;这不会强制执行网络更新检查。
隐私和安全
- 本地工具会读取本地 Steam 文件并打开 Steam URI;它们不需要 Steam Web API 密钥。
steam_launch_game只会启动本地已安装游戏清单中的游戏。- 执行操作时如有需要,Steam 会在后台启动,而不会先打开可见的启动器窗口。
- 不提供购买或卸载工具。
- 默认不包含公开商店的游戏说明。如明确请求,说明内容会被截断、转换为纯文本,并标记为不可信的外部内容。
- Web API 和商店响应默认缓存在
%LOCALAPPDATA%\steam-local-mcp\cache下。设置STEAM_MCP_CACHE_DIR可更改缓存目录,调用steam_refresh_cache可清除缓存。
开发
npm install
npm test
npm pack --dry-run
测试套件包括本地解析和缓存测试、模拟的商店和 API 测试、覆盖所有工具的 MCP 协议测试,以及针对打包入口的真实 stdio 握手测试。
贡献
欢迎提交问题和拉取请求。请为行为变更附上回归测试,并避免将破坏性 Steam 操作纳入范围,除非这些操作经过明确设计并有文档说明。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。