@masonator/coolify-mcp 0.3.1 → 0.7.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
@@ -6,17 +6,19 @@ A Model Context Protocol (MCP) server for [Coolify](https://coolify.io/), enabli
6
6
 
7
7
  ## Features
8
8
 
9
- This MCP server provides 46 tools focused on **debugging, management, and deployment**:
10
-
11
- | Category | Tools |
12
- | ---------------- | -------------------------------------------------------------------------------------------------------- |
13
- | **Servers** | list, get, validate, resources, domains |
14
- | **Projects** | list, get, create, update, delete |
15
- | **Environments** | list, get, create, delete |
16
- | **Applications** | list, get, update, delete, start, stop, restart, logs, env vars (CRUD), create (private-gh, private-key) |
17
- | **Databases** | list, get, start, stop, restart |
18
- | **Services** | list, get, start, stop, restart, env vars (list, create, delete) |
19
- | **Deployments** | list, get, deploy, list by application |
9
+ This MCP server provides **58 tools** focused on **debugging, management, and deployment**:
10
+
11
+ | Category | Tools |
12
+ | ------------------ | -------------------------------------------------------------------------------------------------------- |
13
+ | **Infrastructure** | overview (all resources at once) |
14
+ | **Servers** | list, get, validate, resources, domains |
15
+ | **Projects** | list, get, create, update, delete |
16
+ | **Environments** | list, get, create, delete |
17
+ | **Applications** | list, get, update, delete, start, stop, restart, logs, env vars (CRUD), create (private-gh, private-key) |
18
+ | **Databases** | list, get, start, stop, restart, backups (list, get), backup executions (list, get) |
19
+ | **Services** | list, get, create, update, delete, start, stop, restart, env vars (list, create, delete) |
20
+ | **Deployments** | list, get, deploy, cancel, list by application |
21
+ | **Private Keys** | list, get, create, update, delete |
20
22
 
21
23
  ## Installation
22
24
 
@@ -49,27 +51,77 @@ Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_
49
51
 
50
52
  ```bash
51
53
  claude mcp add coolify \
52
- --env COOLIFY_BASE_URL="https://your-coolify-instance.com" \
53
- --env COOLIFY_ACCESS_TOKEN="your-api-token" \
54
- -- npx -y @masonator/coolify-mcp
54
+ -e COOLIFY_BASE_URL="https://your-coolify-instance.com" \
55
+ -e COOLIFY_ACCESS_TOKEN="your-api-token" \
56
+ -- npx @masonator/coolify-mcp@latest
55
57
  ```
56
58
 
59
+ > **Note:** Use `@latest` tag (not `-y` flag) for reliable startup in Claude Code CLI.
60
+
57
61
  ### Cursor
58
62
 
59
63
  ```bash
60
64
  env COOLIFY_ACCESS_TOKEN=your-api-token COOLIFY_BASE_URL=https://your-coolify-instance.com npx -y @masonator/coolify-mcp
61
65
  ```
62
66
 
67
+ ## Context-Optimized Responses
68
+
69
+ ### Why This Matters
70
+
71
+ The Coolify API returns extremely verbose responses - a single application can contain 91 fields including embedded 3KB server objects and 47KB docker-compose files. When listing 20+ applications, responses can exceed 200KB, which quickly exhausts the context window of AI assistants like Claude Desktop.
72
+
73
+ **This MCP server solves this by returning optimized summaries by default.**
74
+
75
+ ### How It Works
76
+
77
+ | Tool Type | Returns | Use Case |
78
+ | ----------------------------- | ---------------------------------------- | ----------------------------------- |
79
+ | `list_*` | Summaries only (uuid, name, status, etc) | Discovery, finding resources |
80
+ | `get_*` | Full details for a single resource | Deep inspection, debugging |
81
+ | `get_infrastructure_overview` | All resources summarized in one call | Start here to understand your setup |
82
+
83
+ ### Response Size Comparison
84
+
85
+ | Endpoint | Full Response | Summary Response | Reduction |
86
+ | ----------------- | ------------- | ---------------- | --------- |
87
+ | list_applications | ~170KB | ~4.4KB | **97%** |
88
+ | list_services | ~367KB | ~1.2KB | **99%** |
89
+ | list_servers | ~4KB | ~0.4KB | **90%** |
90
+
91
+ ### Recommended Workflow
92
+
93
+ 1. **Start with overview**: `get_infrastructure_overview` - see everything at once
94
+ 2. **Find your target**: `list_applications` - get UUIDs of what you need
95
+ 3. **Dive deep**: `get_application(uuid)` - full details for one resource
96
+ 4. **Take action**: `restart_application(uuid)`, `get_application_logs(uuid)`, etc.
97
+
98
+ ### Pagination
99
+
100
+ All list endpoints still support optional pagination for very large deployments:
101
+
102
+ ```bash
103
+ # Get page 2 with 10 items per page
104
+ list_applications(page=2, per_page=10)
105
+ ```
106
+
63
107
  ## Example Prompts
64
108
 
109
+ ### Getting Started
110
+
111
+ ```
112
+ Give me an overview of my infrastructure
113
+ Show me all my applications
114
+ What's running on my servers?
115
+ ```
116
+
65
117
  ### Debugging & Monitoring
66
118
 
67
119
  ```
68
- Show me all servers and their status
69
- What resources are running on server {uuid}?
70
120
  Get the logs for application {uuid}
121
+ What's the status of application {uuid}?
71
122
  What environment variables are set for application {uuid}?
72
123
  Show me recent deployments for application {uuid}
124
+ What resources are running on server {uuid}?
73
125
  ```
74
126
 
75
127
  ### Application Management
@@ -119,10 +171,14 @@ node dist/index.js
119
171
 
120
172
  ## Available Tools
121
173
 
122
- ### Servers
174
+ ### Infrastructure
123
175
 
124
176
  - `get_version` - Get Coolify API version
125
- - `list_servers` - List all servers
177
+ - `get_infrastructure_overview` - Get a high-level overview of all infrastructure (servers, projects, applications, databases, services)
178
+
179
+ ### Servers
180
+
181
+ - `list_servers` - List all servers (returns summary)
126
182
  - `get_server` - Get server details
127
183
  - `get_server_resources` - Get resources running on a server
128
184
  - `get_server_domains` - Get domains configured on a server
@@ -130,7 +186,7 @@ node dist/index.js
130
186
 
131
187
  ### Projects
132
188
 
133
- - `list_projects` - List all projects
189
+ - `list_projects` - List all projects (returns summary)
134
190
  - `get_project` - Get project details
135
191
  - `create_project` - Create a new project
136
192
  - `update_project` - Update a project
@@ -145,7 +201,7 @@ node dist/index.js
145
201
 
146
202
  ### Applications
147
203
 
148
- - `list_applications` - List all applications
204
+ - `list_applications` - List all applications (returns summary)
149
205
  - `get_application` - Get application details
150
206
  - `create_application_private_gh` - Create app from private GitHub repo (GitHub App)
151
207
  - `create_application_private_key` - Create app from private repo using deploy key
@@ -162,16 +218,23 @@ node dist/index.js
162
218
 
163
219
  ### Databases
164
220
 
165
- - `list_databases` - List all databases
221
+ - `list_databases` - List all databases (returns summary)
166
222
  - `get_database` - Get database details
167
223
  - `start_database` - Start a database
168
224
  - `stop_database` - Stop a database
169
225
  - `restart_database` - Restart a database
226
+ - `list_database_backups` - List scheduled backups for a database
227
+ - `get_database_backup` - Get details of a scheduled backup
228
+ - `list_backup_executions` - List execution history for a scheduled backup
229
+ - `get_backup_execution` - Get details of a specific backup execution
170
230
 
171
231
  ### Services
172
232
 
173
- - `list_services` - List all services
233
+ - `list_services` - List all services (returns summary)
174
234
  - `get_service` - Get service details
235
+ - `create_service` - Create a one-click service (e.g., pocketbase, mysql, redis, wordpress)
236
+ - `update_service` - Update a service
237
+ - `delete_service` - Delete a service
175
238
  - `start_service` - Start a service
176
239
  - `stop_service` - Stop a service
177
240
  - `restart_service` - Restart a service
@@ -181,11 +244,20 @@ node dist/index.js
181
244
 
182
245
  ### Deployments
183
246
 
184
- - `list_deployments` - List running deployments
247
+ - `list_deployments` - List running deployments (returns summary)
185
248
  - `get_deployment` - Get deployment details
186
249
  - `deploy` - Deploy by tag or UUID
250
+ - `cancel_deployment` - Cancel a running deployment
187
251
  - `list_application_deployments` - List deployments for an application
188
252
 
253
+ ### Private Keys
254
+
255
+ - `list_private_keys` - List all private keys (SSH keys for deployments)
256
+ - `get_private_key` - Get private key details
257
+ - `create_private_key` - Create a new private key for deployments
258
+ - `update_private_key` - Update a private key
259
+ - `delete_private_key` - Delete a private key
260
+
189
261
  ## Contributing
190
262
 
191
263
  Contributions welcome! Please open an issue first to discuss major changes.