Tool calls
Despite the suggestive terminology, a language model cannot directly execute code, open network sockets, query databases, or modify files. When a model "calls a tool", it simply outputs structured text—typically a JSON block specifying a function name and key-value arguments. The responsibility for executing that request falls entirely upon the calling application.
Skills, plugins, and MCP
Discussions around extending AI coding assistants often treat skills, plugins, and the Model Context Protocol (MCP) as interchangeable ways of doing the same thing. In reality, they represent three fundamentally distinct architectural layers: prompt instructions, packaging, and external running processes. Distinguishing between them helps clarify how an agent acquires new context versus entirely new capabilities.
MCP in depth
The Model Context Protocol (MCP) is an open standard designed to decouple AI applications from the external tools, data sources, and services they interact with. Rather than building bespoke integrations between every tool and every assistant, MCP establishes a client-server architecture: servers publish their capabilities, clients connect to discover and invoke them, and neither side needs bespoke knowledge of the other. This guide examines how the protocol works, its architectural roles and network transports, session initialization mechanics, authentication patterns, and real-world operational costs.