# 向日葵 AweSun MCP Server

通过 MCP 协议将向日葵远程控制能力无缝接入 AI 助手，让 AI 能够管理设备、发起远程会话、操作远程桌面。

**⚠️ 需要安装最新版本(16.2.3.28762 +)向日葵客户端，并启用相关功能**

---

## 功能概览

- **设备管理**：添加、搜索、查看、更新设备信息，远程开关机
- **远控会话**：建立远程桌面、CMD、SSH、摄像头、端口转发等会话
- **桌面操作**：在远程桌面中鼠标点击、移动、拖拽、滚轮，键盘输入、组合键、文本粘贴
- **远程截图**：获取远程桌面实时画面，辅助 AI 决策

## 核心特点

**即开即用**
- 内置于向日葵客户端，无需额外安装服务端
- 一键启用，自动生成 MCP 配置

**双模式通信**
- **Stdio 模式**：本地进程通信，低延迟，适合本地 AI 客户端
- **HTTP 模式**：远程通信，支持跨网络调用

**完整的远控能力**
- 7个设备管理工具 + 6个远控会话工具 + 9个桌面操作工具
- 覆盖远程运维、自动化测试、设备管理等场景

**安全可靠**
- 基于向日葵成熟的远控安全体系
- 需设备验证码或已信任设备才能建立连接


## 使用场景

**远程运维自动化**
AI 助手可自动登录远程服务器，执行命令、查看日志、重启服务，并截图确认操作结果。

**批量设备管理**
通过设备搜索和筛选，AI 可批量获取设备状态，识别异常设备并发送告警。

**自动化 UI 测试**
结合截图和桌面操作工具，AI 可自动操作远程桌面完成 UI 测试流程，验证软件功能。

**远程技术支持**
AI 可协助用户定位问题，直接操作用户设备查看设置、运行诊断命令，提升支持效率。


## 快速开始

### 1. 启用 MCP 服务器

打开向日葵客户端，进入「向日葵MCP」侧边栏菜单，点击「启用MCP服务器」。

### 2. 选择服务类型

根据使用场景选择通信方式：

- **Stdio（推荐）**：本地进程通信，适用于本地运行的 AI 客户端（如 OpenCode、Claude Desktop 等）
- **Streamable HTTP**：基于 HTTP 的远程通信，适用于需要跨网络调用的场景

### 3. 配置 AI 客户端

选择完成后，复制生成的配置信息，添加到 AI 客户端的 MCP 配置中即可使用。


## 工具能力

### 设备管理

| 工具名 | 功能描述 |
|--------|----------|
| device_add | 将新设备添加到设备列表中，可设置设备名称和描述便于管理 |
| device_search | 根据关键词模糊搜索设备列表中的设备，支持按设备名称检索 |
| device_info | 查询指定设备的完整详细信息，包括硬件配置、网络信息、系统版本等 |
| device_update | 修改指定设备的名称和描述信息，用于更新设备列表中的显示名称和备注 |
| device_remove | 从设备列表中删除指定的设备，仅移除列表记录不会影响被控端软件 |
| device_wakeup | 向绑定了开机硬件的设备发送开机指令，需要设备端配置开机棒或主板支持WOL功能 |
| device_shutdown | 向在线的远程设备发送关机指令，设备需处于在线状态且被控端支持关机功能 |

### 远控会话

| 工具名 | 功能描述 |
|--------|----------|
| control_connect | 发起与指定设备的远控会话连接，支持远程文件、桌面、CMD、SSH、摄像头、端口转发等 |
| control_sessions | 查询所有当前活跃的远控会话，包括会话ID/会话类型和状态 |
| control_disconnect | 终止指定的活跃远控会话，立即断开与该会话的连接 |
| control_command | 在已建立的CMD远程会话中执行命令，目前支持Windows的CMD |
| control_screenshot | 对指定的远程桌面会话进行截图，返回Base64编码的图片数据及尺寸信息 |
| control_portforward | 在已建立的端口转发远程会话中配置端口转发规则，用于实现本地与远程主机端口的双向数据转发 |

### 桌面操作

| 工具名 | 功能描述 |
|--------|----------|
| desktop_click_mouse | 在远程桌面会话中模拟鼠标点击操作，支持左键、右键、中键点击及双击 |
| desktop_move_mouse | 将鼠标光标移动到远程桌面的指定坐标位置，常用于拖拽操作前的定位 |
| desktop_drag_mouse | 在远程桌面中模拟鼠标拖拽操作，支持按住指定按键沿路径移动 |
| desktop_scroll_mouse | 在远程桌面的指定位置模拟鼠标滚轮滚动，支持向上或向下滚动指定次数 |
| desktop_press_keys | 在远程桌面中精确控制按键的按下或释放操作，适合需要精细控制按键状态的场景 |
| desktop_typing_keys | 在远程桌面中执行组合快捷键操作，如复制、粘贴、保存等 |
| desktop_typing_text | 在远程桌面中逐字符模拟键盘输入文本，适合输入短文本内容 |
| desktop_paste_text | 在远程桌面中通过系统剪贴板粘贴长文本内容，比逐字符输入更高效 |
| desktop_waiting | 在远控操作序列中插入暂停等待，用于等待系统响应或页面加载完成 |

**详细工具文档**：
- [查看完整工具文档](./docs/mcp_tools.md)


## 推荐的 AI 客户端

- OpenCode
- Claude Desktop
- 其他支持 MCP 协议的 AI 客户端

> 如需远控桌面操作，需要搭配拥有**视觉能力**的大模型使用，推荐搭配`kimi-k2.5`模型


## 注意事项

1. 需先安装向日葵客户端（Windows/macOS）
2. 远程控制功能需要被控设备安装向日葵客户端并保持在线
3. 部分功能（如开机）需要硬件支持（开机棒或开机插座）
4. 需要已经验证过设备验证码的设备才能建立远控连接

## 支持
- **内测申请**: [https://sunlogin.oray.com/product/mcp](https://sunlogin.oray.com/product/mcp)
- **使用指南（内部）**: [https://service.oray.com/question/50091.html](https://service.oray.com/question/50091.html)      

