start-application
Initiate a specific application by its UUID to make it available for use. Supports application management operations on the Coolify MCP Server via the Coolify API.
Instructions
Start a specific application using its UUID. This initiates the application and makes it available for use.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | Resource UUID |
Implementation Reference
- src/index.ts:180-189 (handler)The execution handler for the 'start-application' tool. It validates the input UUID using UuidSchema, calls the Coolify API endpoint `/applications/{uuid}/start`, and returns the API response as formatted JSON text.case "start-application": { const { uuid } = UuidSchema.parse(request.params.arguments); const result = await coolifyApiCall(`/applications/${uuid}/start`); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] }; }
- src/index.ts:50-52 (schema)Zod schema defining the input parameters for the 'start-application' tool, requiring a single 'uuid' string field.const UuidSchema = z.object({ uuid: z.string().describe("Resource UUID"), });
- src/index.ts:98-102 (registration)Tool registration in the ListTools response, specifying the name, description, and input schema for 'start-application'.{ name: "start-application", description: "Start a specific application using its UUID. This initiates the application and makes it available for use.", inputSchema: zodToJsonSchema(UuidSchema), },
- src/index.ts:24-47 (helper)Reusable helper function for making authenticated HTTP requests to the Coolify API, used by the 'start-application' handler and other tools.async function coolifyApiCall(endpoint: string, method: string = 'GET', body?: any): Promise<any> { const baseUrl = process.env.COOLIFY_BASE_URL?.replace(/\/$/, '') || 'https://coolify.stuartmason.co.uk'; const url = `${baseUrl}/api/v1${endpoint}`; const response = await fetch(url, { method, headers: { 'Authorization': `Bearer ${process.env.COOLIFY_ACCESS_TOKEN}`, 'Content-Type': 'application/json', }, body: body ? JSON.stringify(body) : undefined, }); if (!response.ok) { const errorBody = await response.json().catch(() => ({})); throw new Error(JSON.stringify({ error: `Coolify API error: ${response.status} ${response.statusText}`, status: response.status, details: errorBody })); } return await response.json(); }