create_project
Create a new project with a name and optional description to organize your deployments and resources in Coolify.
Instructions
Create a new project
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Project name | |
| description | No | Project description |
Implementation Reference
- src/tools/handlers.ts:113-115 (handler)Handler case for 'create_project': validates the 'name' parameter is required, then POSTs to the /projects endpoint via the CoolifyClient.
case 'create_project': requireParam(args, 'name'); return client.post('/projects', args); - src/types.ts:122-125 (schema)TypeScript interface CreateProjectInput defining the input schema: name (required string) and description (optional string).
export interface CreateProjectInput { name: string; description?: string; } - src/tools/definitions.ts:218-229 (registration)Tool definition registration for 'create_project' with name, description, and inputSchema specifying name (required) and description (optional).
{ name: 'create_project', description: 'Create a new project', inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'Project name' }, description: { type: 'string', description: 'Project description' } }, required: ['name'] } }, - src/tools/handlers.ts:527-531 (helper)Helper function requireParam used by the handler to validate that required parameters like 'name' are present in the args.
function requireParam(args: ToolArgs, param: string): void { if (!args[param]) { throw new McpError(ErrorCode.InvalidParams, `${param} is required`); } }