mcpField
U
UFO MCP Server

UFO MCP Server

本地服务
github.com/rhoegg其他166 周前更新

关于 UFO MCP Server

UFO MCP Server 通过 MCP 兼容客户端控制网络中的 Dynatrace UFO 设备,面向需要管理灯光和效果的用户。它支持多种传输模式,并可在多个 Claude Desktop 实例间共享状态。

主要功能

  1. 01配置灯环和标志灯光
  2. 02播放、停止和列出灯光效果
  3. 03查询当前 LED 状态
  4. 04发送原始 API 命令
  5. 05支持 stdio、HTTP 和 SSE 传输
  6. 06通过效果文件保存自定义效果

适用场景

  1. 01调整 UFO 灯光颜色与亮度
  2. 02播放或停止预设动画效果
  3. 03查询设备当前显示状态
  4. 04让多个 Claude Desktop 实例共享设备状态

MCP 相关

服务器向 MCP 客户端提供控制 Dynatrace UFO 的工具,包括灯光配置、效果管理、状态查询和原始 API 调用。支持 stdio、HTTP/2 与 SSE 传输。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ufo": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"pull"
]
}
}
}
启动命令docker run -i --rm pull

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocipull

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

UFO MCP 服务

通过 Claude Desktop 等兼容 MCP 的客户端控制你的 Dynatrace UFO 设备。

版本 1.0.1 - MCP 规范 2024-11-05

🚀 快速开始

前提条件
  • 网络中有一台 Dynatrace UFO 设备
  • 找到 UFO 的 IP 地址(查看路由器,或在支持 mDNS 时使用 ufo.local)

📦 安装

选项 1:直接下载(推荐)
# macOS (Apple Silicon)
curl -L https://github.com/starspace46/ufo/releases/download/v1.0.1/ufo-mcp-darwin-arm64 -o /usr/local/bin/ufo-mcp
chmod +x /usr/local/bin/ufo-mcp

# macOS (Intel)
curl -L https://github.com/starspace46/ufo/releases/download/v1.0.1/ufo-mcp-darwin-amd64 -o /usr/local/bin/ufo-mcp
chmod +x /usr/local/bin/ufo-mcp

# Linux
curl -L https://github.com/starspace46/ufo/releases/download/v1.0.1/ufo-mcp-linux-amd64 -o /usr/local/bin/ufo-mcp
chmod +x /usr/local/bin/ufo-mcp
选项 2:Docker
docker pull starspace46/ufo-mcp:latest

# Run with Docker
docker run -d \
  --name ufo-mcp \
  -e UFO_IP=YOUR_UFO_IP_HERE \
  -v ~/.ufo-effects:/data \
  starspace46/ufo-mcp:latest
选项 3:从源代码构建
git clone https://github.com/starspace46/ufo-mcp-server.git
cd ufo-mcp-server
go build -o ufo-mcp ./cmd/server
sudo mv ufo-mcp /usr/local/bin/

🔧 客户端设置

选项 A:桌面扩展(推荐用于多 Agent 场景)

如果要进行多 Agent 协调,让多个 Claude Desktop 实例共享同一 UFO 状态,请使用桌面扩展:

1. 构建扩展
make dxt
2. 启动 HTTP 服务
docker run -d --name ufo-mcp-shared -p 8080:8080 -v "$(pwd)/data:/data" ufo-mcp:local --transport http --port 8080
3. 安装扩展
  1. 打开 Claude Desktop
  2. 前往设置 > 扩展
  3. 将 build/ufo-mcp.dxt 拖到扩展区域

优势:

  • ✅ 多个 Claude Desktop 实例共享 UFO 状态
  • ✅ Agent 之间实时协调
  • ✅ 集中管理效果栈
  • ✅ 无需编辑配置文件

详细文档请参阅 extension/README.md。

选项 B:直接配置 MCP

适用于单 Agent场景,或偏好传统 MCP 服务配置的情况:

Claude Desktop

将以下内容添加到 Claude Desktop 配置中:

macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json

直接安装
{
  "mcpServers": {
    "ufo": {
      "command": "/usr/local/bin/ufo-mcp",
      "args": [
        "--transport", "stdio",
        "--ufo-ip", "YOUR_UFO_IP_HERE"
      ]
    }
  }
}
Docker 安装
{
  "mcpServers": {
    "ufo": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "UFO_IP=YOUR_UFO_IP_HERE",
        "-v", "~/.ufo-effects:/data",
        "starspace46/ufo-mcp:latest",
        "--transport", "stdio"
      ]
    }
  }
}
Cline(VS Code 扩展)

将以下内容添加到 VS Code 的 settings.json:

直接安装
{
  "mcp.servers": {
    "ufo": {
      "command": "/usr/local/bin/ufo-mcp",
      "args": ["--transport", "stdio", "--ufo-ip", "YOUR_UFO_IP_HERE"]
    }
  }
}
Docker 安装
{
  "mcp.servers": {
    "ufo": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "UFO_IP=YOUR_UFO_IP_HERE",
        "-v", "~/.ufo-effects:/data",
        "starspace46/ufo-mcp:latest",
        "--transport", "stdio"
      ]
    }
  }
}
MuleSoft Anypoint Code Builder

UFO MCP 服务包含对 MuleSoft MCP Connector(0.1.0-BETA)的旧版 SSE 支持。

  1. 以 HTTP 模式启动服务:
# Direct
ufo-mcp --transport http --port 8080 --ufo-ip YOUR_UFO_IP_HERE --effects-file ./data/effects.json

# Docker
docker run -d \
  --name ufo-mcp-http \
  -p 8080:8080 \
  -e UFO_IP=YOUR_UFO_IP_HERE \
  -v ~/.ufo-effects:/data \
  starspace46/ufo-mcp:latest \
  --transport http
  1. 在 Anypoint Code Builder 中配置 MCP 连接:
    • 服务 URL:http://localhost:8080
    • SSE 端点路径:/sse
    • 服务会自动处理重新连接时的会话持久化
其他 MCP 客户端

对于标准 HTTP/2 MCP 客户端,请连接到 http://localhost:8080/mcp

服务支持同时使用多种传输模式:

  • stdio:适用于桌面客户端(Claude、Cline)的标准输入/输出
  • http:适用于 Web 客户端的 HTTP/2 + SSE
  • 旧版 SSE:与 MuleSoft 兼容的双向 SSE

💡 使用示例

配置完成后,可以让 Claude:

  • “把 UFO 变成红色” - 将所有 LED 设为红色
  • “播放彩虹效果” - 启动彩色动画
  • “把顶部环设为蓝色,底部环设为绿色” - 独立控制各环
  • “将亮度设为 50%” - 调整整体亮度
  • “让顶部环旋转” - 为环形图案添加动画
  • “显示当前 UFO 状态” - 查看当前显示内容

🎨 内置效果

服务包含预配置效果:

  • rainbow - 循环变换的彩虹色(持续播放)
  • breathingGreen - 平缓的绿色脉冲(持续播放)
  • policeLights - 紧急灯光模式(30 秒)
  • oceanWave - 舒缓的蓝色波浪(持续播放)
  • fireGlow - 闪烁的火焰效果(持续播放)
  • alertPulse - 红色警报闪烁(20 秒)

🛠️ 可用工具

  • configureLighting - 通过一条命令设置整个 UFO 的灯光(顶部环、底部环、徽标)
  • sendRawApi - 直接向 UFO 发送原始 API 命令
  • playEffect - 播放效果库中的指定灯光效果
  • stopEffect - 停止当前效果,并从效果栈中恢复上一个效果
  • getLedState - 查询当前 LED 状态
  • listEffects - 显示所有可用效果(内置和自定义)

📝 配置选项

命令行参数
  • --transport 或 -t:传输类型(stdio 或 http,默认值:stdio)
  • --port:使用 http 传输时的 HTTP 端口(默认值:8080)
  • --ufo-ip:UFO 设备 IP 地址(覆盖 UFO_IP 环境变量)
  • --effects-file:效果 JSON 文件的路径(默认值:/data/effects.json)
环境变量
  • UFO_IP:UFO 设备的 IP 地址或主机名(例如,192.168.1.100 或 ufo.local)

🐛 故障排除

  1. 找不到 UFO:在路由器的管理面板中检查 UFO 的 IP 地址
  2. 连接被拒绝:确保 UFO 已开机并连接到网络
  3. 效果无法保存:检查效果文件位置的写入权限
  4. Docker 权限问题:确保效果目录可写

📄 许可证

MIT 许可证 - 详情请参阅 LICENSE 文件

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。