Komodo MCP Server

平台与服务

by samik081

Manage Komodo through AI assistants

什么是 Komodo MCP Server

Manage Komodo through AI assistants

README

npm version Docker image License: MIT Node.js Version

MCP Komodo

MCP server for the Komodo DevOps platform. Manage servers, stacks, deployments, builds, and more through natural language in Cursor, Claude Code, and Claude Desktop.

Features

  • 53 tools across 13 categories covering the complete Komodo DevOps API
  • Three access tiers (read-only, read-execute, full) for granular control
  • Category filtering via KOMODO_CATEGORIES to expose only the tools you need
  • Zero HTTP dependencies -- uses the official komodo_client SDK
  • Docker images for linux/amd64 and linux/arm64 on GHCR
  • Remote MCP via HTTP transport (MCP_TRANSPORT=http) using the Streamable HTTP protocol
  • TypeScript/ESM with full type safety

API Compatibility

Built for Komodo 1.19.5.

Quick Start

Run the server directly with npx:

bash
KOMODO_URL="https://komodo.example.com" \
KOMODO_API_KEY="your-api-key" \
KOMODO_API_SECRET="your-api-secret" \
npx -y @samik081/mcp-komodo

The server validates your Komodo connection on startup and fails immediately with a clear error if credentials are missing or invalid.

Docker

Run with Docker (stdio transport, same as npx):

bash
docker run --rm -i \
  -e KOMODO_URL=https://komodo.example.com \
  -e KOMODO_API_KEY=your-api-key \
  -e KOMODO_API_SECRET=your-api-secret \
  ghcr.io/samik081/mcp-komodo

To run as a remote MCP server with HTTP transport:

bash
docker run -d -p 3000:3000 \
  -e MCP_TRANSPORT=http \
  -e KOMODO_URL=https://komodo.example.com \
  -e KOMODO_API_KEY=your-api-key \
  -e KOMODO_API_SECRET=your-api-secret \
  ghcr.io/samik081/mcp-komodo

The MCP endpoint is available at http://localhost:3000 and a health check at http://localhost:3000/health.

Configuration

Claude Code CLI (recommended):

bash
# Using npx
claude mcp add --transport stdio komodo \
  --env KOMODO_URL=https://komodo.example.com \
  --env KOMODO_API_KEY=your-api-key \
  --env KOMODO_API_SECRET=your-api-secret \
  -- npx -y @samik081/mcp-komodo

# Using Docker
claude mcp add --transport stdio komodo \
  --env KOMODO_URL=https://komodo.example.com \
  --env KOMODO_API_KEY=your-api-key \
  --env KOMODO_API_SECRET=your-api-secret \
  -- docker run --rm -i ghcr.io/samik081/mcp-komodo

# Using remote HTTP (connect to a running Docker container or HTTP server)
claude mcp add --transport http komodo http://localhost:3000

JSON config (works with Claude Code .mcp.json, Claude Desktop claude_desktop_config.json, Cursor .cursor/mcp.json):

json
{
  "mcpServers": {
    "komodo": {
      "command": "npx",
      "args": ["-y", "@samik081/mcp-komodo"],
      "env": {
        "KOMODO_URL": "https://komodo.example.com",
        "KOMODO_API_KEY": "your-api-key",
        "KOMODO_API_SECRET": "your-api-secret"
      }
    }
  }
}

Docker (stdio):

json
{
  "mcpServers": {
    "komodo": {
      "command": "docker",
      "args": ["run", "--rm", "-i",
        "-e", "KOMODO_URL=https://komodo.example.com",
        "-e", "KOMODO_API_KEY=your-api-key",
        "-e", "KOMODO_API_SECRET=your-api-secret",
        "ghcr.io/samik081/mcp-komodo"
      ]
    }
  }
}

Remote MCP (connect to a running Docker container or HTTP server):

json
{
  "mcpServers": {
    "komodo": {
      "type": "streamable-http",
      "url": "http://localhost:3000"
    }
  }
}

Access Tiers

Control which tools are available using the KOMODO_ACCESS_TIER environment variable:

TierToolsDescription
full (default)53Read, execute, and write -- full control
read-execute52Read and execute -- no resource creation/deletion via write tool
read-only36Read only -- safe for exploration, no state changes

Tier details:

  • full: All 53 tools. Includes komodo_write_resource for creating, updating, and deleting Komodo resources.
  • read-execute: 52 tools. All read tools plus execute tools (deploy, pull, lifecycle, run, etc.). The komodo_write_resource tool is hidden.
  • read-only: 36 tools. List, get, logs, inspect, stats, summaries, and operation history only. All execute and write tools are hidden.

Tools that are not available in your tier are not registered with the MCP server. They will not appear in your AI tool's tool list, keeping the context clean.

Set KOMODO_ACCESS_TIER to read-only, read-execute, or full (default: full).

Environment Variables

VariableRequiredDefaultDescription
KOMODO_URLYes--URL of your Komodo Core instance
KOMODO_API_KEYYes--API key for authentication
KOMODO_API_SECRETYes--API secret for authentication
KOMODO_ACCESS_TIERNofullAccess tier: read-only, read-execute, or full
KOMODO_CATEGORIESNo(all)Comma-separated category allowlist (e.g., servers,stacks,builds)
KOMODO_TOOL_BLACKLISTNo(none)Comma-separated list of tool names to exclude (e.g., komodo_destroy_stack)
KOMODO_TOOL_WHITELISTNo(none)Comma-separated list of tool names to force-include, bypassing access tier and category filters
DEBUGNofalseEnable debug logging to stderr
MCP_TRANSPORTNostdioTransport mode: stdio (default) or http
MCP_PORTNo3000HTTP server port (only used when MCP_TRANSPORT=http)
MCP_HOSTNo0.0.0.0HTTP server bind address (only used when MCP_TRANSPORT=http)
MCP_EXCLUDE_TOOL_TITLESNofalseSet true to omit tool titles from registration (saves tokens)

Generate API keys in the Komodo UI under Settings > API Keys.

Available Categories

servers, stacks, deployments, containers, builds, repos, procedures, actions, builders, alerters, resource-syncs, updates, write

Tools

mcp-komodo provides 53 tools organized by category. Each tool's Access column shows the minimum tier required: read-only (available in all tiers), read-execute (requires read-execute or full), or full (requires full tier only). The Hints column shows tool behavior: read-only (no state changes), destructive (modifies existing state), idempotent (same result if called twice).

<details> <summary>Servers (10 tools)</summary>
ToolDescriptionAccessHints
komodo_list_serversList all servers with status and regionread-onlyread-only, idempotent
komodo_get_serverGet server configuration, status, and action stateread-onlyread-only, idempotent
komodo_get_server_statsGet CPU, memory, disk usage, and load averagesread-onlyread-only, idempotent
komodo_get_server_infoGet OS details, hardware info, and running processesread-onlyread-only, idempotent
komodo_inspect_docker_containerInspect a Docker container (equivalent to docker inspect)read-onlyread-only, idempotent
komodo_inspect_docker_imageInspect a Docker image (equivalent to docker image inspect)read-onlyread-only, idempotent
komodo_inspect_docker_networkInspect a Docker network (equivalent to docker network inspect)read-onlyread-only, idempotent
komodo_inspect_docker_volumeInspect a Docker volume (equivalent to docker volume inspect)read-onlyread-only, idempotent
komodo_prune_dockerPrune unused Docker resources on a serverread-executedestructive, idempotent
komodo_delete_docker_resourceDelete a specific Docker image, volume, or networkread-executedestructive
</details> <details> <summary>Stacks (10 tools)</summary>
ToolDescriptionAccessHints
komodo_list_stacksList all stacks with state, server, and service countread-onlyread-only, idempotent
komodo_get_stackGet stack configuration, services, and action stateread-onlyread-only, idempotent
komodo_list_stack_servicesList services in a stack with image, container state, and update availabilityread-onlyread-only, idempotent
komodo_get_stacks_summaryGet aggregate counts of all stacks by stateread-onlyread-only, idempotent
komodo_get_stack_logGet logs from stack services, with optional searchread-onlyread-only, idempotent
komodo_inspect_stack_containerInspect a container for a specific service in a stackread-onlyread-only, idempotent
komodo_deploy_stackDeploy or redeploy a stackread-executedestructive
komodo_pull_stackPull latest images without redeploying (docker compose pull)read-executeidempotent
komodo_stack_lifecycleStart, stop, restart, pause, or unpause a stackread-executedestructive
komodo_destroy_stackPermanently destroy a stackread-executedestructive
</details> <details> <summary>Deployments (9 tools)</summary>
ToolDescriptionAccessHints
komodo_list_deploymentsList all deployments with state, image, and serverread-onlyread-only, idempotent
komodo_get_deploymentGet deployment configuration, container status, and action stateread-onlyread-only, idempotent
komodo_get_deployments_summaryGet aggregate counts of all deployments by stateread-onlyread-only, idempotent
komodo_get_deployment_logGet container logs, with optional searchread-onlyread-only, idempotent
komodo_inspect_deployment_containerInspect the container for a deployment (equivalent to docker inspect)read-onlyread-only, idempotent
komodo_deploy_deploymentDeploy with latest image and configurationread-executedestructive
komodo_pull_deploymentPull latest image without redeploying (docker pull)read-executeidempotent
komodo_deployment_lifecycleStart, stop, restart, pause, or unpause a deploymentread-executedestructive
komodo_destroy_deploymentPermanently destroy a deploymentread-executedestructive
</details> <details> <summary>Containers (1 tool)</summary>
ToolDescriptionAccessHints
komodo_get_container_logGet logs from any Docker container on a serverread-onlyread-only, idempotent
</details> <details> <summary>Builds (4 tools)</summary>
ToolDescriptionAccessHints
komodo_list_buildsList all build configurations with version inforead-onlyread-only, idempotent
komodo_get_buildGet build configuration, builder, and action stateread-onlyread-only, idempotent
komodo_run_buildRun a build to create a Docker imageread-execute
komodo_cancel_buildCancel a running buildread-executedestructive, idempotent
</details> <details> <summary>Repos (3 tools)</summary>
ToolDescriptionAccessHints
komodo_list_reposList all repos with URL, server, and stateread-onlyread-only, idempotent
komodo_get_repoGet repo configuration, branch, and action stateread-onlyread-only, idempotent
komodo_repo_clone_pullClone or pull a repo on its target serverread-executedestructive
</details> <details> <summary>Procedures (3 tools)</summary>
ToolDescriptionAccessHints
komodo_list_proceduresList all procedures with stateread-onlyread-only, idempotent
komodo_get_procedureGet procedure stages, operations, and action stateread-onlyread-only, idempotent
komodo_run_procedureRun a procedure (executes all stages)read-executedestructive
</details> <details> <summary>Actions (3 tools)</summary>
ToolDescriptionAccessHints
komodo_list_actionsList all actions with stateread-onlyread-only, idempotent
komodo_get_actionGet action configuration and action stateread-onlyread-only, idempotent
komodo_run_actionRun a custom TypeScript/Deno actionread-executedestructive
</details> <details> <summary>Builders (2 tools)</summary>
ToolDescriptionAccessHints
komodo_list_buildersList all builders with typeread-onlyread-only, idempotent
komodo_get_builderGet builder type, server configuration, and stateread-onlyread-only, idempotent
</details> <details> <summary>Alerters (2 tools)</summary>
ToolDescriptionAccessHints
komodo_list_alertersList all alerters with typeread-onlyread-only, idempotent
komodo_get_alerterGet alerter endpoint type, configuration, and statusread-onlyread-only, idempotent
</details> <details> <summary>Resource Syncs (3 tools)</summary>
ToolDescriptionAccessHints
komodo_list_resource_syncsList all resource syncs with state and repo inforead-onlyread-only, idempotent
komodo_get_resource_syncGet sync configuration, managed resources, and stateread-onlyread-only, idempotent
komodo_trigger_syncTrigger a GitOps sync from the Git reporead-executedestructive
</details> <details> <summary>Updates (2 tools)</summary>
ToolDescriptionAccessHints
komodo_list_updatesList operation history with filters for resource type, target, operation, and successread-onlyread-only, idempotent
komodo_get_updateGet full operation details including logs with stdout/stderr for each stageread-onlyread-only, idempotent
</details> <details> <summary>Write (1 tool)</summary>
ToolDescriptionAccessHints
komodo_write_resourceCreate, update, or delete any Komodo resourcefulldestructive
</details>

Verify It Works

After configuring your MCP client, ask your AI assistant:

"What servers are connected to Komodo?"

If the connection is working, the assistant will call komodo_list_servers and return your servers with their current state and region.

Usage Examples

Once configured, ask your AI tool questions in natural language:

  • "List all my servers and their status" -- calls komodo_list_servers to show every server with its current state and region.

  • "What's the CPU and memory usage on server prod-01?" -- calls komodo_get_server_stats to show real-time resource utilization.

  • "Show me the logs from the production stack" -- calls komodo_get_stack_log to retrieve recent log output from all services in the stack.

  • "Deploy the frontend stack" -- calls komodo_deploy_stack to redeploy the stack with its current configuration.

  • "Why did the frontend stack deploy fail?" -- calls komodo_list_updates to find the failed deploy, then komodo_get_update to show the full logs with stdout/stderr.

  • "Pull the latest images for the monitoring stack" -- calls komodo_pull_stack to download updated images without redeploying.

  • "Create a new deployment called api-staging with image myapp:latest" -- calls komodo_write_resource to create a new Deployment resource in Komodo.

Troubleshooting

Connection refused

Check that KOMODO_URL is correct and that Komodo Core is reachable from where the MCP server is running. The server validates the connection on startup, so if it started successfully, the URL was valid at that time.

Invalid credentials / 401 Unauthorized

Verify your API key and secret are correct. Check that the key has not been revoked or expired in the Komodo UI under Settings > API Keys.

Tools not showing up

Check your access tier setting. In read-only mode, only 36 tools are registered. In read-execute mode, 52 tools are registered. Use full (or omit KOMODO_ACCESS_TIER) for all 53 tools. Check KOMODO_CATEGORIES -- only tools in listed categories are registered. Also verify the server started without errors by checking stderr output.

Development

bash
# Install dependencies
npm install

# Build the project
npm run build

# Run in development mode (auto-reload)
npm run dev

# Open the MCP Inspector for interactive testing
npm run inspect

License

MIT

常见问题

Komodo MCP Server 是什么?

Manage Komodo through AI assistants

相关 Skills

MCP构建

by anthropics

Universal
热门

聚焦高质量 MCP Server 开发,覆盖协议研究、工具设计、错误处理与传输选型,适合用 FastMCP 或 MCP SDK 对接外部 API、封装服务能力。

想让 LLM 稳定调用外部 API,就用 MCP构建:从 Python 到 Node 都有成熟指引,帮你更快做出高质量 MCP 服务器。

平台与服务
未扫描114.1k

Slack动图

by anthropics

Universal
热门

面向Slack的动图制作Skill,内置emoji/消息GIF的尺寸、帧率和色彩约束、校验与优化流程,适合把创意或上传图片快速做成可直接发送的Slack动画。

帮你快速做出适配 Slack 的动图,内置约束规则和校验工具,少踩上传与播放坑,做表情包和演示都更省心。

平台与服务
未扫描114.1k

MCP服务构建器

by alirezarezvani

Universal
热门

从 OpenAPI 一键生成 Python/TypeScript MCP server 脚手架,并校验 tool schema、命名规范与版本兼容性,适合把现有 REST API 快速发布成可生产演进的 MCP 服务。

帮你快速搭建 MCP 服务与后端 API,脚手架完善、扩展顺手,尤其适合想高效验证服务能力的开发者。

平台与服务
未扫描10.2k

相关 MCP Server

Slack 消息

编辑精选

by Anthropic

热门

Slack 是让 AI 助手直接读写你的 Slack 频道和消息的 MCP 服务器。

这个服务器解决了团队协作中需要 AI 实时获取 Slack 信息的痛点,特别适合开发团队让 Claude 帮忙汇总频道讨论或发送通知。不过,它目前只是参考实现,文档有限,不建议在生产环境直接使用——更适合开发者学习 MCP 如何集成第三方服务。

平台与服务
83.4k

by netdata

热门

io.github.netdata/mcp-server 是让 AI 助手实时监控服务器指标和日志的 MCP 服务器。

这个工具解决了运维人员需要手动检查系统状态的痛点,最适合 DevOps 团队让 Claude 自动分析性能数据。不过,它依赖 NetData 的现有部署,如果你没用过这个监控平台,得先花时间配置。

平台与服务
78.4k

by d4vinci

热门

Scrapling MCP Server 是专为现代网页设计的智能爬虫工具,支持绕过 Cloudflare 等反爬机制。

这个工具解决了爬取动态网页和反爬网站时的头疼问题,特别适合需要批量采集电商价格或新闻数据的开发者。不过,它依赖外部浏览器引擎,资源消耗较大,不适合轻量级任务。

平台与服务
35.4k

评论