Dokploy MCP Server
by tacticlaunch
README.md
# Dokploy MCP Server
A comprehensive Model Context Protocol (MCP) server for Dokploy, providing type-safe access to the complete Dokploy API with extensive tool coverage across all available endpoints.
## Features
- **380 Tools** covering 100% of Dokploy API functionality
- **Smart tool selection** with core tools enabled by default
- **Advanced tools** available but disabled by default for performance
- **Type-safe** integration with auto-generated OpenAPI types
- **Environment-based** authentication
- **Modular architecture** with each tool in separate files
- **Comprehensive error handling** for all HTTP status codes
- **Production-ready** MCP server with optimized tool selection
> 📋 **See [TOOLS_STATUS.md](./TOOLS_STATUS.md) for complete tool breakdown and current status**
## Installation
```bash
npx -y dokploy-mcp
```
## Configuration
Set the following environment variables:
```bash
export DOKPLOY_URL="https://your-dokploy-instance.com"
export DOKPLOY_API_KEY="your-api-key-here"
```
### Getting Your API Key
You can create an API key in your Dokploy dashboard:
1. Go to **Settings** → **Profile** in your Dokploy dashboard
2. Navigate to `/dashboard/settings/profile`
3. Generate a new API key
4. Copy the key and use it as the `DOKPLOY_API_KEY` environment variable
## Usage with Claude Desktop
Add to your Claude Desktop configuration:
```json
{
"mcpServers": {
"dokploy": {
"command": "npx",
"args": ["-y", "dokploy-mcp"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-instance.com",
"DOKPLOY_API_KEY": "your-api-key-here"
}
}
}
}
```
## Available Tools
For a complete list of all available tools, their descriptions, and current status, see:
**[📋 TOOLS_STATUS.md](./TOOLS_STATUS.md)** - Complete tool reference with status and management instructions
## Tool Management
### Runtime Tool Control
You can control which tools are enabled/disabled at runtime using command-line arguments or environment variables:
#### Enable Additional Tools
```bash
# Enable specific tools or categories
npx -y dokploy-mcp --enable-tools postgres/,application-cancelDeployment
# Enable multiple categories
npx -y dokploy-mcp --enable-tools postgres/,mysql/,notification/
```
#### Disable Specific Tools
```bash
# Disable specific tools or categories
XMCP_DISABLE_TOOLS=admin/,application-cancelDeployment npx -y dokploy-mcp
# Disable multiple categories
XMCP_DISABLE_TOOLS=admin/,settings/,stripe/ npx -y dokploy-mcp
```
#### Claude Desktop Configuration
```json
{
"mcpServers": {
"dokploy": {
"command": "npx",
"args": ["-y", "dokploy-mcp", "--enable-tools", "postgres/,mysql/"],
"env": {
"DOKPLOY_URL": "https://your-dokploy-instance.com",
"DOKPLOY_API_KEY": "your-api-key-here",
"XMCP_DISABLE_TOOLS": "admin/,stripe/"
}
}
}
}
```
### Tool Patterns
- **Category patterns**: `postgres/`, `mysql/`, `notification/` - enables/disables entire categories
- **Specific tools**: `application-cancelDeployment`, `server-create` - enables/disables individual tools
- **Multiple patterns**: Separate with commas: `postgres/,mysql/,application-cancelDeployment`
### Tool Categories
For detailed information about tool categories and their current status, see **[TOOLS_STATUS.md](./TOOLS_STATUS.md)**.
### Development Mode
To enable additional tools permanently, modify the `disabled` property in each tool's metadata:
```typescript
export const metadata: ToolMetadata = {
name: 'tool-name',
description: 'Tool description',
annotations: {
title: 'Tool Title',
destructiveHint: false,
idempotentHint: true,
},
disabled: false, // Set to false to enable, true to disable
}
```
## Documentation
- **[TOOLS_STATUS.md](./TOOLS_STATUS.md)** - Complete list of all 380 tools with their status
- **[API Coverage](./TOOLS_STATUS.md#api-coverage)** - Detailed breakdown of enabled/disabled tools
## Development
```bash
# Install dependencies
pnpm install
# Build the project (automatically updates TOOLS_STATUS.md)
pnpm build
# Update tools status manually
pnpm run update-tools-status
# Run in development
pnpm dev
```
## License
MITThis server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues