使用说明
项目简介
本项目是一个基于 Kotlin MCP SDK 构建的示例 MCP 服务器,旨在展示如何将 MCP 协议应用于智能家居控制场景。它模拟了一个简单的 Philips Hue 智能灯控制系统,允许用户通过支持 MCP 协议的客户端(如 Claude Desktop)以自然语言控制灯光。
主要功能点
- 模拟 Hue 智能灯资源: 服务器端管理虚拟的 Hue 智能灯资源,包括灯的开关状态和颜色。
- 提供灯光控制工具: 注册并暴露控制灯光开关和颜色的工具,允许 MCP 客户端调用这些工具来操作灯光。
- 基于 Kotlin MCP SDK: 使用官方 Kotlin SDK 构建,代码结构清晰,易于理解和扩展。
- 示例视频配套: 提供 YouTube 视频教程,帮助用户理解项目构建过程和 MCP 工作原理。
安装步骤
- 克隆仓库: 首先,将 GitHub 仓库 'https://github.com/SebastianAigner/kotlin-mcp-hue-light-sample' 克隆到本地。
git clone https://github.com/SebastianAigner/kotlin-mcp-hue-light-sample cd kotlin-mcp-hue-light-sample - 安装 JDK: 确保你的电脑上安装了 Java Development Kit (JDK)。Kotlin 需要 JDK 才能编译和运行。
- 使用 Gradle 构建: 本项目使用 Gradle 进行构建。在项目根目录下,使用 Gradle 命令构建项目。
./gradlew build - 运行服务器: 构建成功后,可以使用 Gradle 命令运行 MCP 服务器。
服务器默认会在本地启动并监听 MCP 客户端的连接。./gradlew run
服务器配置
MCP 客户端(例如 Claude Desktop)需要配置连接到此 MCP 服务器的信息。以下是一个示例 JSON 配置,你需要将其添加到 MCP 客户端的服务器配置中。
{ "serverName": "kotlin-hue-light-server", // 自定义服务器名称,用于在 MCP 客户端中标识 "command": "./gradlew", // 启动服务器的命令,这里使用 Gradle Wrapper "args": ["run"] // 启动命令的参数,这里是 Gradle 的 run 任务 }
配置说明:
- 'serverName': 服务器的名称,可以自定义,用于在 MCP 客户端中区分不同的服务器连接。
- 'command': 启动 MCP 服务器的可执行命令。由于项目使用 Gradle Wrapper,这里直接使用 './gradlew'。
- 'args': 传递给启动命令的参数。这里使用 'run' 参数来执行 Gradle 的 'run' 任务,该任务会启动 MCP 服务器。
注意: 请确保 MCP 客户端配置中的 'command' 和 'args' 与你的实际运行环境相符。如果你的 Gradle Wrapper 不在项目根目录下,或者你需要使用其他方式运行服务器,请相应地修改配置。
基本使用方法
-
启动 MCP 服务器: 按照安装步骤运行 'gradle run' 命令启动服务器。
-
配置 MCP 客户端: 在 MCP 客户端(如 Claude Desktop)中,添加上述提供的服务器配置,并确保客户端已连接到该服务器。
-
使用自然语言控制灯光: 在 MCP 客户端中,可以使用自然语言指令来控制模拟的 Hue 智能灯。例如,你可以尝试以下指令:
- "Turn on the lights" (打开灯)
- "Turn off the living room light" (关闭客厅的灯)
- "Change the light to blue" (将灯光颜色改为蓝色)
- "Set the brightness to 50%" (设置亮度为 50%)
客户端会将这些自然语言指令转换为 MCP 请求发送到服务器,服务器解析请求并执行相应的灯光控制操作。你可以在 MCP 客户端的界面中查看服务器的响应和灯光状态的变化。
信息
分类
桌面与硬件