Skip to main content
Glama
README.md
# 1Panel MCP Server

A [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server for automated website deployment to 1Panel.

> [!IMPORTANT]
> Currently, this project is an experimental project and does not mean that it can be used directly.

## Video demo

<https://www.bilibili.com/video/BV1SjQRY3EmM/>

## Features

- Automates website deployment to 1Panel servers
- Creates websites if they don't already exist
- Uploads static website files to 1Panel
- Fully compatible with the MCP standard protocol

## Usage

### Configure MCP in Cursor IDE

To use this server with Cursor IDE, add the following MCP configuration:

1. Open Cursor
2. Create `.cursor/mcp.json`

```json
{
  "mcpServers": {
    "1panel-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "1panel-mcp"
      ],
      "env": {
        "ONEPANEL_BASE_URL": "<your 1Panel base URL>",
        "ONEPANEL_API_KEY": "<your 1Panel API key>",
        "ONEPANEL_API_VERSION": "v2" // optional, default is v2
      }
    }
  }
}
```

### Use MCP to Deploy Websites

In Cursor, you can deploy websites using the following command in the AI chat:

```plaintext
Deploy to 1Panel with domain=yourdomain.com
```

Or you can use the following format:

```plaintext
Deploy website to 1Panel server, domain: yourdomain.com
```

## API Reference

### MCP Tool: deploy_website

Deploys a website to 1Panel.

**Parameters:**

- `domain` (required): Website domain
- `buildDir` (optional): Build directory path

**Response:**

```plaintext
Successfully deployed to 1Panel!
Domain: yourdomain.com
URL: http://yourdomain.com
Upload statistics:
- Total files: 25
- Successfully uploaded: 25
- Failed to upload: 0
```

## Implementation Details

### Deployment Process

1. **Check Build Directory**: Verifies if the specified build directory exists
2. **Website Creation**: Creates a new static website through 1Panel API if it doesn't exist
3. **File Upload**: Uploads all files from the build directory to the website
4. **Statistics**: Returns detailed statistics about the upload process

## Troubleshooting

If you encounter deployment issues, check the following:

1. Ensure your API Key is valid and has sufficient permissions
2. Verify that the website directory exists and has write permissions
3. Check the 1Panel server logs for more detailed error information
4. If file uploads fail, it may be due to file permission or format issues

TDQS

B3.1/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of confusion or overlap between tools, as there are no other tools to compare it against. The tool's purpose is clearly defined and distinct by default.

Naming Consistency5/5

The single tool name follows a clear verb_noun pattern (deploy_website), which is consistent within the set. Since there is only one tool, there is no inconsistency to evaluate.

Tool Count2/5

A single tool is too few for a server named '1Panel MCP Server', which implies broader panel management capabilities beyond just website deployment. This minimal toolset feels thin and under-scoped for the apparent domain.

Completeness2/5

The tool surface is severely incomplete for a panel server, lacking essential operations like managing servers, applications, databases, or monitoring. With only a deploy_website tool, there are significant gaps that will cause agent failures in handling typical panel tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues