cyberpanel-mcp
MCP server for CyberPanel that enables AI-driven management of web hosting servers, including websites, databases, email, and more via 200+ tools.
README
<p align="center"> <img src="https://community.cyberpanel.net/uploads/default/original/1X/416fdec0e96357d11f7b2756166c61b1aeca5939.png" alt="CyberPanel Logo" width="200"> <img src="https://www.cdata.com/drivers/_img/mcp.png" alt="MCP Logo" width="65"> </p>
<h1 align="center">CyberPanel MCP Server</h1>
<p align="center"> <strong>Model Context Protocol server for CyberPanel - Control your server with AI</strong> </p>
<p align="center"> <a href="https://www.npmjs.com/package/cyberpanel-mcp"> <img src="https://img.shields.io/npm/v/cyberpanel-mcp?style=flat-square&color=cb3837" alt="npm version"> </a> <a href="https://www.npmjs.com/package/cyberpanel-mcp"> <img src="https://img.shields.io/npm/dm/cyberpanel-mcp?style=flat-square&color=cb3837" alt="npm downloads"> </a> <a href="https://github.com/elwizard33/cyberpanel-mcp/blob/main/LICENSE"> <img src="https://img.shields.io/github/license/elwizard33/cyberpanel-mcp?style=flat-square&color=blue" alt="license"> </a> <a href="https://github.com/elwizard33/cyberpanel-mcp/releases"> <img src="https://img.shields.io/github/v/release/elwizard33/cyberpanel-mcp?style=flat-square&color=green" alt="GitHub release"> </a> </p>
📑 Table of Contents
- ✨ Features
- ⚠️ Important: IDE Tool Limits
- 🚀 Quick Start
- 📦 Installation
- 🔧 Environment Variables
- 🛠️ Available Tools
- 🔒 Security
- 🏗️ Development
- 📝 API Keys Plugin
- 🤝 Contributing
- 📄 License
- 🙏 Acknowledgments
✨ Features
- 🔧 200+ Tools - Comprehensive server management through AI
- 🔐 Secure Authentication - API key-based authentication
- 🌐 Website Management - Create, modify, delete websites
- 📧 Email Administration - Full email server control
- 🗄️ Database Operations - MySQL/MariaDB management
- 📁 File Manager - Browse, edit, upload files
- 🔒 SSL Certificates - Automated certificate management
- 🔥 Firewall Rules - Security configuration
- 📊 Server Monitoring - Status and performance metrics
- 🐳 Docker Support - Container management
- 💾 Backup & Restore - Automated backups
⚠️ Important: IDE Tool Limits
This MCP server provides 200+ tools. Some IDEs and AI clients have tool limits that can affect behavior when too many tools are enabled.
VS Code / GitHub Copilot
VS Code with GitHub Copilot has a recommended limit of 128 tools. When more tools are enabled:
- Tool quality and selection may degrade
- Some tools may show as "disabled by user" even when enabled
- AI responses may be slower or less accurate
- The IDE may randomly disable tools to stay under the limit
Recommendations for VS Code users:
- Disable other MCP servers when using CyberPanel MCP, or
- Use tool groups selectively - Only enable the tool categories you need for your current task
- Restart VS Code if tools appear incorrectly disabled after configuration changes
Claude Desktop
Claude Desktop generally handles larger tool counts better, but for optimal performance:
- Consider disabling unused MCP servers when working with CyberPanel
- If experiencing slow responses, reduce the number of active tools
Other MCP Clients
Check your client's documentation for tool limits. Common limits:
- Cursor: Similar to VS Code (~128 tools recommended)
- Windsurf: Check their documentation for current limits
- Custom clients: Implement pagination or categorization if needed
Future Improvements
We're considering these options to better handle tool limits:
- Tool categories/groups - Enable/disable entire categories at once
- Separate server profiles -
cyberpanel-websites,cyberpanel-email, etc. - Dynamic tool loading - Only load tools as needed
If you have suggestions, please open an issue!
🚀 Quick Start
One-Click Install (Recommended)
The easiest way to get started is through the CyberPanel API Keys plugin, which provides one-click install buttons for all major IDEs:
- Install the API Keys plugin in CyberPanel
- Generate an API key
- Click the install button for your IDE:
- VS Code - Opens VS Code and configures MCP automatically
- Cursor - Opens Cursor IDE and configures MCP automatically
- Claude Code - Copies the CLI command to add MCP to Claude
<p align="center"> <img src="https://img.shields.io/badge/VS_Code-007ACC?style=for-the-badge&logo=visual-studio-code&logoColor=white" alt="VS Code"> <img src="https://img.shields.io/badge/Cursor-000000?style=for-the-badge&logo=cursor&logoColor=white" alt="Cursor"> <img src="https://img.shields.io/badge/Claude-FF7043?style=for-the-badge&logo=anthropic&logoColor=white" alt="Claude"> </p>
Manual Installation
# Using npx (no installation required)
npx cyberpanel-mcp
# Or install globally
npm install -g cyberpanel-mcp
📦 Installation
Prerequisites
- Node.js 18 or higher
- CyberPanel server with API Keys plugin installed
- Valid API key
For VS Code with GitHub Copilot
💡 Tip: The CyberPanel API Keys plugin provides a one-click install button that configures this automatically!
Add to your VS Code .vscode/mcp.json or user settings.json:
{
"servers": {
"cyberpanel": {
"type": "stdio",
"command": "npx",
"args": ["-y", "cyberpanel-mcp"],
"env": {
"CYBERPANEL_HOST": "https://your-server.com:8090",
"CYBERPANEL_API_KEY": "your-api-key"
}
}
}
}
⚠️ Note: See the IDE Tool Limits section if you're using multiple MCP servers.
For Cursor IDE
💡 Tip: The CyberPanel API Keys plugin provides a one-click install button that configures this automatically!
Cursor uses the same MCP configuration format. Add to your Cursor MCP settings:
Option 1: One-Click Install (via CyberPanel plugin)
The API Keys plugin generates a Cursor deeplink that automatically configures MCP when clicked.
Option 2: Manual Configuration
Add to your Cursor mcp.json configuration:
{
"cyberpanel": {
"command": "npx",
"args": ["-y", "cyberpanel-mcp"],
"env": {
"CYBERPANEL_HOST": "https://your-server.com:8090",
"CYBERPANEL_API_KEY": "your-api-key"
}
}
}
⚠️ Note: Cursor has similar tool limits to VS Code. See the IDE Tool Limits section.
For Claude Desktop
💡 Tip: The CyberPanel API Keys plugin provides a CLI command you can copy and run to configure Claude!
Option 1: Claude CLI (Recommended)
claude mcp add cyberpanel \
-e CYBERPANEL_HOST=https://your-server.com:8090 \
-e CYBERPANEL_API_KEY=your-api-key \
-- npx -y cyberpanel-mcp
Option 2: Manual Configuration
Add to your Claude configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"cyberpanel": {
"command": "npx",
"args": ["-y", "cyberpanel-mcp"],
"env": {
"CYBERPANEL_HOST": "https://your-server.com:8090",
"CYBERPANEL_API_KEY": "your-api-key"
}
}
}
}
🔧 Environment Variables
| Variable | Required | Description |
|---|---|---|
CYBERPANEL_HOST |
✅ | Your CyberPanel server URL with port (e.g., https://server.com:8090) |
CYBERPANEL_API_KEY |
✅ | API key generated from CyberPanel |
🛠️ Available Tools
This server provides 200+ tools organized into categories:
Website Management (25 tools)
| Tool | Description |
|---|---|
list_websites |
List all websites on the server |
create_website |
Create a new website |
delete_website |
Delete a website |
suspend_website |
Suspend a website |
unsuspend_website |
Unsuspend a website |
change_php_version |
Change PHP version |
get_php_config |
Get PHP configuration |
save_php_config |
Save PHP configuration |
Database Management (15 tools)
| Tool | Description |
|---|---|
list_databases |
List all databases for a website |
create_database |
Create a new database |
delete_database |
Delete a database |
list_database_users |
List database users |
create_database_user |
Create database user |
delete_database_user |
Delete database user |
Email Management (20 tools)
| Tool | Description |
|---|---|
list_email_accounts |
List email accounts for a domain |
create_email_account |
Create a new email account |
delete_email_account |
Delete an email account |
change_email_password |
Change email password |
list_email_forwardings |
List email forwardings |
create_email_forwarding |
Create email forwarding |
DNS Management (10 tools)
| Tool | Description |
|---|---|
list_dns_zones |
List all DNS zones |
list_dns_records |
List DNS records for a zone |
create_dns_record |
Create a DNS record |
delete_dns_record |
Delete a DNS record |
create_dns_zone |
Create a new DNS zone |
SSL Management (8 tools)
| Tool | Description |
|---|---|
issue_ssl |
Issue SSL certificate |
issue_wildcard_ssl |
Issue wildcard SSL |
get_ssl_status |
Get SSL status for domain |
install_custom_ssl |
Install custom SSL certificate |
File Management (15 tools)
| Tool | Description |
|---|---|
list_files |
List files in directory |
read_file |
Read file contents |
write_file |
Write to a file |
delete_file |
Delete a file |
create_directory |
Create a directory |
upload_file |
Upload a file |
download_file |
Download a file |
FTP Management (6 tools)
| Tool | Description |
|---|---|
list_ftp_accounts |
List FTP accounts |
create_ftp_account |
Create FTP account |
delete_ftp_account |
Delete FTP account |
change_ftp_password |
Change FTP password |
Firewall Management (8 tools)
| Tool | Description |
|---|---|
get_firewall_status |
Get firewall status |
list_firewall_rules |
List firewall rules |
add_firewall_rule |
Add firewall rule |
delete_firewall_rule |
Delete firewall rule |
Backup Management (10 tools)
| Tool | Description |
|---|---|
create_backup |
Create backup |
restore_backup |
Restore from backup |
list_backups |
List available backups |
delete_backup |
Delete a backup |
schedule_backup |
Schedule automated backups |
Docker Management (12 tools)
| Tool | Description |
|---|---|
list_containers |
List containers |
create_container |
Create container |
start_container |
Start container |
stop_container |
Stop container |
delete_container |
Delete container |
list_images |
List Docker images |
Server Management (15 tools)
| Tool | Description |
|---|---|
get_server_status |
Get server status |
restart_service |
Restart a service |
list_packages |
List hosting packages |
create_package |
Create hosting package |
list_users |
List server users |
create_user |
Create a new user |
And Many More...
- Package Management - Hosting packages and limits
- User Management - Admin and reseller users
- Log Viewing - Access and error logs
- WordPress Management - Plugins, themes, staging
- Cron Jobs - Scheduled task management
- Server Statistics - Resource monitoring
- Cloud Backups - AWS S3, DigitalOcean Spaces, MINIO
🔒 Security
- All API communications are encrypted (HTTPS)
- API keys are stored securely in the CyberPanel database (SHA-256 hashed)
- Keys can be enabled/disabled without deletion
- Full audit trail of key usage
🏗️ Development
# Clone the repository
git clone https://github.com/elwizard33/cyberpanel-mcp.git
cd cyberpanel-mcp
# Install dependencies
npm install
# Build
npm run build
# Run locally
CYBERPANEL_HOST=https://your-server:8090 CYBERPANEL_API_KEY=your-key npm start
📝 API Keys Plugin
The API Keys plugin for CyberPanel provides:
- 🔑 Secure API key generation with SHA-256 hashing
- ✅ Enable/disable keys without deletion
- 📋 One-click configuration for Claude & VS Code
- 🔄 Auto-recovery after CyberPanel upgrades (optional)
- 📊 Key management interface
Plugin Installation
Basic Installation:
# Download and run the install script
curl -sL https://raw.githubusercontent.com/elwizard33/cyberpanel-mcp/main/install-plugin.sh | sudo bash
With Auto-Recovery (recommended):
# Automatically reinstalls after CyberPanel upgrades
curl -sL https://raw.githubusercontent.com/elwizard33/cyberpanel-mcp/main/install-plugin.sh | sudo bash -s -- --auto-recovery
⚠️ CyberPanel Upgrade Behavior
Important: CyberPanel upgrades completely replace the /usr/local/CyberCP directory, which removes this plugin. You have two options:
- Manual reinstall - After each CyberPanel upgrade, run the install script again
- Auto-recovery - Install with
--auto-recoveryflag to automatically reinstall after upgrades
The auto-recovery option creates a systemd service that detects when the plugin is missing and reinstalls it automatically. Your API keys in the database are preserved across upgrades.
Plugin Commands
# Install with auto-recovery
sudo bash install-plugin.sh --auto-recovery
# Uninstall completely (removes auto-recovery too)
sudo bash install-plugin.sh --uninstall
# Show help
sudo bash install-plugin.sh --help
🤝 Contributing
We love contributions! Please read our Contributing Guide before submitting a Pull Request.
Quick Start:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit using Conventional Commits (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
See our Issue Guide for reporting bugs and requesting features.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- CyberPanel - The hosting panel this integrates with
- Model Context Protocol - The protocol specification
- Anthropic - For Claude and the MCP SDK
<p align="center"> Made with ❤️ for the CyberPanel community </p>
<p align="center"> <a href="https://github.com/elwizard33/cyberpanel-mcp/issues">Report Bug</a> • <a href="https://github.com/elwizard33/cyberpanel-mcp/issues">Request Feature</a> </p>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.