TB-Warp/lxc-mcp
If you are the rightful owner of lxc-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The LXC MCP Server is a professional Model Context Protocol server designed to provide seamless access to LXC/LXD container management through AI-assistants like Warp Terminal.
LXC MCP Server
En professionel MCP (Model Context Protocol) server der giver seamless adgang til LXC/LXD container management gennem AI-assistenter som Warp Terminal.
🚀 Quick Start
Installation via Homebrew (Anbefalet)
# Add tap (første gang)
brew tap lpm/lxc-mcp https://github.com/lpm/homebrew-lxc-mcp
# Install
brew install lxc-mcp-server
# Verificer installation
lxc-mcp-server --help
Test installation
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": {}}' | lxc-mcp-server
✨ Features
Denne MCP server leverer komplet LXC/LXD container management:
Core Operations
- 🔍 lxc_list - List alle containers med detaljeret status
- 📊 lxc_info - Komplet container information (RAM, CPU, netværk)
- ⚡ lxc_exec - Kør kommandoer i containers (interaktiv support)
- 🚀 lxc_launch - Opret og start nye containers
- ▶️ lxc_start - Start stoppede containers
- ⏹️ lxc_stop - Stop kørende containers (graceful/force)
- 🗑️ lxc_delete - Slet containers (med force option)
Advanced Features
- 🌐 Remote LXD Support - Administrer containers på remote servere
- 🔗 Tailscale Integration - Virker perfekt med Tailscale netværk
- 🛡️ Type Safety - Bygget med TypeScript for maksimal sikkerhed
- 🎯 Warp AI Integration - Optimeret til Warp Terminal's Agent Mode
- ⚡ High Performance - Asynkron JSON-RPC kommunikation
📬 Installation
🍺 Homebrew (Anbefalet - macOS)
Den nemmeste og mest professionelle måde:
# Første gang: Add custom tap
brew tap lpm/lxc-mcp https://github.com/lpm/homebrew-lxc-mcp
# Install LXC MCP Server
brew install lxc-mcp-server
# Verificer installation
lxc-mcp-server --help
which lxc-mcp-server # -> /usr/local/bin/lxc-mcp-server
Homebrew fordele:
- ✅ Automatisk dependency management
- ✅ System PATH integration
- ✅ Nem opdatering med
brew upgrade lxc-mcp-server
- ✅ Clean uninstall med
brew uninstall lxc-mcp-server
📦 NPM Global (Udvikling)
# Klon repository
git clone https://github.com/TB-Warp/lxc-mcp.git
cd lxc-mcp
# Install og byg
npm install
npm run build
# Install globalt
npm install -g .
# Nu tilgængelig som: lxc-mcp-server
🚀 Direkte fra kilde (Advanced)
# Klon og byg
git clone https://github.com/TB-Warp/lxc-mcp.git
cd lxc-mcp
npm install
npm run build
# Kør direkte
node build/index.js
Brug
Direkte test via JSON-RPC
Du kan teste serveren direkte via JSON-RPC over stdio:
# List alle tilgængelige tools
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": {}}' | node build/index.js
# List alle containers
echo '{"jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": {"name": "lxc_list", "arguments": {}}}' | node build/index.js
# Kør en kommando i en container
echo '{"jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": {"name": "lxc_exec", "arguments": {"container": "mcp", "command": "hostname"}}}' | node build/index.js
🔧 Warp AI Integration
Quick Setup
- Åbn Warp Terminal
- Gå til Settings ➜
Cmd+,
- Find "Agent Mode" eller "MCP Servers"
- Add New MCP Server:
{
"mcpServers": {
"lxc-mcp": {
"command": "lxc-mcp",
"args": []
}
}
}
Alternative med old name:
{
"mcpServers": {
"lxc-mcp-server": {
"command": "lxc-mcp-server",
"args": []
}
}
}
Alternative Konfigurationer
Homebrew installation (new name):
{
"command": "lxc-mcp",
"args": []
}
NPM global (new name):
{
"command": "lxc-mcp",
"args": []
}
Legacy name support:
{
"command": "lxc-mcp-server",
"args": []
}
Direkte node:
{
"command": "node",
"args": ["/usr/local/lib/lxc-mcp/build/index.js"]
}
🎨 Warp AI Usage Examples
Når MCP serveren er konfigureret, kan du bruge naturligt sprog i Warp:
👤 User: "List mine LXC containers"
🤖 AI: Lists all containers med status, IP-adresser og ressourceforbrug
👤 User: "Run 'ps aux' in the mcp container"
🤖 AI: Kører ps aux kommandoen i mcp containeren
👤 User: "Show me detailed info about llmgateway container"
🤖 AI: Viser CPU, RAM, netværk og disk stats for llmgateway
👤 User: "Create a new Ubuntu 22.04 container called test"
🤖 AI: Opretter og starter en ny container med Ubuntu 22.04
📚 API Reference
🔍 lxc_list - List Containers
List alle containers med komplet status information.
Parameters:
{
remote?: string // Remote LXD server navn (valgfri)
}
Eksempel:
{
"name": "lxc_list",
"arguments": {
"remote": "mimer"
}
}
Response: Detaljeret JSON med container status, IP-adresser, RAM/CPU forbrug, netværksstatistik.
📊 lxc_info - Container Information
Få detaljeret information om en specifik container.
Parameters:
{
name: string, // Container navn (påkrævet)
remote?: string // Remote server (valgfri)
}
Eksempel:
{
"name": "lxc_info",
"arguments": {
"name": "mcp",
"remote": "mimer"
}
}
Response: CPU usage, RAM stats, netværksinterfaces, disk usage, PID, uptime.
⚡ lxc_exec - Execute Commands
Kør kommandoer inde i en container.
Parameters:
{
container: string, // Container navn (påkrævet)
command: string, // Kommando at køre (påkrævet)
remote?: string, // Remote server (valgfri)
interactive?: boolean // Interaktiv mode (default: false)
}
Eksempel:
{
"name": "lxc_exec",
"arguments": {
"container": "mcp",
"command": "ls -la /home",
"remote": "mimer",
"interactive": false
}
}
Response: Command output (stdout + stderr).
🚀 lxc_launch - Create Container
Opret og start en ny container fra et image.
Parameters:
{
image: string, // Container image (påkrævet) f.eks. "ubuntu:22.04"
name?: string, // Container navn (auto-genereret hvis ikke angivet)
remote?: string // Remote server (valgfri)
}
Eksempel:
{
"name": "lxc_launch",
"arguments": {
"image": "ubuntu:22.04",
"name": "test-container",
"remote": "mimer"
}
}
▶️ lxc_start - Start Container
Parameters:
{
name: string, // Container navn (påkrævet)
remote?: string // Remote server (valgfri)
}
⏹️ lxc_stop - Stop Container
Parameters:
{
name: string, // Container navn (påkrævet)
remote?: string, // Remote server (valgfri)
force?: boolean // Force stop (default: false)
}
🗑️ lxc_delete - Delete Container
Parameters:
{
name: string, // Container navn (påkrævet)
remote?: string, // Remote server (valgfri)
force?: boolean // Force delete hvis kørende (default: false)
}
Forudsætninger
- Node.js 18+
- LXC/LXD installeret og konfigureret
- Adgang til LXD server (lokalt eller remote)
Udvikling
# Watch mode for udvikling
npm run dev
# Build projektet
npm run build
# Start serveren
npm start
Sikkerhed
Vigtig: Denne MCP server kan køre vilkårlige kommandoer på dine containere. Brug kun i miljøer hvor du stoler på AI-assistenten og dens input.
Licens
MIT