ArchitectureMCP Server

MCP Server

The MCP Server exposes typed tools via the Model Context Protocol. Built with FastMCP, it registers 64 tools with @mcp.tool() decorators. Tool execution is schema-validated. Execution runs inside the MCP server container.

Tool Categories

CategoryCountDescription
kubectl22Discovery, logs, exec, apply, diff, scale, rollout
helm16Search, install, upgrade, rollback, list, status
Argo Rollouts13Pause, resume, promote, abort, retry
Jenkins CI13Jobs, builds, logs, SCM, identity

Execution Model

  • CLI tools (kubectl, helm): Run as async subprocesses. Output captured and returned to the Engine.
  • Jenkins: Uses httpx client. Credentials resolved from Kubernetes Secrets. Secure auth and CSRF handling.

Tool Annotations

Tools use annotations to drive approval policy:

  • readOnlyHint: Read-only tool. No approval required. Executes immediately.
  • destructiveHint: Mutating or destructive. Requires explicit approval before execution.

The Engine checks these hints and routes mutating tools through the approval gate.

Transport

Streamable HTTP transport for Engine communication. Pydantic-validated parameters with Field descriptions for schema generation.

Health Check

GET /mcp/v1/health returns server status. Used by the Engine and Controller for liveness probes.