
myrikld/komodo-mcp
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Komodo MCP 서버
개요
Komodo DevOps 플랫폼의 Python MCP (모델 Context Protocol) 서버. 서버, 컨테이너, 스택, 빌드 등을 관리하고, Claude와 같은 AI 조수에서 직접 관리합니다. 서버는 Streamable HTTP 엔드포인트를 /에 노출합니다. 서버는 브라우저 기반 로그인 페이지로 OAuth 2.1을 지원합니다. OAuth가 활성화되면 MCP 클라이언트는 액세스 토큰을 받기 전에 로그인 양식으로 리디렉션됩니다. OAuth가 활성화되면 서버는 표준 OAuth 2.1 엔드포인트를 노출시킵니다. : MCP 클라이언트 → /authorize → 브라우저 opens /login → user enter the password → client receives JWT access token (1h) + 새로 고침 토큰 (30d). OAuth가 없다면 서버는 인증 없이 모든 연결을 허용합니다. 서버는 세션 상태를 유지하지 않습니다. — 요구되는 볼륨 없음: - 액세스 및 새로 고침 토큰은 자체 합의 된 JWTs입니다. - 등록된 클라이언트의 메타데이터는 클라이언트 id 내부에서 수행되며, 서명된 JWT입니다.
개요(AI 번역)
Komodo DevOps 플랫폼의 Python MCP (모델 Context Protocol) 서버. 서버, 컨테이너, 스택, 빌드 등을 관리하고, Claude와 같은 AI 조수에서 직접 관리합니다.
FastMCP, uvicorn 및 httpx로 내장.
빠른 시작 (Docker Compose)
MCP 클라이언트에 연결
서버는 /]에서 Streamable HTTP endpoint를 노출합니다.
** 코드** (CLI):
**Claude 데스크톱 ** (claude_desktop_config.json):
인증
서버는 브라우저 기반 로그인 페이지로 OAuth 2.1을 지원합니다. OAuth가 활성화되면 MCP 클라이언트는 액세스 토큰을 받기 전에 로그인 양식으로 리디렉션됩니다.
# OAuth 활성화
모든 세 변수를 설정:
OAuth가 활성화되면 서버는 표준 OAuth 2.1 엔드포인트를 노출시킵니다.
| 엔드포인트 | 설명 |
|---|---|
| [T2] | 오아우트 메타데이터 검색 |
| [T3] | 동적인 클라이언트 등록 (RFC 7591) |
/authorize |
Authorization endpoint – /login로 리디렉션 |
| [T6] | 비밀번호 로그인 페이지(browser) |
| [T7] | 토큰 엔드포인트 |
| [T8] | 토큰 재발견 |
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
Komodo MCP Server
A Python MCP (Model Context Protocol) server for the Komodo DevOps platform. Manage your servers, containers, stacks, builds, and more — directly from AI assistants like Claude.
Built with FastMCP, uvicorn, and httpx.
Quick Start (Docker Compose)
services:
komodo-mcp:
image: ghcr.io/myrikld/komodo-mcp:latest
ports:
- "8000:8000"
environment:
- KOMODO_MCP_KOMODO_URL=https://your-komodo-instance.example.com
- KOMODO_MCP_KOMODO_API_KEY=your_api_key
- KOMODO_MCP_KOMODO_API_SECRET=your_api_secret
restart: unless-stopped
docker compose up -d
Connect to MCP Client
The server exposes a Streamable HTTP endpoint at /.
Claude Code (CLI):
claude mcp add -s user --transport http komodo http://localhost:8000/
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"komodo": {
"type": "http",
"url": "http://localhost:8000/"
}
}
}
Authentication
The server supports OAuth 2.1 with a browser-based login page. When OAuth is enabled, MCP clients are redirected to a login form before receiving an access token.
Enabling OAuth
Set all three variables:
KOMODO_MCP_OAUTH_JWT_SECRET=
KOMODO_MCP_OAUTH_PASSWORD=
KOMODO_MCP_BASE_URL=https://mcp.example.com # public URL of this server
When OAuth is active, the server exposes standard OAuth 2.1 endpoints:
| Endpoint | Description |
|---|---|
/.well-known/oauth-authorization-server |
OAuth metadata discovery |
/register |
Dynamic Client Registration (RFC 7591) |
/authorize |
Authorization endpoint — redirects to /login |
/login |
Password login page (browser) |
/token |
Token endpoint |
/revoke |
Token revocation |
Flow: MCP client → /authorize → browser opens /login → user enters password → client receives JWT access token (1h) + refresh token (30d).
Without OAuth configured, the server accepts all connections without authentication.
Restarts
The server keeps no session state, so restarting it does not log clients out — no volume required:
- Access and refresh tokens are self-contained JWTs, validated from their own signed claims.
- A registered client’s metadata is carried inside its
client_id, which is itself a signed JWT. - Everything is signed with a key derived from
KOMODO_MCP_OAUTH_JWT_SECRET. Keep that secret stable: changing it invalidates all tokens and client registrations, forcing every client to authorize again.
설치
This server does not publish a one-line install command.
Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →설정
{
"mcpServers": {
"komodo": {
"type": "http",
"url": "http://localhost:8000/"
}
}
}