# CLI vs MCP **CLI (Command Line Interface)** — a text-based interface for interacting with programs and services. You type commands, get output. The lingua franca of developers and systems. **MCP (Model Context Protocol)** — Anthropic's protocol for connecting [[Large Language Model - LLMs|LLMs]] to external tools and services. Defines how agents call tools, pass inputs, and receive results. --- ## Why CLI beats MCP for agent interactions **1. Leverage** [[Large Language Model - LLMs|LLMs]] are trained on massive amounts of CLI documentation, man pages, shell scripts, and human-written tutorials. When you expose a service via CLI, [[AI agents]] and humans share the same docs and the same code. No duplication. MCP requires a separate layer that exists only for agents — doubling the maintenance burden and starting from zero on training signal. **2. LLM comprehension** LLMs understand CLI-style syntax better than structured [[API]] schemas. Research on agent tool calling shows simpler, text-based representations have significantly lower error rates. MCP's JSON-heavy structure introduces unnecessary complexity that agents fumble with. A well-documented CLI command is often clearer to an LLM than a formal MCP tool definition. **3. MCP is a weak protocol** MCP lacks strong typing, has spotty error handling, and treats auth as an afterthought. It's a young spec that's still evolving — which means building on it now means reworking things later. CLI tools, by contrast, have decades of hardening, composability (pipes, scripts, flags), and ecosystem support. --- The bet: build CLI-first, and agents can use it today while humans benefit too. MCP can come later, if ever. #ai #firstprinciple #kp