照見JOGYEON
Essays

Why MCP Matters: Standardizing Software Connectivity Over AI Intelligence

Published
what-is-mcp-and-why-it-matters - hero

1. It Already Worked: Why Introduce a New Protocol?

To developers who regularly rely on modern AI coding assistants like Codex or Cursor, the term "Model Context Protocol (MCP)" can feel surprisingly elusive.

We already command AI models to perform complex tasks: reading source files, running terminal test suites, analyzing Git history, and searching web documentation. Having already experienced an AI with hands and feet, Anthropic’s unveiling of MCP as an era-defining breakthrough triggers a reasonable skepticism.

Why do we need a brand-new protocol when APIs and function calling have handled external operations for years? Is MCP mere marketing hype, or does it represent an indispensable architectural milestone?

From a purely surface user perspective, the experience of an AI using a tool remains largely unchanged. MCP does not miraculously augment the raw reasoning capabilities of an LLM, nor does it invent previously impossible capabilities out of thin air.

The true essence of MCP is not about AI intelligence. It is about standardizing interoperability between heterogeneous AI hosts and external software ecosystems.

Underlying Mechanism: While Function Calling is the cognitive mechanism by which a model chooses which tool to invoke, and APIs are the proprietary endpoints where actual operations execute, MCP (Model Context Protocol) is the universal communication contract enabling N AI hosts and M external servers to discover tools and stream context without N×M custom integration code. MCP is not cognitive intelligence; it is standard plumbing—mirroring how Language Server Protocol (LSP) ended editor fragmentation and USB-C unified hardware connectors.

2. The N × M Nightmare: AI Relives the History of Code Editors

Looking across software history, some of the most transformative leaps were never flashy feature additions, but rather the quiet standardization of communication contracts. Microsoft’s Language Server Protocol (LSP) remains the prime precedent.

In the past, there existed N code editors (VS Code, IntelliJ, Sublime Text, Vim, Emacs) and M programming languages (Python, Rust, Go, TypeScript). To provide code completion, syntax diagnostics, and jump-to-definition, editor vendors had to write and maintain custom plugins for every individual language.

The inevitable result was an N × M matrix of fragmentation. Five editors supporting ten languages required fifty bespoke plugins, each drifting out of parity as language specifications evolved.

LSP dissolved this bottleneck by establishing a shared protocol between editors and language analyzers. Language teams built a single LSP server; editor maintainers built a single LSP client. Fifty fragmented efforts collapsed into 5 + 10 = 15 modular implementations.

Today, the AI agent ecosystem faces the exact same structural impasse. On one side stand numerous AI hosts: Codex, Claude Code, Cursor, Windsurf, and ChatGPT. On the other stand countless data sources and enterprise tools: GitHub, Sentry, Notion, PostgreSQL, and Slack.

Without a universal standard, connecting GitHub to Cursor requires a bespoke plugin, connecting GitHub to Claude Code requires a second integration, and Codex requires a third. With 100 enterprise services and 10 leading AI clients, developers would waste thousands of engineering hours maintaining 1,000 brittle, point-to-point wrappers.

MCP serves as the USB-C standard for artificial intelligence. A SaaS provider writes one MCP server wrapping their API, and an AI host implements one MCP client. The moment both adhere to the specification, users gain plug-and-play access to hundreds of services with zero custom glue code.

what-is-mcp-and-why-it-matters - conceptual-framework

3. Three Distinct Layers: API, Function Calling, and MCP

Much of the confusion surrounding MCP stems from conflating three distinct architectural tiers that work in concert rather than in competition.

First, an API (Application Programming Interface) is the authoritative engine of a service. Without the GitHub REST API, no code can query repository issues. The API encapsulates real business logic, authentication tokens, and persistent databases.

Second, Function Calling is the cognitive decision-making mechanism inside the LLM. When presented with a user’s prompt, the model deduces that it must execute search_issues with specific string arguments and formats a structured JSON payload. The model does not execute code; it merely drafts the instruction.

Third, MCP is the standardized transport protocol mediating tool schemas, authentication handshakes, and execution payloads between the AI host and external servers.

Under raw Function Calling, developers had to manually hardcode JSON schemas into the prompt context. Under MCP, the AI host queries the server dynamically via a standardized tools/list message. The server responds with available capabilities and input schemas; the host supplies them to the model; and upon the model’s choice, the host relays execution via tools/call.

To use a physical analogy: the API is the manufacturing plant; Function Calling is the commanding officer’s strategic order; and MCP is the ISO shipping container that transports cargo reliably across international railways.

Layer

Essential Responsibility

Primary Actor

Real-World Analogy

REST API / DB

Provides authentic business logic and persistent data

GitHub, Slack, PostgreSQL

The physical manufacturing factory

Function Calling

Evaluates intent and selects the optimal tool with JSON args

Large Language Model (LLM Engine)

The commander deciding which tool to order

MCP

Standardizes dynamic discovery and payload transport

Client-Server Protocol Contract

Standardized ISO container and USB-C port

Skill / Agent

Orchestrates multi-step procedural guidance for tasks

Agent Harness / System Prompt Rules

The project manager and standard operating manual

4. The Three Pillars of MCP Architecture: Tools, Resources, Prompts

According to the formal Model Context Protocol specification, servers expose three foundational primitives to clients:

1. Tools: Executable functions callable by the model to trigger real actions, such as create_issue, execute_sql_query, or deploy_worker. Tools introduce real-world side effects based on model decisions.

2. Resources: Read-only background data structures—such as file contents, database schemas, or system logs—identified via clean URIs (file:///, postgres://). Instead of model execution, resources are fetched by the host application to ground the conversation in factual context.

3. Prompts: Curated, server-provided prompt templates designed to standardize workflows like incident triage or pull request reviews, invoked directly by users via slash commands.

Loading diagram.

View diagram source
flowchart TD
  User["User Prompt: Natural Language Request"] --> Host["AI Host Application: Codex / Cursor / Claude Code"]

  subgraph MCP_Boundary["MCP Protocol Transport Boundary"]
    Host <-->|tools/list: Dynamic Tool Discovery| MCPServer["Service-Specific MCP Server"]
    Host <-->|resources/read: Context Injection| MCPServer
  end

  Host -->|Tool Schemas + Injected Context| LLM{"LLM Inference Engine"}
  LLM -->|Function Calling Decision: Tool and Args| Host

  Host -->|tools/call: Delegated Execution| MCPServer
  MCPServer -->|Authenticated API Request| ExternalAPI["Authoritative Engine: GitHub / Postgres / Sentry"]
  ExternalAPI -->|Raw Response| MCPServer
  MCPServer -->|Standardized Result JSON| Host
  Host --> LLM
  LLM --> FinalAnswer["Synthesized Final Response"]

5. The Hidden Shadows: Context Bloat, Latency, and Attack Surfaces

While standardization brings immense architectural elegance, MCP is not a silver bullet. Uncritical adoption introduces severe performance and security penalties.

The primary operational bottleneck is context bloat. Connecting half a dozen MCP servers dumps hundreds of parameter schemas and tool descriptions directly into the system prompt. Tool definitions alone can easily devour thousands of precious tokens, inflating inference costs and increasing round-trip latency.

More critically, excessive tool exposure degrades reasoning accuracy. When presented with dozens of overlapping functions, models frequently hallucinate incorrect parameters or trigger unnecessary external round-trips for elementary programming queries.

The second, more dangerous threat is the proliferation of attack surfaces. Local MCP servers frequently run via npx or native binaries inheriting the developer’s active terminal permissions. Installing unverified third-party MCP servers is equivalent to executing untrusted binaries on your local machine.

Furthermore, when external data containing hidden adversarial commands enters the context (via issue threads, web pages, or team chats), indirect prompt injection becomes a real threat. A tricked model might leverage authenticated MCP tools to exfiltrate private environment variables or modify production databases. Mature engineering organizations must mandate read-only sandboxes, human-in-the-loop approvals, and strict least-privilege policies.

what-is-mcp-and-why-it-matters - process-dynamics

6. Why Did You Thrive Without Knowing MCP Until Now?

This brings us back to the most candid question: "I have written code with AI assistants for months without knowing MCP existed. Why did it not matter until now?"

The answer is that exceptional infrastructure is intentionally invisible.

When you browse the web, you do not need to mentally trace TCP three-way handshakes or TLS certificate exchanges. Premium AI coding tools already package native local file manipulation and terminal execution. Within a self-contained local repository, external MCP servers are redundant.

However, when an engineering organization needs to connect Sentry error traces, GitHub issue queues, and private database schemas across ten different editor environments—without rebuilding custom plugins for each—MCP shifts from an abstract luxury into an indispensable standard.

MCP is not an evolutionary leap in how AI thinks. It is the practical, quiet plumbing standard that connects the intelligence AI already possesses to the vast, durable architecture of the software world.

Further Questions

All Essays
reframing-the-problem - hero
Essays

How mathematicians solved the 43 quintillion states of Rubik’s cube in 20 moves by shifting perspective. Exploring chess invariants, the Einstellung trap, and four distinct exits for navigating complex real-world problems.