feat: kubectl-style CLI + Deployment/Pod model #5
Reference in New Issue
Block a user
Delete Branch "feat/kubectl-deployment-model"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Refactors the CLI to follow kubectl patterns and introduces a Deployment/Pod model for servers and instances.
Server = Deployment — defines what to run (image, command, env, transport) + desired
replicasInstance = Pod — ephemeral, automatically created/maintained to match the server's replica count
Backend Changes
replicasfield to McpServer (default 1)reconcile()to InstanceService — scales instances up/down to match desired replicasCLI Changes
mcpctl delete <resource> <id>— generic deletion with name resolutionmcpctl logs <instance-id>— top-level logs commandinstancecompound command (useget/delete/logs)projectcommand (list/show/delete → top-levelget/describe/delete)describe instanceenriched with container inspect infoapplysupportsreplicasfield in server specsKey Behaviors
replicas: 0stops all instances without removing the server definitionTest Plan
🤖 Generated with Claude Code