create_service
Create a new service in Coolify by specifying type, name, project, environment, and server to deploy applications or databases.
Instructions
Create a new service
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | Service type | |
| name | Yes | Service name | |
| project_uuid | Yes | Project UUID | |
| environment_name | Yes | Environment name | |
| server_uuid | Yes | Server UUID |
Implementation Reference
- src/tools/handlers.ts:296-302 (handler)Handler implementation for the 'create_service' tool. Validates required parameters and sends a POST request to the Coolify API endpoint '/services' to create the service.case 'create_service': requireParam(args, 'type'); requireParam(args, 'name'); requireParam(args, 'project_uuid'); requireParam(args, 'environment_name'); requireParam(args, 'server_uuid'); return client.post('/services', args);
- src/types.ts:141-148 (schema)TypeScript interface defining the input parameters for the create_service tool.export interface CreateServiceInput { type: string; name: string; project_uuid: string; environment_name: string; server_uuid: string; destination_uuid?: string; }
- src/tools/definitions.ts:520-533 (registration)Tool registration in the definitions array, including name, description, and JSON input schema for MCP tool protocol.name: 'create_service', description: 'Create a new service', inputSchema: { type: 'object', properties: { type: { type: 'string', description: 'Service type' }, name: { type: 'string', description: 'Service name' }, project_uuid: { type: 'string', description: 'Project UUID' }, environment_name: { type: 'string', description: 'Environment name' }, server_uuid: { type: 'string', description: 'Server UUID' } }, required: ['type', 'name', 'project_uuid', 'environment_name', 'server_uuid'] } },
- src/tools/definitions.ts:520-533 (schema)JSON schema for input validation of the create_service tool, used in MCP registration.name: 'create_service', description: 'Create a new service', inputSchema: { type: 'object', properties: { type: { type: 'string', description: 'Service type' }, name: { type: 'string', description: 'Service name' }, project_uuid: { type: 'string', description: 'Project UUID' }, environment_name: { type: 'string', description: 'Environment name' }, server_uuid: { type: 'string', description: 'Server UUID' } }, required: ['type', 'name', 'project_uuid', 'environment_name', 'server_uuid'] } },