Token导航 LogoToken导航TokenDH.com
wow MCP logo
数据服务未说明官方级别未说明来源级核验

wow MCP

MCP Server

一个完整的魔兽世界零售版API封装工具集,支持OAuth 2.1认证,可查询游戏数据和玩家档案,支持多区域和语言。

工具数

3

提示词数

0

GitHub Stars

3

资源数

0
TypeScript数据分析API集成

安装说明

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

作者 / 组织

brunofin

提供方

brunofin

最后核验

2026/5/17 20:23

快速接入

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

详细介绍

哇,麦克

包装MCP服务器 完整的魔兽世界零售API (游戏数据+配置文件)作为197个MCP工具。支持 OAuth 2.1身份验证 (授权码+用于ChatGPT的PKCE,用于CLI工具的客户端凭据)并且完全 区域不可知 --每个工具都可以接受 regionlocale 作为可选参数,因此单个服务器实例可以查询任何区域。

screenshot

快速开始

cp .env.example .env
# Fill in BNET_CLIENT_ID and BNET_CLIENT_SECRET

npm install
npm run build
npm start          # stdio transport

发展

npm run dev        # runs via tsx (no build step)
npm run inspect    # opens MCP Inspector UI
npm run lint       # type-check only
npm test           # run auth integration tests

API覆盖范围

所有196个零售工作说明书端点都注册为单独的MCP工具,外加一个自定义计算工具:

  • 游戏数据API --161种工具,涵盖成就、拍卖、azerite精华、连接领域、契约、生物、公会徽章、传家宝、物品、期刊、媒体、改良工艺、坐骑、神话基石、神话突袭排行榜、宠物、可玩职业、可玩种族、可玩专业、力量类型、职业、PvP赛季、PvP等级、任务、领域、地区、声誉、搜索端点、咒语、天赋、技术天赋、头衔、玩具和魔兽世界代币。
  • 简介API --35个工具,用于角色档案、成就、外观、收藏、地下城、遭遇战、装备、猎人宠物、媒体、神话基石档案、职业、PvP、任务、声誉、灵魂绑定、专业化、统计、头衔和公会端点。
  • 自定义wow_character_achievementsTimeline 构建一个按时间顺序排序的已完成成就时间表(计算得出,而不是暴雪的原始终点)。

地区和地区

每个工具都接受两个可选参数:

  • region"us" (默认), "eu", "kr",或 "tw"
  • locale"en_US" (默认)或目标区域支持的任何区域设置(例如。 "es_MX", "de_DE", "fr_FR", "ko_KR")

环境中不需要区域配置。相同的Battle.net凭据适用于所有地区。

环境变量

.env.example。只需要两个:

  • BNET_CLIENT_ID --Battle.net OAuth客户端ID
  • BNET_CLIENT_SECRET --Battle.net OAuth客户端密钥

可选身份验证(MCP HTTP端点的OAuth 2.1):

  • MCP_AUTH_SECRET --启用OAuth的密码。用作登录 /authorize 页面(适用于ChatGPT/浏览器客户端),作为 client_secret 为了 client_credentials 赠款,直接作为静态 Bearer 用于简单客户端的令牌(Warp、curl等)。
  • MCP_TOKEN_TTL_SECONDS --访问令牌生存期(默认值: 3600)
  • DATABASE_URL --PostgreSQL连接字符串(例如。 postgresql://user:pass@host:5432/db).设置后,OAuth令牌、客户端和身份验证代码将保存在PostgreSQL中,以便它们在重启后仍然存在。如果不存在,则使用内存存储。这 docker-compose.yml 自动设置。

MCP_AUTH_SECRET 设置后,服务器将公开一个完整的OAuth 2.1提供程序:

  • GET /.well-known/oauth-protected-resource --RFC 9728元数据
  • GET /.well-known/oauth-authorization-server --RFC 8414元数据(包括 code_challenge_methods_supported: ["S256"])
  • POST /register --RFC 7591动态客户端注册
  • GET|POST /authorize --授权码+带密码登录的PKCE流
  • POST /token --支持 authorization_code (使用PKC)和 client_credentials 拨款

MCP_AUTH_SECRET 值也可以直接作为 Bearer 令牌(例如。 Authorization: Bearer )--对于像Warp这样不支持OAuth流的客户端很有用。

如果 MCP_AUTH_SECRET 如果未设置,服务器将在没有身份验证的情况下运行。

可选调整:

  • LOG_LEVEL --pino日志级别(默认值: info)
  • HTTP_TIMEOUT_MS --请求超时(默认值: 15000)
  • HTTP_RETRY_LIMIT --重试计数(默认值: 2)
  • CACHE_TTL_SECONDS --响应缓存TTL(默认值: 300)
  • CACHE_SIZE --最大缓存条目数(默认值: 500)

测试

npm test

集成测试使用Node的内置测试运行器(node:test)via tsx --没有额外的测试依赖关系。该套件使用测试凭据在随机端口上启动服务器,并端到端验证OAuth 2.1身份验证:

  • 供应 /.well-known/oauth-protected-resource 元数据
  • 供应 /.well-known/oauth-authorization-server S256元数据
  • 通过注册新客户端 POST /register
  • 拒绝 /mcp 没有令牌(401有 resource_metadata 提示)
  • 拒绝 client_credentials 错误的秘密(401)
  • 通过发行代币 client_credentials 正确的秘密(200)
  • 完成完整授权_代码+PKCE流程(注册→ 授权→ 令牌→ /mcp)
  • 允许 /mcp 随着 MCP_AUTH_SECRET 作为静态承载令牌(200)
  • 拒绝 /mcp 使用伪造令牌(401)

码头工人

docker compose build
docker compose up -d

秘密通过以下方式注入 .env 在主机上(未提交)。容器以非root用户身份运行,仅具有生产依赖关系。

compose堆栈包括一个用于持久OAuth令牌存储的PostgreSQL实例。PostgreSQL数据绑定挂载到 ./data/postgres/ 在主机上(映射到 /var/lib/postgresql/data 容器内部),因此它在容器重新创建、主机重新启动和Docker引擎升级过程中持续存在。 DATABASE_URL 自动预配置。

NAS/自托管注意事项: 确保 data/postgres/ 目录位于可靠的文件系统上。备份此文件夹以保留所有OAuth状态。

建筑

src/
  index.ts                          # entry point — loads env, starts server
  app.ts                            # HTTP server factory (all routes)
  auth.ts                           # OAuth 2.1 provider (metadata, registration, authorize, token, bearer validation)
  config/
    env.ts                          # zod env parsing (credentials + tuning)
    regions.ts                      # region enum, API hosts, OAuth URL
  store/
    types.ts                        # OAuthStore interface + record types
    memory.ts                       # in-memory store (default)
    postgres.ts                     # PostgreSQL store (when DATABASE_URL set)
    index.ts                        # factory — picks store based on env
  mcp/
    tools.ts                        # auto-registers all endpoints + custom tools
    schemas.ts                      # shared zod input schemas
  blizzard/
    tokenManager.ts                 # OAuth client-credentials + single-flight
    client.ts                       # got wrapper: bearer injection, cache, 401 retry
    endpoints/
      types.ts                      # EndpointDef interface, buildPath(), schema helpers
      gamedata.ts                   # 161 Game Data API endpoint definitions
      profileEndpoints.ts           # 35 Profile API endpoint definitions
    schemas/
      characterSchemas.ts           # zod response schemas
      achievementSchemas.ts
    dto/
      characterDto.ts               # normalized character DTO
      timeline.ts                   # achievement timeline builder
  util/
    http.ts                         # got defaults
    cache.ts                        # TTL cache
    logger.ts                       # pino (stderr)
test/
  auth.test.ts                      # OAuth2 auth integration tests

端点在中以声明方式定义 gamedata.tsprofileEndpoints.ts每个条目指定一个工具名称、路径模板、命名空间类型和zod输入模式。这 tools.ts 模块迭代注册表,并将每个条目自动注册为MCP工具,注入 regionlocale 参数自动。

目录标签

目录标签

TypeScript数据分析API集成游戏API本地部署OAuth认证多区域支持魔兽世界数据查询

接入字段

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

未说明

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

oauth

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明oauthremote-capable

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP