
SteamStats MCP Server

2025.04.04
0
Python游戏数据服务API 中间件娱乐功能
SteamStats MCP Server 是一个基于 Python 和 FastAPI 的中间件服务,旨在为 MCP 客户端(如 Roo)提供对 Steam Web API 的结构化访问。该服务器通过 `/message` 端点接收 JSON-RPC 风格的请求,验证后与 Steam Web API 交互,并返回格式化结果或错误信息。
### 核心功能
1. **API 中间件**:作为 Steam Web API 的代理,提供结构化的数据访问。
2. **命令支持**:支持多种 Steam 相关命令,如获取当前玩家数、游戏详情、成就统计等。
3. **数据验证**:使用 Pydantic 对请求参数进行严格验证。
4. **错误处理**:对无效请求或 API 错误返回明确的错误信息。
### 适用场景
1. **游戏数据分析**:开发者或数据分析师需要获取 Steam 游戏统计数据。
2. **玩家行为研究**:研究玩家在游戏中的行为和成就获取情况。
3. **自动化工具集成**:与 MCP 客户端(如 Roo)集成,实现自动化数据查询。
View on GitHub
Overview
基本能力
产品定位
SteamStats MCP Server 是一个中间件服务,用于连接 MCP 客户端和 Steam Web API,提供结构化的游戏数据访问。
核心功能
- API 中间件:代理 Steam Web API 请求,返回格式化数据。
- 多命令支持:支持获取玩家数、游戏详情、成就统计等多种命令。
- 数据验证:使用 Pydantic 验证请求参数。
- 错误处理:对无效请求或 API 错误返回明确错误信息。
适用场景
- 游戏数据分析:获取和分析 Steam 游戏统计数据。
- 玩家行为研究:研究玩家成就和行为模式。
- 自动化工具集成:与 MCP 客户端集成,实现自动化查询。
工具列表
- getCurrentPlayers:获取当前游戏玩家数。
- getAppDetails:获取游戏详情。
- getGameSchema:获取游戏模式信息。
- getGameNews:获取游戏新闻。
- getPlayerAchievements:获取玩家成就。
- getUserStatsForGame:获取玩家游戏统计。
- getGlobalStatsForGame:获取全局游戏统计。
- getSupportedApiList:获取支持的 API 列表。
- getAppList:获取应用列表。
- getGlobalAchievementPercentages:获取全局成就百分比。
常见问题解答
- 服务器无法启动:检查
STEAM_API_KEY
是否设置正确。 - 请求返回错误:验证请求参数是否符合规范。
- 连接超时:检查网络连接和服务器配置。
使用教程
使用依赖
- Python 3.11+:确保系统已安装 Python 3.11 或更高版本。
- UV 包管理器:安装 UV 包管理器(
pip install uv
)。
安装教程
- 克隆仓库:
bash git clone <repository-url> cd steamstats_mcp
- 创建虚拟环境:
bash uv venv source .venv/bin/activate # Linux/macOS .venv\Scripts\activate # Windows
- 安装依赖:
bash uv pip install -r requirements.txt
- 配置环境变量:
bash export STEAM_API_KEY="YOUR_API_KEY_HERE" export LOG_LEVEL="DEBUG" export PORT="8080"
调试方式
- 启动服务器:
bash uvicorn main:app --host $HOST --port $PORT --reload
- 测试连接:使用 MCP 客户端(如 Roo)连接服务器,验证功能是否正常。