Token导航 LogoToken导航TokenDH.com
Return To Dark Tower logo
AI代理stdio官方级别未说明来源级核验

Return To Dark Tower

MCP Server

mcp-server-return-to-dark-tower

一个允许AI助手通过蓝牙控制实体桌游塔的MCP服务器,提供连接、音频、灯光、鼓轮等多种控制工具。

工具数

32

提示词数

0

GitHub Stars

0

资源数

0
AI控制TypeScriptClaudeClaude DesktopClaudeCursorWindsurfVS Code

安装说明

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

作者 / 组织

ChessMess

提供方

ChessMess

最后核验

2026/5/17 20:20

运行时

Node.js

快速接入

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

命令预览

npx -y mcp-server-return-to-dark-tower --http-only --port 3001

详细介绍

重返黑暗塔——AI MCP服务器

![License: MIT](https://opensource.org/licenses/MIT) ](https://nodejs.org/) ](https://www.npmjs.com/package/mcp-server-return-to-dark-tower)

MCP服务器,让Claude、ChatGPT和Gemini等AI助手控制物理 返回黑暗塔 通过蓝牙连接棋盘游戏塔。连接、校准、播放声音、设置灯光动画、旋转鼓、打破封条和运行戏剧性的游戏序列——所有这些都是通过自然语言完成的。

特性

  • 31个MCP工具 跨越6个领域——连接、音频、灯光、鼓、印章、状态和字形
  • 15塔州资源 --连接状态、电池、鼓位置、字形、印章、音频库、灯光效果
  • 8游戏知识资源 --规则、英雄、物品、任务、对手、建筑、传说、术语表
  • 8个提示模板 --戏剧性的入口、胜利/失败的序列、每月的过渡、地牢运行、战斗开始、游戏大师设置、声音浏览器
  • 双重运输 --stdio用于桌面AI工具,Streamable HTTP用于web应用程序
  • 零自定义BLE代码 --基于UltimateParkTower适配器模式构建

AI智能体

此服务器和 ultimatedarktower 图书馆: 👉 返回黑暗塔特工

  • 返回黑暗塔特工 --Claude.ai、ChatGPT和其他web ai工具的系统提示;知道所有31个工具、15个资源和8个提示
  • 终极黑暗塔特工 --VS Code/GitHub Copilot编码代理,用于构建应用程序 ultimatedarktower npm库

支持VS Code(GitHub Copilot)、Claude.ai、ChatGPT和20多种工具 AGENTS.md标准.

______________________________________________________________________

📚 目录

- ⚡ 快速开始 - 🌐 用于Web AI聊天应用程序(Claude.AI、ChatGPT等) - 🖥️ 用于桌面AI工具(克劳德桌面、光标、VS代码等) - 什么是MCP? - 入门指南 - 先决条件 - 安装 - 🖥️ 使用您的AI工具进行设置 - 克劳德桌面版 - 🎯 光标 - - 🌊 帆板运动 - ⚡ 泽德 - 🔎 困惑(macOS应用程序) - 🐋 深度求索 - 总结 - 🌐 基于网络的人工智能聊天应用 - 启动HTTP服务器 - Claude.ai(网络版) - ChatGPT/OpenAI - 自定义Web应用程序 - 可用工具 - 连接(8个工具) - 音频(3个工具) - 灯(5个工具) - 鼓(4个工具) - 密封件(5个工具) - 状态和字形(7个工具) - 可用资源 - 塔州资源 - 游戏知识资源 - 字形图标资源 - 可用提示 - 建筑 - CLI选项 - 依赖项 - 发展 - 许可证 - 致谢

______________________________________________________________________

⚡ 快速开始

需要 .快跑 node --version 检查。

🌐 用于Web AI聊天应用程序(Claude.AI、ChatGPT等)

步骤1——打开终端启动服务器:

npx -y mcp-server-return-to-dark-tower --http-only --port 3001

npx 第一次运行时从npm获取包(之后缓存)并启动服务器。 保持此终端打开 --只要窗口打开,服务器就会运行。

步骤2——将您的网络AI应用程序连接到服务器。

在AI应用程序的设置中,添加一个指向以下位置的新MCP连接:

http://localhost:3001/mcp

基于网络的人工智能聊天应用 有关Claude.ai和ChatGPT的分步说明。

第三步——问它类似的问题:

_“连接到塔,校准它,然后打开所有北门灯。”_

______________________________________________________________________

🖥️ 用于桌面AI工具(克劳德桌面、光标、VS代码等)

步骤1——将此添加到AI工具的配置文件中 (在中查找工具的确切文件路径 使用您的AI工具进行设置):

{
  "mcpServers": {
    "return-to-dark-tower": {
      "command": "npx",
      "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]
    }
  }
}

第二步——重启你的人工智能工具。

当它启动时,它会运行 npx 上面的命令-- npx 从npm获取包(仅第一次运行,之后缓存),并将服务器作为后台进程启动。不需要单独的终端。

第三步——问它类似的问题:

_“连接到塔,校准它,然后打开所有北门灯。”_

______________________________________________________________________

什么是MCP?

MCP(模型上下文协议) 是一个开放标准,允许人工智能助手使用工具并从外部系统访问数据,类似于浏览器加载插件的方式。人工智能不只是知道你的塔,它可以 _控制_ 它

此服务器实现MCP标准。一旦配置完成,你的AI助手将获得31个可以按名称调用的工具——比如 tower_play_sound, tower_break_seal,或 tower_rotate_drum --它可以将它们连接在一起,根据命令运行完整的戏剧性游戏序列。

两种连接方式:

交通最适合它是如何工作的
标准桌面AI应用程序(Claude Desktop、Cursor、VS Code等)AI应用程序将此服务器作为后台进程启动,并通过stdin/stdout进行通信
超文本传输协议基于Web的AI应用程序(Claude.AI、ChatGPT Web)您手动启动服务器;AI应用程序通过HTTP连接到它

______________________________________________________________________

入门指南

先决条件

在开始之前,请确保您已经:

  1. Node.js 18或更新版本 --下载自 。要检查您的版本,请运行 node --version 在终端中。
  2. 蓝牙低功耗(BLE)硬件 --内置于2011年以后生产的大多数Mac和大多数现代Windows PC中。
  3. 物理返回黑暗塔,尽管您可以在没有塔的情况下使用服务器中的资源。

平台特定设置:

平台你需要做什么
macOS没什么特别的。首次使用后,授予蓝牙权限:系统设置→ 隐私和安全→ 蓝牙→ 允许终端(或您的AI应用程序)。
Linux先安装BlueZ: sudo apt install bluetooth bluez libbluetooth-dev
视窗需要Windows 10或更新版本的蓝牙。无需额外设置。

安装

最简单的方法是使用 npx,它直接从npm运行包,无需任何安装步骤:

# Test that it works — this starts the server in stdio mode
npx -y mcp-server-return-to-dark-tower --stdio-only
是什么 npx? 这是一个与Node.js捆绑在一起的工具。它从下载并运行一个包 按需安装,因此您不必在全球范围内安装任何东西。

如果您更愿意全局安装它(以便在第一次运行后更快地启动):

npm install -g mcp-server-return-to-dark-tower

在下面选择你的AI工具,以粘贴准确的配置 需要自己运行服务器——你的AI工具将使用stdio为你启动它。

Prefer to build from source?

git clone https://github.com/your-org/mcp-server-return-to-dark-tower.git
cd mcp-server-return-to-dark-tower
npm install
npm run build

然后在下面的所有配置片段中,替换:

"command": "npx",
"args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]

与:

"command": "node",
"args": ["/absolute/path/to/dist/index.js", "--stdio-only"]

______________________________________________________________________

🖥️ 使用您的AI工具进行设置

每个部分都是独立的——直接跳到您使用的工具。

所有桌面AI工具都使用 stdio传输.配置告诉AI应用程序如何启动此服务器;该应用程序处理其余部分。您只需编辑一个JSON(或YAML)配置文件,保存它,然后重新启动您的AI应用程序。

如果配置文件还不存在,按照所示路径将其创建为新的空文件。下面显示的所有配置都是完整有效的——如果你刚开始,你可以按原样粘贴它们。 如果文件已存在,添加 "return-to-dark-tower" 现有内部的块 "mcpServers" (或同等)物体。不要替换整个文件。

______________________________________________________________________

克劳德桌面版

Claude Desktop在启动时读取其配置文件。保存更改后,您必须 完全退出并重新打开 应用程序(Mac上的⌘Q,而不仅仅是关闭窗口)。

配置文件位置:

操作系统路径
macOS~/Library/Application Support/Claude/claude_desktop_config.json
窗户%APPDATA%\Claude\claude_desktop_config.json
提示(macOS): 在终端中快速打开文件: open -e ~/Library/Application\ Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "return-to-dark-tower": {
      "command": "npx",
      "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]
    }
  }
}

重新启动Claude后,您应该看到一个锤子图标(🔨) 在聊天输入区域中,指示MCP工具可用。

Windows注意事项: 如果 npx 不起作用,请尝试更换 "command": "npx""command": "node" 并将完整路径添加到 node_modules/.bin/mcp-server-dark-tower.js 作为第一个arg,或首先全局安装。

______________________________________________________________________

🎯 光标

Cursor可以从项目特定文件或全局文件加载MCP配置。

配置文件位置:

范围路径
仅此项目.cursor/mcp.json (在项目根目录中)
所有项目~/.cursor/mcp.json (在您的主目录中)
{
  "mcpServers": {
    "return-to-dark-tower": {
      "command": "npx",
      "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]
    }
  }
}

游标会自动拾取更改,无需重新启动。

重要提示: MCP工具仅在您处于以下状态时显示 代理模式。在光标聊天面板中,查找模式选择器,并在要求AI使用塔之前从“正常”切换到“代理”。

______________________________________________________________________

🐙 VS代码(GitHub副本)

VS Code支持两个配置位置。这 .vscode/mcp.json 文件可以提交到您的仓库中,这样您的整个团队就可以共享相同的MCP设置。

要求: VS代码1.99或更高版本。通过帮助更新→ 检查更新。

选项A——工作区配置 (推荐,可与您的团队共享):

创建或编辑 .vscode/mcp.json 在项目根目录中:

{
  "servers": {
    "return-to-dark-tower": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]
    }
  }
}

选项B——用户设置 (适用于您的所有项目):

打开 settings.json (Cmd/Ctrl+Shift+P→ “打开用户设置JSON”)并添加:

{
  "mcp": {
    "servers": {
      "return-to-dark-tower": {
        "type": "stdio",
        "command": "npx",
        "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]
      }
    }
  }
}
重要提示: 将副驾驶聊天面板切换到 代理模式 (在聊天面板中查找模式下拉菜单)。MCP工具在询问或编辑模式下不可用。

______________________________________________________________________

🌊 帆板运动

Windsurf为所有MCP服务器使用一个全局配置文件。

配置文件位置:

操作系统路径
macOS/Linux~/.codeium/windsurf/mcp_config.json
窗户%USERPROFILE%\.codeium\windsurf\mcp_config.json

您也可以从Windsurf中打开它:单击 MCP图标 在Cascade面板的右上角→ 配置。

{
  "mcpServers": {
    "return-to-dark-tower": {
      "command": "npx",
      "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"]
    }
  }
}

保存后重新启动Windsurf。塔架工具将出现在 级联 代理人小组。

______________________________________________________________________

⚡ 泽德

Zed的MCP服务器在其全局设置文件中进行了配置。

配置文件位置:

操作系统路径
macOS/Linux~/.config/zed/settings.json
窗户%APPDATA%\Zed\settings.json

添加 context_servers 块(与文件中的任何现有设置一起):

{
  "context_servers": {
    "return-to-dark-tower": {
      "source": "custom",
      "command": "npx",
      "args": ["-y", "mcp-server-return-to-dark-tower", "--stdio-only"],
      "env": {}
    }
  }
}

保存后重新启动Zed。打开 代理面板 并在服务器名称旁边寻找一个绿点——这意味着它已成功连接。

______________________________________________________________________

🔎 困惑(macOS应用程序)

Perplexity的原生MCP支持可在 Mac应用程序 (从App Store下载)。web界面不支持MCP。

要求:

  • 仅限macOS
  • 付费困惑计划(专业版或更高版本)
  • 免费套餐不包括MCP

设置:

  1. 安装 困惑Mac应用程序 如果你还没有从App Store下载
  2. 打开应用程序并转到 账户设置连接器
  3. 点击 “安装帮助程序” 并安装 困惑XPC 助手应用程序在收到提示时——这是macOS应用商店沙盒规则要求的一次性步骤
  4. 点击 “添加连接器”简单“添加MCP连接器”
  5. 填写:

- 服务器名称: return-to-dark-tower (或任何你喜欢的东西) - 命令: npx - 论据: -y mcp-server-return-to-dark-tower --stdio-only

  1. 点击 保存 并等待状态指示器显示 跑步
  2. 在困惑聊天中,单击 来源 并启用 return-to-dark-tower 连接器

没有可编辑的配置文件——一切都是通过Perplexity的UI完成的。

注: 远程MCP支持(用于web界面)在Perplexity的路线图上,但尚未提供。

______________________________________________________________________

🐋 深度求索

DeepSeek的网络聊天(chat.deepseek.com)API目前不支持MCP-没有配置文件或UI可以将MCP服务器直接连接到DeepSeek。

如果您使用DeepSeek自己的web或API接口,MCP此时不可用。检查 DeepSeek的文档 以获取更新。

______________________________________________________________________

总结

工具配置文件根密钥是否需要代理模式?
克劳德桌面claude_desktop_config.jsonmcpServers否(始终打开)
光标.cursor/mcp.jsonmcpServers
VS代码(副本).vscode/mcp.jsonservers
风帆冲浪mcp_config.jsonmcpServers否(仅Cascade)
Zedsettings.jsoncontext_servers没有
困惑应用程序UI(无文件)--仅限macOS+付费计划
DeepSeek----本机不支持

______________________________________________________________________

🌐 基于网络的人工智能聊天应用

基于网络的人工智能工具无法像桌面应用程序那样在您的机器上启动流程。相反,您自己启动HTTP服务器,并将web应用程序指向它。

启动HTTP服务器

打开终端并运行:

npx mcp-server-return-to-dark-tower --http-only --port 3001

保持此终端窗口打开 当你使用你的网络人工智能工具时。服务器公开:

  • http://localhost:3001/mcp --主MCP端点
  • http://localhost:3001/health --退货 {"status":"ok"} 如果它正在运行

要验证它是否已打开,请打开 http://localhost:3001/health 在您的浏览器中。你应该看看 {"status":"ok"}.

是什么 localhost? 意思是“这台电脑”。服务器正在您的计算机上运行,只能从您自己的浏览器访问,默认情况下不会暴露在互联网上。

______________________________________________________________________

Claude.ai(网络版)

远程MCP连接可在 Pro、Max、团队和企业 计划(不是免费套餐)。

  1. 首选 claude.ai 并打开 设置集成
  2. 点击 添加集成 (或 添加MCP服务器)
  3. 输入URL: http://localhost:3001/mcp
  4. 保存。塔工具将出现在您的下一次对话中。
请注意: Claude.ai从您的浏览器连接到 localhost,只要您的浏览器和服务器在同一台机器上,它就可以工作。如果你想在其他设备(如手机)上使用它,你需要公开服务器——见下面的注释。

Accessing from another device or sharing with others

使用隧道工具,如 吸烟 为本地服务器创建公共URL:

# In a second terminal (while the server is running)
ngrok http 3001

ngrok将打印一个公共URL,如下所示 https://abc123.ngrok.io.使用该URL而不是 http://localhost:3001 在您的AI应用程序的设置中。

⚠️ 任何拥有该URL的人都可以向您的塔发送命令。使用ngrok的身份验证功能或保持会话简短。

______________________________________________________________________

ChatGPT/OpenAI

ChatGPT在2025年底增加了MCP支持,可通过 开发者模式 (需要ChatGPT Plus或更高版本)。

  1. 在ChatGPT中,打开 设置开发者模式 (如果没有启用它)
  2. 首选 连接器添加连接器
  3. 选择 流式HTTP 作为运输类型
  4. 输入URL: http://localhost:3001/mcp
  5. 保存并开始新的对话。将提供塔架工具。
注: OpenAI的MCP UI正在快速发展。如果“连接器”已重命名为“应用程序”或类似名称,请在那里查找MCP集成选项。检查 OpenAI的帮助文档 了解最新进展。

______________________________________________________________________

自定义Web应用程序

构建自己的网络应用程序来控制塔楼?直接使用HTTP端点。

启动服务器 两个传输同时运行:

npx mcp-server-return-to-dark-tower
# stdio on stdin/stdout  +  HTTP on http://localhost:3001/mcp

使用fetch发送命令:

// Generate a session ID once per user session
const sessionId = crypto.randomUUID();

const response = await fetch("http://localhost:3001/mcp", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "mcp-session-id": sessionId, // keeps this session's context consistent
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "tools/call",
    params: {
      name: "tower_play_sound_by_name",
      arguments: { name: "Ashstrider" },
    },
  }),
});

const result = await response.json();
console.log(result);

订阅流媒体事件(SSE):

const eventSource = new EventSource("http://localhost:3001/mcp");
eventSource.onmessage = (event) => {
  const data = JSON.parse(event.data);
  console.log("Tower event:", data);
};
CORS: 如果您的web应用程序在不同的端口上运行(例如。, localhost:5173),浏览器将阻止以下请求 localhost:3001 由于CORS。将您的开发服务器配置为代理 /mcp 请求或向MCP服务器添加CORS标头。看 建筑 有关HTTP和stdio如何共享单塔连接的详细信息,请参阅第节。

______________________________________________________________________

可用工具

连接(8个工具)

工具说明
tower_connect通过BLE连接到塔
tower_disconnect与塔架断开连接
tower_calibrate校准滚筒位置
tower_status获取连接状态、校准状态、电池
tower_device_info获取制造商、型号、固件信息
tower_is_responsive主动连接检查
tower_cleanup清理资源
tower_set_monitoring配置连接监控

音频(3个工具)

工具说明
tower_play_sound按索引播放声音(1-113)
tower_play_sound_by_name按名称播放声音(例如“Ashstroder”)
tower_list_sounds列出可用声音,可选择按类别过滤

灯(5个工具)

工具说明
tower_set_lights设置门道、窗台和基础灯
tower_set_led按层和索引设置单个LED
tower_light_sequence按ID运行命名灯光序列
tower_light_sequence_by_name按名称运行一个轻量级序列(例如“胜利”)
tower_lights_off关闭所有灯

鼓(4个工具)

工具说明
tower_rotate将所有滚筒旋转到特定位置
tower_rotate_drum将单个滚筒旋转到某个位置
tower_random_rotate随机旋转滚筒
tower_get_drum_positions获取当前滚筒位置

密封件(5个工具)

工具说明
tower_break_seal在特定侧面和水平面打破密封
tower_is_seal_broken检查特定密封件是否损坏
tower_get_broken_seals清除所有损坏的密封件
tower_reset_seals重置所有密封件
tower_random_seal随机获得一个完整的密封

状态和字形(7个工具)

工具说明
tower_get_state获取当前塔状态
tower_send_state发送塔状态更新
tower_get_glyphs获取所有字形位置
tower_get_glyph获取特定字形的位置
tower_glyphs_facing使字形朝向某个方向
tower_skull_count获取颅骨脱落计数
tower_reset_skull_count重置颅骨掉落计数

______________________________________________________________________

可用资源

资源是人工智能可以提取的只读数据(例如,在长序列之前检查电池电量)。

塔州资源

资源URI描述
塔架连接tower://connection连接状态、校准、忙碌状态
设备信息tower://device-info制造商、型号、固件版本
蓄电池tower://battery毫伏、百分比、先前值
滚筒位置tower://drums所有3个滚筒位置
字形位置tower://glyphs所有5个字形位置和方向
印章状态tower://seals密封件破裂/未破损
塔州tower://state完整的塔状态快照
音频库tower://audio-library所有113种声音及其分类
灯光效果tower://light-effects6个效果+19个命名序列

游戏知识资源

资源URI描述
规则tower://game/rules设置、回合、输赢条件
对手tower://game/adversaries能力、生成机制、升级
任务tower://game/quests任务类型、条件、奖励
项目tower://game/items设备、药水、文物
英雄tower://game/heroes类别、统计数据、能力
建筑物tower://game/buildings城堡、避难所、村庄、集市
Loretower://game/lore世界传说、塔历史、风味
术语表tower://game/glossary关键术语和概念

字形图标资源

资源URI描述
清洁tower://glyphs/cleanse清理字形SVG
任务tower://glyphs/quest任务字形SVG
战斗tower://glyphs/battle战斗图形SVG
横幅tower://glyphs/banner横幅字形SVG
加强tower://glyphs/reinforce加强字形SVG
所有字形tower://glyphs/all组合SVG表

______________________________________________________________________

可用提示

提示是预先构建的指令模板,您可以按名称调用。他们将多个工具连接在一起,形成一个戏剧性的序列。

提示参数描述
dramatic_entranceadversary?连接、校准、产生声音、频闪灯、随机鼓声
victory_sequencesoundIndex?胜利之声+胜利之光序列
defeat_sequence--击败声音+击败灯光
monthly_transitionmonth?月底/月初的声音和灯光
dungeon_runtype?地牢声音+怠速灯
battle_start--战斗声+闪烁的灯光
game_master_setup--完整游戏会话设置指南
sound_browsercategory?按类别浏览音频库

______________________________________________________________________

建筑

┌─────────────────┐     ┌──────────────────┐
│  Claude Desktop │────▶│  stdio transport  │──┐
└─────────────────┘     └──────────────────┘  │    ┌───────────────────┐     ┌─────────┐
                                               ├───▶│ TowerController   │────▶│  Tower  │
┌─────────────────┐     ┌──────────────────┐  │    │ (singleton)       │ BLE │  (HW)   │
│   React App     │────▶│  HTTP transport   │──┘    └───────────────────┘     └─────────┘
└─────────────────┘     └──────────────────┘

TowerController 单例包装 UltimateDarkTower (v2.0.0),并由两个传输共享。图书馆的 BluetoothAdapterFactory 自动检测Node.js环境并使用 @stoprocent/noble 用于BLE通信。

______________________________________________________________________

CLI选项

标志描述
--stdio-only仅运行stdio传输(适用于桌面AI工具)
--http-only仅运行HTTP传输(适用于web应用程序)
--port HTTP端口(默认值:3001)

______________________________________________________________________

依赖项

包装用途
@modelcontextprotocol/sdkMCP服务器和传输
ultimatedarktower塔BLE控制库
@stoprocent/noble Node.js BLE后端
zod架构验证
expressHTTP传输服务器

______________________________________________________________________

发展

npm run dev      # Watch mode with tsx
npm run build    # Compile TypeScript
npm run lint     # Run ESLint + Prettier check
npm test         # Run tests

______________________________________________________________________

许可证

麻省理工学院——见 许可证.

______________________________________________________________________

致谢

目录标签

目录标签

AI控制TypeScriptClaude本地部署蓝牙连接桌游辅助MCP协议物理交互

支持客户端

Claude DesktopClaudeCursorWindsurfVS Code

接入字段

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

stdio

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

session

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

mcp-server-return-to-dark-tower

工具数量(toolCount,工具数)

32

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiosession部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP