UFO MCP Server
Control a Dynatrace UFO device on your local network using MCP-compatible clients.
UFO MCP Server
Control your Dynatrace UFO device through MCP-compatible clients like Claude Desktop.
Version 1.0.1 - MCP Specification 2024-11-05
🚀 Quick Start
Prerequisites
- A Dynatrace UFO device on your network
- Find your UFO's IP address (check your router or use
ufo.local
if mDNS is available)
📦 Installation
Option 1: Direct Download (Recommended)
# 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
Option 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
Option 3: Build from Source
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/
🔧 Client Setup
Option A: Desktop Extension (Recommended for Multi-Agent)
For multi-agent coordination where multiple Claude Desktop instances share the same UFO state, use the Desktop Extension:
1. Build the Extension
make dxt
2. Start HTTP Server
docker run -d --name ufo-mcp-shared -p 8080:8080 -v "$(pwd)/data:/data" ufo-mcp:local --transport http --port 8080
3. Install Extension
- Open Claude Desktop
- Go to Settings > Extensions
- Drag
build/ufo-mcp.dxt
into the extensions area
Benefits:
- ✅ Multiple Claude Desktop instances share UFO state
- ✅ Real-time coordination between agents
- ✅ Centralized effect stack management
- ✅ No configuration file editing required
See extension/README.md for detailed documentation.
Option B: Direct MCP Configuration
For single-agent use or when you prefer traditional MCP server configuration:
Claude Desktop
Add to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Direct Installation
{
"mcpServers": {
"ufo": {
"command": "/usr/local/bin/ufo-mcp",
"args": [
"--transport", "stdio",
"--ufo-ip", "YOUR_UFO_IP_HERE"
]
}
}
}
Docker Installation
{
"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 Extension)
Add to VS Code settings.json:
Direct Installation
{
"mcp.servers": {
"ufo": {
"command": "/usr/local/bin/ufo-mcp",
"args": ["--transport", "stdio", "--ufo-ip", "YOUR_UFO_IP_HERE"]
}
}
}
Docker Installation
{
"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
The UFO MCP server includes legacy SSE support for MuleSoft's MCP Connector (0.1.0-BETA).
- Start the server in HTTP mode:
# 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
- In Anypoint Code Builder, configure your MCP connection:
- Server URL:
http://localhost:8080
- SSE Endpoint Path:
/sse
- The server will automatically handle session persistence across reconnections
- Server URL:
Other MCP Clients
For standard HTTP/2 MCP clients, connect to http://localhost:8080/mcp
The server supports multiple transport modes simultaneously:
- stdio: Standard I/O for desktop clients (Claude, Cline)
- http: HTTP/2 + SSE for web-based clients
- Legacy SSE: Bidirectional SSE for MuleSoft compatibility
💡 Usage Examples
Once configured, ask Claude to:
- "Turn the UFO red" - Sets all LEDs to red
- "Play the rainbow effect" - Starts a colorful animation
- "Make the top ring blue and bottom ring green" - Independent ring control
- "Set brightness to 50%" - Adjust overall brightness
- "Add rotation to the top ring" - Animate ring patterns
- "Show current UFO state" - See what's currently displayed
🎨 Built-in Effects
The server includes pre-configured effects:
- rainbow - Rotating rainbow colors (perpetual)
- breathingGreen - Calming green pulse (perpetual)
- policeLights - Emergency light pattern (30 seconds)
- oceanWave - Soothing blue waves (perpetual)
- fireGlow - Flickering fire effect (perpetual)
- alertPulse - Red alert flash (20 seconds)
🛠️ Available Tools
configureLighting
- Set entire UFO lighting (top ring, bottom ring, logo) in one commandsendRawApi
- Send raw API commands directly to the UFOplayEffect
- Play a named lighting effect from the librarystopEffect
- Stop current effect and resume previous one from the stackgetLedState
- Query current LED statelistEffects
- Show all available effects (built-in and custom)
📝 Configuration Options
Command Line Arguments
--transport
or-t
: Transport type (stdio
orhttp
, default:stdio
)--port
: HTTP port when using http transport (default:8080
)--ufo-ip
: UFO device IP address (overridesUFO_IP
env var)--effects-file
: Path to effects JSON file (default:/data/effects.json
)
Environment Variables
UFO_IP
: UFO device IP address or hostname (e.g.,192.168.1.100
orufo.local
)
🐛 Troubleshooting
- Can't find UFO: Check your UFO's IP address in your router's admin panel
- Connection refused: Ensure UFO is powered on and connected to your network
- Effects not saving: Check write permissions for the effects file location
- Docker permission issues: Ensure the effects directory is writable
📄 License
MIT License - See LICENSE file for details
Related Servers
WSB Analyst
Provides real-time WallStreetBets data for analysis using the Reddit API.
通胜 MCP 服务
Provides Chinese Tung Shing (almanac) data, including calendar conversions, auspicious activities, and traditional metaphysical elements.
Overseerr
Interact with the Overseerr API to manage movie and TV show requests.
Time MCP Server
Provides time-related functions such as current time queries, timezone conversions, and time difference calculations.
ImageMagick
An MCP server for image conversion using ImageMagick and darktable.
Hava Durumu
Provides weather data using the Open-Meteo API.
Bazi
An MCP server for accessing Bazi (Chinese astrology) data, requiring an API key.
Omics AI MCP Server
Interact with Omics AI Explorer networks for genomics research and data analysis.
O'RLY Book Cover Generator
Generates O'RLY? (O'Reilly parody) book covers.
VFX MCP
A powerful video editing server using ffmpeg-python to process external video files.