Komodo MCP Server
MCP server for the Komodo build/deploy platform. Exposes 7 tools that map to Komodo's full RPC API surface — list, get, create, update, delete, execute, and logs — via the Model Context Protocol.
Setup
Prerequisites
- Node.js 22+
- A running Komodo instance with API access
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
KOMODO_BASE_URL |
Yes | http://10.10.2.114:9120 |
Base URL of your Komodo instance |
KOMODO_USERNAME |
Yes | — | Komodo login username |
KOMODO_PASSWORD |
Yes | — | Komodo login password |
PORT |
No | 9800 |
Port for the HTTP/SSE transport |
KOMODO_URL is accepted as a legacy alias for KOMODO_BASE_URL.
Install & Build
npm install
npm run build
Run
npm start
Or for development with live reload:
npm run dev
The server starts on http://0.0.0.0:9800/mcp with a health check at /health.
MCP Client Configuration
Add to your MCP client config (e.g. mcp.json or equivalent):
{
"mcpServers": {
"komodo": {
"url": "http://localhost:9800/mcp"
}
}
}
Tools
komodo_list
List or search Komodo resources.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
enum | Yes | Resource type (see below) |
search |
string | No | Search query — uses Search* endpoint instead of List* |
project |
string | No | Filter by project name or ID |
Returns a JSON array of matching resources.
komodo_get
Get a single resource by ID or name.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
enum | Yes | Resource type |
id |
string | Yes | Resource ID or name |
komodo_create
Create a new resource.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
enum | Yes | Resource type |
params |
object | No | Fields for the corresponding Create* endpoint |
Available for: stack, build, server, procedure, deployment, alerter, image_registry_account, sync_resource, tag.
komodo_update
Update an existing resource by ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
enum | Yes | Resource type |
id |
string | Yes | Resource ID or name |
params |
object | No | Fields to update |
komodo_delete
Delete a resource by ID or name.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
enum | Yes | Resource type |
id |
string | Yes | Resource ID or name |
Available for: stack, build, server, procedure, deployment, alerter, sync_resource, tag.
komodo_execute
Execute a Komodo operation (build, deploy, procedure run, server actions, etc.).
| Parameter | Type | Required | Description |
|---|---|---|---|
operation |
enum | Yes | Operation to run (see below) |
id |
string | No | Resource ID or name |
params |
object | No | Additional operation parameters |
Operations:
| Operation | Description |
|---|---|
run_build |
Trigger a build |
deploy_stack |
Deploy a stack |
deploy_stack_service |
Deploy a single stack service |
run_procedure |
Run a procedure |
run_procedure_stage |
Run a specific procedure stage |
run_deployment_action |
Run a deployment action |
run_deployment_sync |
Sync a deployment |
run_resource_sync |
Run a resource sync |
run_stack_refresh_cache |
Refresh stack cache |
run_stack_refresh_content |
Refresh stack content |
run_stack_pull |
Pull stack (git pull) |
run_stack_pull_deployment |
Pull and deploy stack |
run_stack_stop |
Stop a stack |
run_stack_restart |
Restart a stack |
run_stack_pause |
Pause a stack |
run_stack_unpause |
Unpause a stack |
run_stack_remove_orphan_containers |
Remove orphan containers |
run_stack_toggle_service_dependencies |
Toggle service dependencies |
run_stack_auto_update |
Trigger auto-update |
run_stack_commit |
Commit stack changes |
run_server_refresh |
Refresh server state |
run_server_refresh_containers |
Refresh server containers |
run_server_update_periphery |
Update periphery |
run_server_prune_images |
Prune server images |
run_server_prune_containers |
Prune server containers |
run_server_prune_networks |
Prune server networks |
run_server_stats |
Get server stats |
run_server_run_command |
Run a command on server |
run_server_scripts |
Run server scripts |
run_server_copy |
Copy between servers |
run_server_move |
Move between servers |
run_deployment_execute |
Execute a deployment |
run_deployment_redeploy |
Redeploy a deployment |
run_deployment_destroy |
Destroy a deployment |
run_deployment_stop |
Stop a deployment |
run_deployment_logs |
Get deployment logs via execute |
run_sync_deployment |
Sync a deployment |
get_mcp_token |
Get an MCP token |
komodo_logs
Get logs for a deployment or stack.
| Parameter | Type | Required | Description |
|---|---|---|---|
resource_type |
enum | Yes | deployment or stack |
id |
string | Yes | Resource ID or name |
tail |
number | No | Number of recent log lines |
Resource Types
All tools that accept resource_type support these values:
| Value | Komodo Resource |
|---|---|
stack |
Docker Compose stacks |
build |
Build configurations |
server |
Managed servers |
procedure |
Automation procedures |
deployment |
Deployments |
alerter |
Alert configurations |
image_registry_account |
Container registry accounts |
sync_resource |
Sync resources |
user |
Users |
tag |
Tags |
execution |
Execution history |
access_request |
Access requests |
Architecture
- Transport: HTTP/SSE via
StreamableHTTPServerTransport(MCP protocol) - Auth: JWT login via
POST /auth/login, token cached in memory, auto-refreshed on 401 - API: Komodo RPC-style — all calls are
POST /{read|write|execute}/{RequestName} - No REST paths: The server does not use REST-style paths (
/servers,/api/servers) which serve SPA HTML
License
Private — BuzzbeeSCD