@masonator/coolify-mcp 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -227,7 +227,7 @@ These tools accept human-friendly identifiers instead of just UUIDs:
227
227
  - `list_applications` - List all applications (returns summary)
228
228
  - `get_application` - Get application details
229
229
  - `application_logs` - Get application logs
230
- - `application` - Create, update, or delete apps with `action: create_github|create_key|update|delete`
230
+ - `application` - Create, update, or delete apps with `action: create_public|create_github|create_key|create_dockerimage|update|delete`
231
231
  - `env_vars` - Manage env vars with `resource: application, action: list|create|update|delete`
232
232
  - `control` - Start/stop/restart with `resource: application, action: start|stop|restart`
233
233
 
@@ -52,6 +52,7 @@ describe('CoolifyMcpServer v2', () => {
52
52
  // Application operations
53
53
  expect(typeof client.listApplications).toBe('function');
54
54
  expect(typeof client.getApplication).toBe('function');
55
+ expect(typeof client.createApplicationPublic).toBe('function');
55
56
  expect(typeof client.createApplicationPrivateGH).toBe('function');
56
57
  expect(typeof client.createApplicationPrivateKey).toBe('function');
57
58
  expect(typeof client.createApplicationDockerImage).toBe('function');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Coolify MCP Server v2.2.0
2
+ * Coolify MCP Server v2.3.0
3
3
  * Consolidated tools for efficient token usage
4
4
  */
5
5
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
@@ -1,12 +1,12 @@
1
1
  /**
2
- * Coolify MCP Server v2.2.0
2
+ * Coolify MCP Server v2.3.0
3
3
  * Consolidated tools for efficient token usage
4
4
  */
5
5
  /* eslint-disable @typescript-eslint/no-explicit-any */
6
6
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
7
7
  import { z } from 'zod';
8
8
  import { CoolifyClient, } from './coolify-client.js';
9
- const VERSION = '2.2.0';
9
+ const VERSION = '2.3.0';
10
10
  /** Wrap handler with error handling */
11
11
  function wrap(fn) {
12
12
  return fn()
@@ -162,7 +162,14 @@ export class CoolifyMcpServer extends McpServer {
162
162
  this.tool('list_applications', 'List apps (summary)', { page: z.number().optional(), per_page: z.number().optional() }, async ({ page, per_page }) => wrap(() => this.client.listApplications({ page, per_page, summary: true })));
163
163
  this.tool('get_application', 'App details', { uuid: z.string() }, async ({ uuid }) => wrap(() => this.client.getApplication(uuid)));
164
164
  this.tool('application', 'Manage app: create/update/delete', {
165
- action: z.enum(['create_github', 'create_key', 'create_dockerimage', 'update', 'delete']),
165
+ action: z.enum([
166
+ 'create_public',
167
+ 'create_github',
168
+ 'create_key',
169
+ 'create_dockerimage',
170
+ 'update',
171
+ 'delete',
172
+ ]),
166
173
  uuid: z.string().optional(),
167
174
  // Create fields
168
175
  project_uuid: z.string().optional(),
@@ -172,6 +179,7 @@ export class CoolifyMcpServer extends McpServer {
172
179
  git_repository: z.string().optional(),
173
180
  git_branch: z.string().optional(),
174
181
  environment_name: z.string().optional(),
182
+ environment_uuid: z.string().optional(),
175
183
  build_pack: z.string().optional(),
176
184
  ports_exposes: z.string().optional(),
177
185
  // Docker image fields
@@ -199,6 +207,23 @@ export class CoolifyMcpServer extends McpServer {
199
207
  }, async (args) => {
200
208
  const { action, uuid } = args;
201
209
  switch (action) {
210
+ case 'create_public':
211
+ if (!args.project_uuid ||
212
+ !args.server_uuid ||
213
+ !args.git_repository ||
214
+ !args.git_branch ||
215
+ !args.build_pack ||
216
+ !args.ports_exposes) {
217
+ return {
218
+ content: [
219
+ {
220
+ type: 'text',
221
+ text: 'Error: project_uuid, server_uuid, git_repository, git_branch, build_pack, ports_exposes required',
222
+ },
223
+ ],
224
+ };
225
+ }
226
+ return wrap(() => this.client.createApplicationPublic(args));
202
227
  case 'create_github':
203
228
  if (!args.project_uuid ||
204
229
  !args.server_uuid ||
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@masonator/coolify-mcp",
3
3
  "scope": "@masonator",
4
- "version": "2.2.0",
4
+ "version": "2.3.0",
5
5
  "description": "MCP server implementation for Coolify",
6
6
  "type": "module",
7
7
  "main": "./dist/index.js",