Tarık Şenkal
Writing
MCP (Model Context Protocol): A Common Language for AI Tooling
Tooling 3 min read

MCP (Model Context Protocol): A Common Language for AI Tooling

MCP gives models a standard interface to tools and data sources. The client-server model, the N-times-M problem, security boundaries and practical use.

İsmail Tarık Şenkal
AI developer · Co-founder at HatsonTech

Every time you want to connect a model to your own data, you do the same work: you write a connector. Decide to use a different model, and you write it again. The Model Context Protocol is a shared interface aimed at removing that repetition.

Update: The 2026-07-28 revision removed sessions, the Mcp-Session-Id header and the initialize handshake. The concepts on this page still hold; for the transport-layer changes read MCP 2026: why the protocol went stateless.

The problem it solves

This is the N-times-M problem: with N models and M data sources, the number of connectors you need is their product. Every new tool must be wired to every model separately. A shared protocol turns that product into a sum: each source is written once as a server, and each model becomes a client once.

How it works

The architecture rests on a client-server split. An MCP server exposes a specific capability — a filesystem, a database, an API. The application hosting the model acts as a client, connects to that server, discovers which capabilities exist, and invokes them when needed.

Discoverability is the key point: the client learns at runtime which tools a server offers and which parameters they expect. Adding a new capability therefore does not require changing client code.

An analogy: using one connection standard instead of carrying a separate cable for every device. Both the device and the cable can change; the interface stays fixed.

What it exposes

  • Tools: actions the model can invoke — run a query, read a file, create a record.
  • Resources: data the model can read — documents, schemas, configuration.
  • Prompts: reusable, prepared instructions.

Security boundaries

Giving a model tools means giving it authority. Three rules matter most in practice: servers should run with the narrowest permission that actually works, irreversible actions should require approval, and tool output must never be treated as trusted instruction.

That last point matters: a document arriving from outside can carry text that looks like an instruction to the model. This is precisely the surface for an indirect prompt injection attack.

When to use it

SituationMCP
One model, one toolAn extra layer
Several sources, one applicationBrings order
Sharing tools with other teamsThe real payoff
Possibility of switching modelsReduces lock-in

Frequently asked questions

How does it differ from function calling?

Function calling is how a model requests a tool. MCP is how that tool is defined and served. They complement rather than replace each other.

Is there a performance cost?

It adds a network hop. Negligible in most scenarios, though direct integration is faster for very high-frequency calls.

How many tools should I define?

Few. Dozens of tool definitions fill the context window and make selection harder for the model. Expose only the tools that task needs.


MCP is a practical standard that removes repeated integration work from the agent ecosystem. For more, see function calling and autonomous agent architectures.

İsmail Tarık Şenkal
Author
İsmail Tarık Şenkal

In short: I turn artificial intelligence that comes out of research into products people can rely on day to day.

Related posts