Dokploy Deployments

DevOps

by huuthangntk

在一个界面集中管理 Dokploy 的项目、应用、数据库、域名与备份;支持从 Git 仓库部署、查看状态与日志,并轻松执行启动、停止、重启及排障流程。

什么是 Dokploy Deployments?

在一个界面集中管理 Dokploy 的项目、应用、数据库、域名与备份;支持从 Git 仓库部署、查看状态与日志,并轻松执行启动、停止、重启及排障流程。

README

Dokploy MCP Server

<div align="center">

Dokploy Logo

A powerful MCP server for managing Dokploy deployments

License: MIT MCP Smithery GitHub

Features • Installation • Usage • API Reference • Contributing

</div>

🚀 Overview

Dokploy MCP Server is a comprehensive Model Context Protocol (MCP) server that provides seamless integration with Dokploy - the open-source alternative to Netlify, Vercel, and Heroku. This server enables AI assistants and applications to interact with Dokploy's powerful deployment platform through a standardized interface.

What is Dokploy?

Dokploy is a free, self-hostable Platform as a Service (PaaS) that simplifies application deployment and management. It provides:

  • Docker-based deployments
  • Support for multiple frameworks and languages
  • Automatic SSL certificates
  • Database management
  • Domain configuration
  • And much more!

✨ Features

🗂️ Project Management

  • Create, list, and delete projects
  • Organize applications by project
  • Manage project-level configurations

📦 Application Deployment

  • Deploy applications from Git repositories (GitHub, GitLab, etc.)
  • Support for Docker and Docker Compose
  • Start, stop, and restart applications
  • Real-time deployment status
  • Update environment variables
  • Application monitoring and health checks

🗄️ Database Management

  • Support for multiple database types:
    • PostgreSQL
    • MySQL
    • MongoDB
    • Redis
    • MariaDB
  • Create and manage databases
  • Connection string management

🌐 Domain & SSL Management

  • Add custom domains to applications
  • Automatic SSL certificate provisioning via Let's Encrypt
  • Domain verification and configuration

💾 Backup & Restore

  • Create manual and scheduled backups
  • List available backups
  • Restore databases from backups
  • Disaster recovery support

📊 Monitoring & Logs

  • Real-time application logs
  • Application status monitoring
  • Performance metrics
  • Error tracking

📚 Documentation Resources

  • Built-in documentation access
  • Quick start guides
  • API reference
  • Best practices

🤖 Interactive Prompts

  • Guided deployment workflows
  • Database setup assistance
  • Troubleshooting helpers

📋 Prerequisites

  • Dokploy Instance: A running Dokploy instance (self-hosted or cloud)
  • API Token: Authentication token from your Dokploy dashboard
  • Node.js: Version 18 or higher
  • Bun (optional): For faster package management

🔧 Installation

Quick Start with Smithery

bash
# Install via Smithery
npx create-smithery dokploy-mcp
cd dokploy-mcp

Manual Installation

bash
# Clone the repository
git clone https://github.com/huuthangntk/dokploy-mcp.git
cd dokploy-mcp

# Install dependencies (with bun)
bun install

# Or with npm
npm install

⚙️ Configuration

Create a configuration file or set environment variables:

yaml
# smithery.yaml
dokployUrl: "https://dok.bish.one"  # Your Dokploy instance URL
apiToken: "your-api-token-here"     # Your Dokploy API token
debug: false                         # Enable debug logging

Getting Your API Token

  1. Log in to your Dokploy dashboard
  2. Navigate to Settings → API Tokens
  3. Generate a new token
  4. Copy and save it securely

🚦 Usage

Starting the Server

bash
# Development mode
bun run dev

# Or with npm
npm run dev

The server will start on http://localhost:3000 by default.

Example Operations

Deploy an Application

typescript
// 1. Create a project
await createProject({
  name: "my-awesome-project",
  description: "My first Dokploy project"
})

// 2. Create an application
await createApplication({
  projectId: "project-id",
  name: "my-app",
  appType: "github",
  repository: "https://github.com/username/repo",
  branch: "main"
})

// 3. Deploy the application
await deployApplication({
  applicationId: "app-id"
})

Manage Databases

typescript
// Create a PostgreSQL database
await createDatabase({
  projectId: "project-id",
  name: "my-database",
  type: "postgres",
  username: "admin",
  password: "secure-password"
})

// Create a backup
await createBackup({
  databaseId: "database-id"
})

Monitor Applications

typescript
// Get application status
await getApplicationStatus({
  applicationId: "app-id"
})

// View recent logs
await getLogs({
  applicationId: "app-id",
  lines: 100
})

📖 API Reference

Tools

Project Management

ToolDescriptionParameters
list-projectsList all projectsNone
create-projectCreate a new projectname, description
delete-projectDelete a projectprojectId

Application Management

ToolDescriptionParameters
list-applicationsList all applicationsprojectId
create-applicationCreate a new applicationprojectId, name, appType, repository, etc.
deploy-applicationDeploy an applicationapplicationId
start-applicationStart an applicationapplicationId
stop-applicationStop an applicationapplicationId
restart-applicationRestart an applicationapplicationId
delete-applicationDelete an applicationapplicationId
get-logsGet application logsapplicationId, lines
get-application-statusGet application statusapplicationId
update-env-varsUpdate environment variablesapplicationId, env

Database Management

ToolDescriptionParameters
create-databaseCreate a new databaseprojectId, name, type, etc.
list-databasesList all databasesprojectId

Domain Management

ToolDescriptionParameters
add-domainAdd a custom domainapplicationId, domain, enableSSL
list-domainsList all domainsapplicationId

Backup & Restore

ToolDescriptionParameters
create-backupCreate a database backupdatabaseId
list-backupsList all backupsdatabaseId
restore-backupRestore from backupbackupId

Resources

  • dokploy://docs - Complete Dokploy documentation
  • dokploy://quickstart - Quick start guide
  • dokploy://api-reference - API reference

Prompts

  • deploy-app - Guided application deployment
  • setup-database - Guided database setup
  • troubleshoot - Application troubleshooting assistant

🔐 Security

  • API Token: Store your API token securely. Never commit it to version control.
  • HTTPS: Always use HTTPS for production deployments
  • Environment Variables: Use environment variables for sensitive data
  • Access Control: Configure proper access controls in your Dokploy instance

🛠️ Development

Project Structure

code
dokploy-mcp/
├── src/
│   └── index.ts          # Main server implementation
├── package.json          # Project dependencies
├── smithery.yaml         # Runtime configuration
├── README.md            # This file
└── .gitignore           # Git ignore rules

Building for Production

bash
# Build the server
bun run build

# Or with npm
npm run build

Testing

bash
# Run the development server
bun run dev

# Test with curl
curl -X POST "http://127.0.0.1:3000/mcp?dokployUrl=https://dok.bish.one&apiToken=your-token" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{"tools":{}},"clientInfo":{"name":"test-client","version":"1.0.0"}}}'

🚢 Deployment

Deploy to Smithery

  1. Push your code to GitHub
  2. Visit smithery.ai/new
  3. Connect your repository
  4. Configure your Dokploy credentials
  5. Deploy!

Deploy to Your Own Infrastructure

bash
# Build the project
bun run build

# Run the server
PORT=3000 node dist/index.js

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

📞 Support

🗺️ Roadmap

  • Add support for Docker Compose deployments
  • Implement real-time deployment progress tracking
  • Add metrics and analytics integration
  • Support for custom build scripts
  • Multi-region deployment support
  • Advanced monitoring and alerting
  • Integration with CI/CD pipelines
  • Webhook support for automated deployments

📊 Stats

GitHub stars GitHub forks GitHub watchers


<div align="center">

Made with ❤️ by the Dokploy community

⬆ back to top

</div>

常见问题

Dokploy Deployments 是什么?

在一个界面集中管理 Dokploy 的项目、应用、数据库、域名与备份;支持从 Git 仓库部署、查看状态与日志,并轻松执行启动、停止、重启及排障流程。

相关 Skills

更新日志

by alirezarezvani

Universal
热门

基于 Conventional Commits 自动解析提交记录、判断语义化版本升级并生成规范 changelog,适合在 CI、发版前检查提交格式并批量输出可审计发布说明。

✎ 自动生成和管理更新日志与发布说明,帮团队把版本变更说清楚;聚焦版本化与流程自动化,省时又更规范。

DevOps
未扫描26.0k

可观测性设计

by alirezarezvani

Universal
热门

面向生产系统规划可落地的可观测性体系,串起指标、日志、链路追踪与 SLI/SLO、错误预算、告警和仪表盘设计,适合搭建监控平台与优化故障响应。

✎ 把监控、日志、链路追踪串起来,帮助团队从设计阶段构建可观测性,排障更快、系统演进更稳。

DevOps
未扫描26.0k

环境密钥管理

by alirezarezvani

Universal
热门

统一梳理dev/staging/prod的.env和密钥流程,自动生成.env.example、校验必填变量、扫描Git历史泄漏,并联动Vault、AWS SSM、1Password、Doppler完成轮换。

✎ 统一管理环境变量、密钥与配置,减少泄露和部署混乱,安全治理与团队协作一起做好,DevOps 场景很省心。

DevOps
未扫描26.0k

相关 MCP Server

kubefwd

编辑精选

by txn2

热门

kubefwd 是让 AI 帮你批量转发 Kubernetes 服务到本地的开发神器。

✎ 微服务开发者最头疼的本地调试问题,它一键搞定——自动分配 IP 避免端口冲突,还能用自然语言查询状态。但依赖 AI 工作流,纯命令行爱好者可能觉得不够直接。

DevOps
4.2k

Cloudflare

编辑精选

by Cloudflare

热门

Cloudflare MCP Server 是让你用自然语言管理 Workers、KV 和 R2 等云资源的工具。

✎ 这个工具解决了开发者频繁切换控制台和文档的痛点,特别适合那些在 Cloudflare 上部署无服务器应用、需要快速调试或管理配置的团队。不过,由于它依赖多个子服务器,初次设置可能有点繁琐,建议先从 Workers Bindings 这类核心功能入手。

DevOps
4.1k

Terraform

编辑精选

by hashicorp

热门

Terraform MCP Server 是让 AI 助手直接操作 Terraform Registry 和 HCP Terraform 的桥梁。

✎ 如果你经常在 Terraform 里翻文档找模块配置,这个服务器能省不少时间——直接问 Claude 就能生成准确的代码片段。最适合管理多云基础设施的团队,但注意它目前只适合本地使用,别在生产环境里暴露 HTTP 端点。

DevOps
1.5k

评论