Tool Categories
The tools are organized into functional groups that mirror the Dokploy platform structure:Project Management
6 tools for creating, managing, and organizing projects
Application Management
26 tools for deploying and managing containerized applications
Domain Management
9 tools for configuring domains, SSL certificates, and routing
PostgreSQL Management
13 tools for PostgreSQL database lifecycle and configuration
MySQL Management
13 tools for MySQL database lifecycle and configuration
Category Breakdown
Project Management (6 tools)
Projects are the top-level organizational unit in Dokploy. These tools allow you to:- List and retrieve project information
- Create new projects with custom configurations
- Update project settings and environment variables
- Duplicate projects with service selection
- Remove projects and all associated resources
project-all, project-create, project-duplicate, project-remove
Application Management (26 tools)
Applications are containerized workloads deployed from various sources (Git, Docker). This category includes: Core Operations: Create, read, update, delete applications Deployment & Lifecycle: Deploy, redeploy, start, stop, reload applications Git Provider Configuration: Connect to GitHub, GitLab, Bitbucket, Gitea, or custom Git Build Configuration: Set build types (Dockerfile, Nixpacks, Buildpacks, Heroku) Environment & Networking: Manage environment variables, Traefik routing, monitoring Key Tools:application-create, application-deploy, application-saveGithubProvider, application-saveEnvironment
Domain Management (9 tools)
Domains handle routing, SSL/TLS certificates, and external access. These tools provide:- Domain association with applications and compose services
- SSL certificate management (Let’s Encrypt, custom certificates)
- Domain validation and DNS checking
- Automatic domain generation and suggestions
- Preview deployment domain configuration
domain-create, domain-update, domain-validateDomain, domain-generateDomain
PostgreSQL Management (13 tools)
Complete PostgreSQL database lifecycle management:- Database creation with custom configurations
- Deployment and container management
- Start, stop, reload, rebuild operations
- External port exposure
- Environment variable configuration
- Status management
- Project migration
postgres-create, postgres-deploy, postgres-saveExternalPort, postgres-saveEnvironment
MySQL Management (13 tools)
Identical capabilities to PostgreSQL, tailored for MySQL:- MySQL-specific features like root password management
- Default image:
mysql:8 - All lifecycle and configuration operations
- Compatible with MariaDB deployments
mysql-create, mysql-deploy, mysql-saveExternalPort, mysql-saveEnvironment
Tool Organization in Code
Tools are organized in the source code undersrc/mcp/tools/ with the following structure:
createTool factory from toolFactory.ts, which provides:
- Zod schema validation for input parameters
- Error handling with detailed messages
- Semantic annotations for AI safety (see Tool Annotations)
- Response formatting with structured output
General Usage Pattern
MCP clients (like Claude Desktop, Cline, or custom MCP clients) invoke tools using this pattern:Example: Create and Deploy Application
Authentication Requirements
All tools require authentication to communicate with the Dokploy API:The MCP server automatically handles authentication using environment variables. Ensure these are configured before using any tools.
How Authentication Works
- The
apiClientutility (insrc/utils/apiClient.ts) reads these environment variables - Each tool request includes the API key in the
Authorizationheader - Invalid credentials return a
401 Unauthorizederror with helpful messages - The API key must have appropriate permissions for the requested operations
Tool Response Format
All tools return responses in a consistent format:ResponseFormatter utility (in src/utils/responseFormatter.ts) ensures consistent formatting:
- Success responses include descriptive messages and data
- Error responses provide context and troubleshooting guidance
- Data is formatted as readable JSON when appropriate
Understanding Tool Annotations
Every tool includes semantic annotations that help AI systems understand tool behavior and safety characteristics:- readOnlyHint: Tool only reads data, makes no modifications
- destructiveHint: Tool modifies or deletes resources irreversibly
- idempotentHint: Tool can be safely retried with same result
- openWorldHint: Tool interacts with external systems (Dokploy API)
Error Handling
The tool framework provides comprehensive error handling:Validation Errors
Zod schema validation catches invalid input before API calls:API Errors
Specific handling for common HTTP errors:- 401 Unauthorized: Invalid or missing API key
- 404 Not Found: Resource doesn’t exist
- 500 Internal Server Error: Dokploy server error
Next Steps
Tool Annotations
Learn about semantic annotations for AI safety
Project Tools
Explore project management tools
Application Tools
Discover application deployment tools
Getting Started
Set up the MCP server