# Easypanel Mcp

> MCP Server for EasyPanel - manage deployments directly from Claude/Cursor/Windsurf

- **Type:** MCP server
- **Install:** `agentstack add mcp-sitp2k-easypanel-mcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [sitp2k](https://agentstack.voostack.com/s/sitp2k)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [sitp2k](https://github.com/sitp2k)
- **Source:** https://github.com/sitp2k/easypanel-mcp

## Install

```sh
agentstack add mcp-sitp2k-easypanel-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# MCP EasyPanel Server

[](https://www.npmjs.com/package/easypanel-mcp)
[](https://nodejs.org/)
[](https://www.typescriptlang.org/)
[](https://github.com/sitp2k/easypanel-mcp)
[](https://github.com/sitp2k/easypanel-mcp)

> 🚀 **SPONSORED BY EASYPANEL** - Support open source development through our link
>
> 💎 **Multi-client MCP server for managing [EasyPanel](https://easypanel.io?aff=7GNAmD&utm_source=github&utm_medium=readme&utm_campaign=readme-optimization) deployments from Claude, Cursor, Windsurf, Kiro, and Web IDEs**
>
> ⭐ **Star on GitHub** ⬆️ | [**🎯 Upgrade to Premium & Support Open Source**](https://easypanel.io?aff=7GNAmD&utm_source=github&utm_medium=readme&utm_campaign=readme-optimization)

## 🤖 Universal AI IDE Support

MCP EasyPanel Server now supports **all major AI development tools**:
- ✅ **Claude** - Full MCP support with streaming
- ✅ **Cursor** - Optimized for developer workflows
- ✅ **Windsurf** - Enhanced error handling
- ✅ **Kiro** - REST API with synchronous execution
- ✅ **Web IDEs** - CORS-enabled REST API
- ✅ **Generic MCP** - Universal compatibility

[**📖 View Client Setup Guide**](docs/CLIENT_SETUP.md) | [**🚀 Quick Start**](docs/QUICK_START.md)

---

## 💎 Free vs Premium - Why Premium is a Game-Changer

| Feature | Free Version | 🏆 Premium Version |
|---------|-------------|-------------------|
| **Projects** | ⚠️ Limited (3 projects) | ✅ **Unlimited Projects** |
| **Services** | ⚠️ Limited (5 services) | ✅ **Unlimited Services** |
| **SSL Certificates** | ⚠️ Manual setup | ✅ **Free Auto SSL with Let's Encrypt** |
| **Deployments** | ⚠️ Queue delays | ✅ **Priority Deployments** |
| **Monitoring** | ⚠️ Basic metrics | ✅ **Advanced Monitoring & Alerts** |
| **Support** | ⚠️ Community only | ✅ **Priority Support (24h response)** |
| **Custom Domains** | ⚠️ 1 domain only | ✅ **Unlimited Custom Domains** |
| **Database Backups** | ⚠️ Manual only | ✅ **Automated Daily Backups** |
| **Security** | ⚠️ Basic protection | ✅ **Advanced Firewall & DDoS Protection** |

### 🔥 **Support Open Source Development - Upgrade Through Our Link**

[**🚀 Upgrade to EasyPanel Premium & Support Open Source**](https://easypanel.io?aff=7GNAmD&utm_source=github&utm_medium=readme&utm_campaign=readme-optimization)

*When you upgrade through our link, you support continued development of this open-source MCP server while unlocking premium features!*

---

## 🎯 Why Choose EasyPanel Premium?

### 📈 **Scale Without Limits**
- **Unlimited Projects** - Deploy all your apps without constraints
- **Unlimited Services** - Run as many microservices, databases, and apps as you need
- **Unlimited Domains** - Host multiple projects with custom domains

### 🛡️ **Enterprise Security**
- **Free SSL Certificates** - Automatic HTTPS for all your domains
- **Advanced Firewall** - Protect against attacks and DDoS
- **Automated Backups** - Daily backups with one-click restore

### ⚡ **Performance & Support**
- **Priority Build Queues** - Deploy 10x faster with priority access
- **Advanced Monitoring** - Real-time alerts and detailed analytics
- **24/7 Priority Support** - Get help when you need it most

> 💡 **Pro Tip**: Most teams upgrade within 30 days once they see the productivity gains. Start with Premium and scale from day one!

[**🎁 Upgrade Now to Support Open Source Development**](https://easypanel.io?aff=7GNAmD&utm_source=github&utm_medium=readme&utm_campaign=readme-optimization)

---

## 🚀 One-Line Installation

### Option 1: Install from npm (Recommended)
```bash
npx easypanel-mcp-install
```

### Option 2: Clone and Build
```bash
git clone https://github.com/sitp2k/easypanel-mcp.git
cd easypanel-mcp
npm install && npm run build
```

### Option 3: Install as Global Package
```bash
npm install -g easypanel-mcp
```

> ⚠️ **Note**: This MCP server works with both Free and Premium [EasyPanel](https://easypanel.io?aff=7GNAmD&utm_source=github&utm_medium=readme&utm_campaign=readme-optimization). Upgrade to Premium to unlock advanced features!

## 🔧 Quick Setup for Your AI Client

### For Claude Desktop
```bash
# The server auto-detects Claude when used with MCP
easypanel-mcp --transport stdio
```

### For Cursor
```bash
# Optimized for Cursor with compact responses
easypanel-mcp --client cursor --transport stdio
```

### For Windsurf
```bash
# Enhanced error handling for Windsurf
easypanel-mcp --client windsurf --transport sse --port 3001
```

### For Kiro
```bash
# REST API for Kiro (synchronous mode)
easypanel-mcp --client kiro --transport rest --rest-port 3002
```

### For Web IDEs
```bash
# CORS-enabled REST API for web integration
easypanel-mcp --transport rest --rest-port 3002
```

### For All Clients (Development)
```bash
# Run all transports simultaneously
easypanel-mcp --transport all --http-port 3001 --rest-api-port 3002
```

---

## 🎯 Quick Start

### 🚀 **Option 1: Claude Code with Environment Variables (Easiest)**

```bash
# 1. Configure environment
echo "EASYPANEL_URL=http://your-server-ip:3000" > ~/.mcp-easypanel.env
echo "EASYPANEL_EMAIL=your-email@example.com" >> ~/.mcp-easypanel.env
echo "EASYPANEL_PASSWORD=your-password" >> ~/.mcp-easypanel.env

# 2. Add to Claude Code (reads from .env)
claude mcp add easypanel npx easypanel-mcp

# 3. Test connection
echo "List all projects to verify connection"
```

### 🔧 **Option 2: Direct Configuration in Claude Code**

```bash
# Add with explicit environment variables
claude mcp add easypanel npx easypanel-mcp \
  --env EASYPANEL_URL=http://your-server-ip:3000 \
  --env EASYPANEL_EMAIL=your-email@example.com \
  --env EASYPANEL_PASSWORD=your-password
```

### 🏠 **Option 3: Local Project Setup**

```bash
# 1. Clone and setup
git clone https://github.com/sitp2k/easypanel-mcp.git
cd easypanel-mcp
npm install && npm run build

# 2. Create .env file
cp .env.example .env
# Edit .env with your credentials:
# EASYPANEL_URL=http://your-server-ip:3000
# EASYPANEL_EMAIL=your-email@example.com
# EASYPANEL_PASSWORD=your-password

# 3. Add to Claude Code
claude mcp add easypanel node $(pwd)/dist/index.js
```

### 🌍 **Option 4: Claude Desktop (Separate App)**

Create/edit `~/.config/Claude/claude_desktop_config.json` (Linux) or `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS):

```json
{
  "mcpServers": {
    "easypanel": {
      "command": "npx",
      "args": ["easypanel-mcp"],
      "env": {
        "EASYPANEL_URL": "http://your-server-ip:3000",
        "EASYPANEL_EMAIL": "your-email@example.com",
        "EASYPANEL_PASSWORD": "your-password"
      }
    }
  }
}
```

### 💻 **Option 5: VS Code with Claude Extension**
```json
{
  "mcp.servers": {
    "easypanel": {
      "command": "npx",
      "args": ["easypanel-mcp"]
    }
  }
}
```

#### **Cursor IDE**
```json
{
  "mcp": {
    "servers": {
      "easypanel": {
        "command": "npx",
        "args": ["easypanel-mcp"]
      }
    }
  }
}
```

### 3. **Verify Installation**

```bash
# Test the connection
npx easypanel-mcp-test

# Or in Claude:
"List all projects to verify the connection works"
```

---

## 🌐 SSE Transport - Real-time Updates

The MCP EasyPanel Server now supports **Server-Sent Events (SSE) transport** for real-time progress monitoring and web-based dashboard integration!

### 🚀 Quick Start with SSE

```bash
# Start server with SSE transport (default port 3001)
easypanel-mcp --transport sse

# Custom port
easypanel-mcp --transport sse --port 8080
```

### 📊 Available Endpoints

- `POST /mcp` - Main MCP endpoint for tool execution
- `GET /progress/{sessionId}` - Real-time progress stream via SSE
- `GET /health` - Server health check
- `GET /connections` - Active connections monitor

### 🔄 Real-time Progress Support

Long-running operations now stream live progress:
- **Docker Cleanup**: Image cleanup, container removal, volume pruning
- **System Operations**: Full system prune, project-specific cleanup
- **Status Updates**: Progress percentage, status messages, completion events

### 🌐 Web Dashboard

An example HTML client is included at `examples/sse-client.html`:
1. Start server: `easypanel-mcp --transport sse`
2. Open `examples/sse-client.html` in your browser
3. Execute Docker operations with live progress tracking

### 📖 Full Documentation
See [docs/SSE_TRANSPORT.md](docs/SSE_TRANSPORT.md) for complete SSE transport documentation.

---

## ✨ Premium Features You'll Love

### 🏗️ **Project Management**
- Create, list, inspect, and delete projects
- Real-time project status tracking
- Service orchestration within projects
- **Premium**: Unlimited projects and services

### 🐳 **Application Services**
- Deploy from Docker images, Git repositories, or Dockerfiles
- Start, stop, restart, and redeploy services
- Update environment variables and resource limits
- Build logs access and monitoring
- **Premium**: Priority deployments and advanced scaling

### 🗄️ **Database Services**
- Create and manage Redis, MySQL, and PostgreSQL instances
- Automatic connection string generation
- Database credentials management
- **Premium**: Automated daily backups and one-click restore

### 🌐 **Domain & SSL Management**
- Add/remove custom domains
- **Premium**: Automatic HTTPS with Let's Encrypt
- **Premium**: Free SSL certificates for all domains
- Custom SSL certificate upload
- Certificate renewal management
- Domain validation and DNS setup
- **Premium**: Unlimited domains (vs 1 on free)

### 📊 **Monitoring & Logs**
- Real-time service statistics (CPU, memory, network)
- Container logs streaming and search
- Performance metrics tracking
- Log filtering and analysis
- **Premium**: Advanced monitoring with alerts and notifications

### 🔐 **Enterprise Security**
- JWT token-based authentication
- Secure credential management
- Session persistence
- Error handling with retry logic
- **Premium**: Advanced firewall and DDoS protection
- **Premium**: Security audit logs and compliance
- 🔒 **CVE-2025-55152 Secure** - Built with pure Node.js/TypeScript, no React dependencies

---

## 🛡️ Security Notice

### 🔒 **CVE-2025-55152 Safe Zone**
This MCP EasyPanel Server is **100% immune** to the Critical React Server Components vulnerability (CVE-2025-55152, CVSS 10.0).

#### Why We're Bulletproof:
- ✅ **Zero React Dependencies** - Pure Node.js/TypeScript architecture
- ✅ **No Server Components** - MCP Protocol, not React RSC
- ✅ **Minimal Attack Surface** - Only 3 core dependencies (`@modelcontextprotocol/sdk`, `axios`, `zod`)
- ✅ **Server-Side Only** - No frontend attack vectors

#### While Others Panic, You're Safe:
- 🚨 React apps worldwide are rushing to patch CVE-2025-55152
- 🛡️ Your MCP EasyPanel Server was never at risk
- 😌 Sleep well knowing your hosting management is secure

> **Peace of Mind Included**: Focus on deploying great apps, not patching vulnerabilities.

---

## 📋 IDE-Specific Configuration

### Claude Desktop Configuration

**Linux**: `~/.config/Claude/claude_desktop_config.json`
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`

```json
{
  "mcpServers": {
    "easypanel": {
      "command": "node",
      "args": ["/absolute/path/to/easypanel-mcp/dist/index.js"],
      "env": {
        "EASYPANEL_URL": "http://your-server-ip:3000",
        "EASYPANEL_EMAIL": "admin@example.com",
        "EASYPANEL_PASSWORD": "your-password"
      }
    }
  }
}
```

### Claude Code Project Configuration

Create `.claude/mcp.json` in your project:

```json
{
  "mcpServers": {
    "easypanel": {
      "command": "npx",
      "args": ["easypanel-mcp@latest"],
      "env": {
        "EASYPANEL_URL": "http://your-server-ip:3000",
        "EASYPANEL_EMAIL": "admin@example.com",
        "EASYPANEL_PASSWORD": "your-password"
      }
    }
  }
}
```

### VS Code with Claude Extension

Add to your `.vscode/settings.json`:

```json
{
  "claude.mcp.servers": {
    "easypanel": {
      "command": "npx",
      "args": ["easypanel-mcp"]
    }
  },
  "claude.env": {
    "EASYPANEL_URL": "http://your-server-ip:3000",
    "EASYPANEL_EMAIL": "admin@example.com",
    "EASYPANEL_PASSWORD": "your-password"
  }
}
```

---

## 🛠️ Available Tools

### 📁 Project Management

| Tool | Description | Example |
|------|-------------|---------|
| `list_projects` | List all projects and their services | "Show me all my projects" |
| `create_project` | Create a new project | "Create a project called 'webapp'" |
| `inspect_project` | Get detailed project information | "Inspect the 'webapp' project" |
| `destroy_project` | Delete a project | "Delete the project 'old-project'" |

### 🐳 Application Services

| Tool | Description | Example |
|------|-------------|---------|
| `create_app_service` | Create a new app service | "Create an app service 'api' in project 'webapp'" |
| `deploy_from_image` | Deploy from Docker image | "Deploy nginx:latest to service 'web'" |
| `deploy_from_git` | Deploy from Git repository | "Deploy from https://github.com/user/repo.git" |
| `deploy_from_dockerfile` | Deploy using Dockerfile | "Deploy the current directory using Dockerfile" |
| `start_service` | Start a stopped service | "Start service 'api' in project 'webapp'" |
| `stop_service` | Stop a running service | "Stop service 'api'" |
| `restart_service` | Restart a service | "Restart the 'api' service" |
| `redeploy_service` | Trigger new deployment | "Redeploy the 'api' service" |
| `destroy_service` | Delete a service | "Delete the service 'old-api'" |
| `update_env` | Update environment variables | "Set DATABASE_URL=postgresql://..." |
| `update_resources` | Update memory/CPU limits | "Set memory to 2048MB and CPU to 2 cores" |
| `get_service_logs` | Get service logs | "Show me the last 100 lines of logs" |
| `get_service_stats` | Get resource statistics | "Show CPU and memory usage for 'api'" |

### 🗄️ Database Services

| Tool | Description | Example |
|------|-------------|---------|
| `create_redis` | Create Redis instance | "Create a Redis database called 'cache'" |
| `inspect_redis` | Get Redis connection info | "Show Redis connection details" |
| `create_mysql` | Create MySQL database | "Create MySQL db 'mydb' with user 'app'" |
| `create_postgres` | Create PostgreSQL database | "Create PostgreSQL db 'mydb'" |
| `destroy_db_service` | Delete database service | "Delete Redis service 'cache'" |
| `update_redis_password` | Update Redis password | "Update Redis 'cache' password" |

### 🌐 Domain & SSL Management (Premium Features)

| Tool | Description | Example |
|------|-------------|---------|
| `add_domain` | Add custom domain to service | "Add example.com to service 'web'" |
| `remove_domain` | Remove domain from service | "Remove domain with ID '123'" |
| `list_domains` | List all domains for service | "Show all domains for service 'web'" |
| `validate_domain` | Validate domain and DNS | "Validate domain setup for example.com" |
| `enable_https` | Enable HTTPS with Let's Encrypt | "Enable HTTPS for example.com" |
| `disable_https` | Disable HTTPS for domain | "Disable HTTPS for example.com" |
| `renew_certificate` | Renew SSL certificate | "Renew SSL certificate for domain" |
| `get_certificate` | Get SSL certificate details | "Show SSL certificate info" |
| `upload_custom_certificate` | Upload custom SSL cert | "Upload custom certificate" |

### 🔍 License Management

| Tool | Description | Example |
|------|-------------|---------|
| `get_license_status` | Check license status | "Show current EasyPanel license status" |
| `get_user_info` | Get user information | "Display user account details" |
| `activate_license` | Activate license | "Activate EasyPanel Premium license" |

### 📊 Advanced Monitoring

| Tool | Description | Example |
|------|-------------|---------|
| `get_advanced_stats` | System-wide statistics | "Show advanced system stats" |
| `get_system_stats` | CPU, memory, disk stats | "Display system resource usage" |
| `get_docker_task_stats` | Container statistics | "Show Docker container metrics" |
| `get_monitor_table_data` | Dashboard data | "Get monitorin

…

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [sitp2k](https://github.com/sitp2k)
- **Source:** [sitp2k/easypanel-mcp](https://github.com/sitp2k/easypanel-mcp)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-sitp2k-easypanel-mcp
- Seller: https://agentstack.voostack.com/s/sitp2k
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
