项目简介
这是一个基于 Model Context Protocol (MCP) 实现的服务器,专门用于连接支持 Buttplug 协议的 Svakom Sam Neo 设备。通过 MCP,它将设备的功能暴露给大型语言模型 (LLM) 客户端,使LLM能够与设备进行交互和控制。
主要功能点
- 通过 Buttplug 协议连接并识别 Svakom Sam Neo 设备。
- 注册一个名为 'Svakom-Sam-Neo-Piston' 的工具,该工具允许LLM控制设备的活塞运动和振动。
- 通过 MCP 的标准JSON-RPC接口与LLM客户端通信,响应工具调用请求。
- 支持Stdio(标准输入/输出)作为传输协议,方便LLM客户端与之集成。
安装步骤
- 环境准备: 确保你的系统已安装 Node.js 运行环境。
- Buttplug服务: 此服务器需要连接到一个正在运行的 Buttplug 服务器(例如 Intiface Central)。请确保 Buttplug 服务器正在运行,并且Svakom Sam Neo设备已连接并被Buttplug服务器识别。
- 克隆仓库: 从GitHub克隆该仓库到你的本地计算机。
- 安装依赖: 打开终端,进入仓库目录,运行以下命令安装项目所需的依赖:
或使用 yarn:npm installyarn install
服务器配置
要将此MCP服务器与LLM客户端集成,你需要在客户端的MCP服务器配置中添加以下信息。这些信息告诉客户端如何启动并连接到此服务器:
- 服务器名称 (server name): 用于在客户端界面中标识此服务器的名称,例如 "Svakom Samneo"。
- 命令 (command): 启动此服务器的可执行文件或脚本。对于Node.js项目,通常是 'node'。
- 参数 (args): 传递给命令的参数。对于此项目,是入口文件路径 'src/main.ts'。
请根据你的LLM客户端的配置界面,填写或粘贴相应的配置信息。通常配置会是一个 JSON 格式,例如:
{ "name": "Svakom Samneo", "command": "node", "args": ["src/main.ts"], // 可能还有其他配置项,如 id 等,请根据客户端要求填写 }
重要提示: 在启动此MCP服务器之前,请务必确保 Buttplug 服务器已启动并且能够找到你的 Svakom Sam Neo 设备。如果设备未找到,服务器将无法启动成功。
基本使用方法
- 配置客户端: 在你的支持MCP协议的LLM客户端中,按照上述“服务器配置”部分添加此MCP服务器。
- 启动连接: 客户端通常会自动或手动尝试连接并启动配置的MCP服务器。成功连接后,客户端将能发现服务器提供的工具。
- LLM调用工具: 在与LLM交互时,LLM会根据你的指令或对话上下文,识别并调用 'Svakom-Sam-Neo-Piston' 工具。LLM会根据工具的定义,自动为你构建调用参数(如活塞持续时间、步数、振动强度),并通过MCP协议发送给此服务器。
- 设备响应: 服务器接收到工具调用请求后,会解析参数并控制已连接的Svakom Sam Neo设备执行相应的活塞和振动动作。
- 结果反馈: 工具执行完成后,会将执行结果(例如操作参数确认或错误信息)通过MCP协议返回给LLM客户端,LLM可能会将结果整合到回复中。
通过这种方式,你可以让LLM通过自然语言指令来控制你的Svakom Sam Neo设备,实现更具想象力的互动体验。
信息
分类
桌面与硬件