Token导航 LogoToken导航TokenDH.com
Steamstats MCP logo
搜索检索SSE官方级别未说明来源级核验

Steamstats MCP

MCP Server

MCP Server for Steam Web API Game Statistics

工具数

10

提示词数

0

GitHub Stars

0

资源数

0
数据访问PythonVS CodeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

algorhythmic

提供方

algorhythmic

最后核验

2026/5/18 03:27

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt\"

详细介绍

SteamStats MCP服务器

警告

当前实施无法运行!

概述

该项目使用Python和FastAPI实现了SteamStats MCP(模型上下文协议)服务器。服务器充当MCP客户端(如Roo)和Steam Web API之间的中介,提供对各种Steam游戏统计数据和用户信息的结构化访问。

它暴露了一个 /message 接受JSON-RPC样式的端点 tools/call 请求,验证它们,与Steam Web API交互,并返回格式化的结果或适当的错误消息。

技术栈

  • 语言: Python 3.11+
  • 框架: 快速 API
  • 数据验证: 派丹蒂克
  • Web服务器: 乌维科恩
  • HTTP客户端: 请求:
  • 包管理: 紫外线的

请求流

下图说明了典型的请求流:

sequenceDiagram
    participant Client as MCP Client
    participant Server as SteamStats MCP Server
    participant SteamAPI as Steam Web API

    Client->>Server: POST /message (tools/call, command, args)
    Server->>Server: Validate MCP message format
    alt Invalid Format
        Server-->>Client: Error Response (e.g., Invalid Request)
    else Valid Format
        Server->>Server: Parse command & arguments
        Server->>Server: Validate arguments using Pydantic
        alt Invalid Arguments
            Server-->>Client: Error Response (Validation Error)
        else Valid Arguments
            Server->>SteamAPI: Make API Request(s) (e.g., GET /ISteamUserStats/...)
            SteamAPI-->>Server: API Response (JSON data or error)
            alt Steam API Error
                Server->>Server: Log API Error
                Server-->>Client: Error Response (API Error)
            else Successful API Response
                Server->>Server: Process API data
                Server-->>Client: Success Response (result data)
            end
        end
    end

设置和安装

  1. 先决条件:

- Python 3.11或更高版本。 - 紫外线的 已安装包管理器(pip install uv).

  1. 克隆存储库(如果您还没有):
   git clone 
   cd steamstats_mcp
  1. 创建虚拟环境(推荐):
   # Using uv
   uv venv
   source .venv/bin/activate # On Linux/macOS
   # .venv\Scripts\activate # On Windows

   # Or using standard venv
   # python -m venv .venv
   # source .venv/bin/activate # On Linux/macOS
   # .venv\Scripts\activate # On Windows
  1. 安装依赖项:
   uv pip install -r requirements.txt # Assuming a requirements.txt exists or will be generated from pyproject.toml
   # Or directly from pyproject.toml if using uv for management
   # uv sync

*(注意:您可能需要生成 requirements.txtpyproject.toml 使用 uv pip freeze > requirements.txt 如果直接 uv sync 未使用)*

  1. 配置环境变量: 请参阅以下部分。

配置(环境变量)

服务器要求设置以下环境变量:

  • STEAM_API_KEY (必填): 您的Steam Web API密钥。从以下位置获取一个 Steam开发者网站。没有此密钥,服务器将无法运行。
  • LOG_LEVEL (可选): 设置日志记录级别。选项包括 DEBUG, INFO, WARNING, ERROR, CRITICAL.默认为 INFO.
  • HOST (可选): 服务器要绑定到的主机地址。默认为 0.0.0.0 (监听所有可用的网络接口)。
  • PORT (可选): 服务器监听的端口。默认为 8000.

您可以在shell环境中使用 .env 文件(需要 python-dotenv 包和代码修改以加载它),或通过部署系统的配置。

示例(Linux/macOS):

export STEAM_API_KEY="YOUR_API_KEY_HERE"
export LOG_LEVEL="DEBUG"
export PORT="8080"

示例(Windows CMD):

set STEAM_API_KEY=YOUR_API_KEY_HERE
set LOG_LEVEL=DEBUG
set PORT=8080

示例(Windows PowerShell):

$env:STEAM_API_KEY = "YOUR_API_KEY_HERE"
$env:LOG_LEVEL = "DEBUG"
$env:PORT = "8080"

运行服务器

安装依赖项并配置环境变量后,使用Uvicorn运行服务器:

uvicorn main:app --host $HOST --port $PORT --reload
  • 替换 main:app 如果您的FastAPI应用程序实例的名称不同或位于不同的文件中。
  • --reload 标志允许在开发过程中自动重新加载(删除以用于生产)。
  • Uvicorn将使用 HOSTPORT 环境变量(如果已设置)或其默认值(0.0.0.08000).

服务器现在应该正在运行并监听MCP请求 http://: /message.

可用的MCP命令

参见 STEAMSTATS_MCP_SPECIFICATION.md 有关可用命令、其参数和预期结果的详细信息。目前实施的命令包括:

  • getCurrentPlayers
  • getAppDetails
  • getGameSchema
  • getGameNews
  • getPlayerAchievements
  • getUserStatsForGame
  • getGlobalStatsForGame
  • getSupportedApiList
  • getAppList
  • getGlobalAchievementPercentages

连接本地MCP客户端(例如Roo)

要将本地MCP客户端(如Roo VS Code扩展)连接到此正在运行的服务器,您需要配置客户端的 mcp.json 文件。此文件通常位于 .roo 项目或用户设置中的目录。

配置告诉客户端如何与服务器通信。由于这是一个基于HTTP的服务器(FastAPI/Uvicorn),您将使用 sse (服务器发送事件)类型。

  1. 确保SteamStats MCP服务器正在运行: 按照上面的“运行服务器”说明进行操作。默认情况下,它运行在 http://localhost:8000.
  2. 查找或创建您的 mcp.json 文件: 这可能是在 .roo/mcp.json 在您的工作区或全局配置位置。
  3. 添加服务器配置: 向添加条目 servers 数组in mcp.json.

示例 mcp.json 条目:

{
  "servers": [
    // ... other server configurations ...
    {
      "name": "steamstats-local", // Choose a descriptive name
      "type": "sse",
      "enabled": true,
      "url": "http://localhost:8000/message", // Adjust host/port if you changed defaults
      "readTimeoutSeconds": 60,
      "writeTimeoutSeconds": 60
    }
  ]
}
  • name:此服务器连接的唯一标识符。
  • type:必须是 sse 对于基于HTTP的服务器。
  • enabled:设置为 true 以激活连接。
  • url:指向的完整URL /message 正在运行的服务器的端点。确保主机和端口与您运行服务器的方式相匹配(例如,如果您使用 export PORT=8081,相应地更改URL)。
  • readTimeoutSeconds / writeTimeoutSeconds:可选超时。

一旦配置好并且服务器正在运行,您的MCP客户端应该能够连接并使用此SteamStats服务器提供的工具。

目录标签

目录标签

数据访问PythonVS Coderesearch-and-data游戏统计本地部署SteamAPIFastAPI

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

SSE

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

SSEnone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP