Guide

What is MCP? The complete guide to the Model Context Protocol

The Model Context Protocol (MCP) is an open standard that lets an AI assistant connect to software, databases and services so it can read information and take action there. This guide covers what an MCP server is, where the protocol came from, how it works, how it differs from an API or RAG, which risks it carries, and how Ondes PRO applies it across an entire business.

The Ondes PRO teamUpdated on

What is MCP? The one-minute definition

On its own, a large language model only knows what it learned during training and what you type into the chat. It has no idea what orders came in today, how much stock is left or what is on your calendar. To use any of that, it needs a door into your data — and someone has to decide what it may do once inside.

The Model Context Protocol standardises that door. Software that wants to be usable by AI publishes an MCP server; an AI application that wants to plug into software ships an MCP client. Both speak the same language: the client asks the server what it can do, the server answers with a precisely described list of tools, and the model decides for itself which ones to call to answer your request.

The usual analogy is a USB-C port for AI: one connector, whatever device sits on the other end. It only goes so far — an MCP tool is not a cable, it carries meaning, permissions and side effects — but it captures the point: you build the integration once and it works with every compatible assistant.

protocol launched by Anthropic
25 Nov 2024
handed to the Agentic AI Foundation, under the Linux Foundation
Dec 2025
active MCP servers announced when MCP joined the Agentic AI Foundation (December 2025)
10,000+
standard transports: stdio locally, Streamable HTTP remotely
2

What is MCP used for? The N × M problem

Before MCP, every assistant vendor built its own connectors, and every software vendor had to write one per assistant. With N assistants and M applications, that meant N × M integrations, each different, each needing upkeep. One assistant’s “plugins” did not work in another, and niche software was left out entirely.

A shared protocol turns that into N + M: each assistant implements the client once, each application implements the server once. It is exactly what the Language Server Protocol did for code editors, and MCP openly draws on it: a programming language no longer needs a plugin per editor, it ships one language server and every editor benefits.

For a business the payoff is concrete. You are no longer tied to whichever assistant your software vendor picked: if your business software exposes an MCP server, you can use it from Claude today, from a code editor tomorrow, and from whatever assistant your team adopts next year.

A short history of the Model Context Protocol

How a single vendor’s proposal became an industry standard.

DateMilestone
25 November 2024Anthropic open-sources the protocol, with a specification and SDKs (announcement).
March 2025OpenAI announces support; a spec revision introduces the Streamable HTTP transport and an OAuth-based authorisation framework.
April 2025Google DeepMind comes on board.
May 2025Microsoft showcases MCP support across its products at Build.
June 2025Another revision formally makes an MCP server an OAuth resource server.
December 2025The protocol moves to the Agentic AI Foundation, a directed fund of the Linux Foundation co-founded by Anthropic, Block and OpenAI (announcement).
28 July 2026Major revision: a stateless protocol, authorisation aligned with OAuth and OpenID Connect, Tasks and MCP Apps extensions (announcement).

Who maintains MCP? A neutral, long-lived standard

A protocol owned by a single vendor is a fair cause for concern: it can change course, or vanish. That is exactly why Anthropic handed MCP over in December 2025 to the Agentic AI Foundation (AAIF), a directed fund of the Linux Foundation. The foundation was co-founded by Anthropic, Block and OpenAI, and is backed by Google, Microsoft, AWS, Cloudflare and Bloomberg.

Governance now works like any open project: a public specification, a documented proposal process, reference implementations and SDKs in several languages. Direct competitors funding the same foundation is a strong durability signal for a standard this young.

How an MCP server works: host, client and server

The architecture has three roles. The host is the application you use: a chat assistant, a code editor, a terminal. The MCP client lives inside the host and holds one connection to one server — a host connected to five servers runs five clients. The MCP server is the program that exposes a piece of software’s capabilities; it can run on your machine or be hosted by the vendor.

Messages are JSON-RPC 2.0: requests, responses and notifications encoded as JSON. At the start, client and server agree on a protocol version — versions are dated, such as 2025-06-18 — and on the features each supports. The client can then list the server’s tools and call them with arguments that match their schema.

The crucial part is that the model decides. Each tool comes with a name, a natural-language description and a JSON schema for its parameters. The model reads those descriptions the way it would read documentation and picks the right tool for your request. That is why an MCP server’s quality depends as much on clear descriptions as on correct code: a poorly described tool never gets called, or gets called at the wrong moment.

Tools, resources, prompts: the building blocks of an MCP server

The specification defines several kinds of capability. A server does not have to offer all of them.

Building blockSideTriggered byExample
ToolsServerThe model, as the request requiresCreate a quote, list overdue invoices
ResourcesServerThe host applicationA file, a record, a documentation page
PromptsServerThe user, explicitlyA “draft a payment reminder” template
SamplingClientThe server, with the client’s consentThe server asks the model to summarise a text
ElicitationClientThe serverThe server asks the user for a missing detail

In practice, tools are by far the most used building block: they are how an assistant reads and acts.

MCP transports: stdio locally, Streamable HTTP remotely

The protocol defines two standard transports. stdio is for local servers: the host launches the server as a program on your machine and talks to it over standard input and output. It is simple and fast, ideal for a tool that works on your files, but it means installing and updating a program on every machine.

Streamable HTTP is for remote servers: the client sends its messages over HTTP to a single endpoint, and the server can reply in one piece or as a stream. In 2025 it replaced the first remote transport, which relied on two endpoints and Server-Sent Events. For online software it is the obvious choice: nothing to install, one URL to paste, and the vendor updates the server for everyone.

A remote transport needs authentication. The spec builds on OAuth 2.1: the server advertises where to sign in through metadata documents under /.well-known/, the client opens a sign-in window, the user consents, and the client receives an access token. Successive revisions tightened this — PKCE, resource indicators so a token only works for the intended server — and the July 2026 revision aligns it more closely with OAuth and OpenID Connect.

What happens when you ask a connected assistant a question?

A typical request, from your sentence to the answer.

  1. The assistant discovers the tools

    On connection, the client fetches the server’s tool list and descriptions. They go into the model’s context, so it now knows what it can do.

  2. The model picks a tool

    You type your request. The model matches it against the available descriptions and decides to call one or more tools, building the arguments itself.

  3. The client asks for approval when needed

    Depending on the host and its settings, a call may need your approval, especially if it changes data. The server can enforce its own safeguards too.

  4. The server runs it and replies

    The server checks the user’s permissions, performs the action in the software and returns a structured result — or an explained refusal.

  5. The model writes the answer

    It reads the result, chains further calls if needed, then answers you in plain language, based on real, current data.

An example: discovery in action

In this simulated exchange with the Ondes PRO MCP server, the assistant starts out knowing nothing about the business. It learns its scope, searches for the right resource, reads its sheet, and only then queries it.

Claude · Example conversation · demo data (Atelier Lumen)
  1. You : Which lights have dropped below their stock threshold, and is a production order already planned for them?
  2. MCP tool : ondes_etat Signed in as Karim Benali; Inventory, Store and Invoicing modules available.
  3. MCP tool : ondes_chercher “stock threshold” — finds inventory/composants and inventory/ordres-production.
  4. MCP tool : ondes_ressource inventory/composants sheet: fields, available filters and ordering.
  5. MCP tool : ondes_appeler GET inventory/composants filtered on low stock — 3 items.
  6. MCP tool : ondes_appeler GET inventory/ordres-production — 1 order in progress.
  7. Assistant : Three items are below threshold: Trépied lamp (4 against a threshold of 10), Laiton pendant (6 against 12) and Arc floor lamp (2 against 5). Only the Arc floor lamp has a production order running, with 15 units due on 6 November. Want me to draft orders for the other two?

MCP vs API: what is the difference?

A REST API is written for developers: endpoints, HTTP verbs and documentation a human reads before writing code that will call it the same way every time. An MCP server is written for a model: it describes itself at connection time, in terms an AI understands, and the model decides at run time what to call.

They are not rivals. Most MCP servers sit on top of an existing API, acting as its discovery and security layer for assistants. An API remains the right tool for deterministic integrations — syncing an online store or an accounting package — where every call must be predictable; MCP shines when the request comes in plain language and the path to an answer is not known in advance.

A common claim is that “MCP is stateful, REST is stateless”. It was never a fundamental difference, and the July 2026 protocol revision made it moot by dropping server-side sessions. We go deeper in MCP vs REST API, and compare MCP with automation platforms in MCP vs Zapier, Make and n8n.

MCP, APIs and RAG at a glance

REST APIRAGMCP
Built forA developer writing codeA model that must quote documentsA model that must read and act
DataCurrent, structuredIndexed copy, sometimes staleCurrent, read at the source
WritesYes, coded in advanceNoYes, decided at run time
PermissionsThose of the key or tokenOften those of the whole indexThose of the signed-in user
DiscoveryDocs read by a humanNot applicableThe server describes itself to the model

MCP vs RAG: rivals or complements?

RAG (retrieval-augmented generation) splits documents into chunks, indexes them in a vector database, then injects the passages closest to the question into the conversation. It is an excellent way to query a stable corpus — a knowledge base, contracts, a manual — and have the model cite its sources.

Its limits are those of any copy. The index always lags behind reality, it has no notion of what a given user may see unless permissions are rebuilt alongside it, and it cannot take action. Asking a RAG pipeline “which invoices are overdue this morning?” means querying a snapshot taken yesterday.

MCP covers the other half: reading live data at the source, with the permissions of the person asking, and acting on it. The two combine well — an MCP server can even expose a document-search tool built on RAG. The useful question is not “which one”, but “does this information change, and do we need to act on it?”.

Is MCP secure? The risks worth knowing

Letting an AI act inside software creates new risks, and the ecosystem learned about them on the go. In July 2025 a critical flaw was fixed in mcp-remote, a widely used utility that bridges a remote server to a local client (CVE-2025-6514). On 20 May 2026 the NSA published an advisory on MCP risks for organisations.

The most discussed risks are well known: a malicious or compromised server, booby-trapped tool descriptions that steer the model, prompt injection through content the assistant reads (an email, a web page) that pushes it into an unintended action, and over-privileged connections nobody remembers to revoke.

The countermeasures are sound engineering: only install servers you trust, prefer servers hosted by the vendor of the software in question, require OAuth with PKCE, short-lived tokens bound to one server, permissions limited to the user’s own, easy revocation, writes that are confirmed or testable, and call logging. What Ondes PRO does is detailed on the MCP server security page.

Who uses MCP? Adoption and ecosystem

Adoption was fast. After Anthropic, which built it into Claude from day one, OpenAI announced support in March 2025, Google DeepMind followed in April, and Microsoft featured it at Build in May. Most AI-assisted code editors — Cursor, Visual Studio Code with GitHub Copilot, Windsurf, Zed, Cline, JetBrains IDEs — can now connect to a remote MCP server.

On the server side, the Agentic AI Foundation counts more than ten thousand public ones: developer tools, databases, cloud services and, increasingly, business software for invoicing, CRM, project management and e-commerce. Automation platforms followed by exposing their workflows as MCP tools.

One limitation remains for businesses: most of those servers cover a single domain. Plugging an assistant into invoicing, CRM, inventory and calendar often means connecting four servers from four vendors, with four sign-ins and four permission models — and an AI left to stitch the pieces together.

Should you wait for the protocol to settle?

The protocol evolves through dated revisions, and both client and server announce the versions they support, settling on the newest one they share. A new revision therefore does not break existing connections overnight; it opens new options that everyone adopts at their own pace.

For users, waiting gains little: connecting to a remote server means pasting a URL and signing in, and keeping up with the spec is the server vendor’s job. For developers, the advice is to build on a reference SDK and the Streamable HTTP transport, the stable anchors of the ecosystem.

How Ondes PRO applies MCP: one server for the whole business

Ondes PRO is all-in-one business software: online store, inventory and manufacturing, quotes and invoices, CRM, Kanban, calendar, video conferencing, email, an encrypted Drive and automations. Every customer runs their own instance, hosted in France, and every instance ships with an MCP server at https://<your-workspace>.ondes.pro/mcp/, included in every plan.

Because it spans every module, a single request can cross several of them: “draft the quote, check stock and book a delivery slot” happens in one conversation over one connection. The server uses the Streamable HTTP transport, negotiates protocol versions 2025-06-18, 2025-03-26 and 2024-11-05, and was designed stateless from the start: no session is kept on the server.

Rather than exposing each of its API’s roughly 135 resources as a separate tool — which would flood the assistant’s memory — it offers eight stable tools. Their descriptions and schemas fit in about 2,700 tokens of permanent context, against nearly 44,000 for the documentation file assistants used to be handed. Documentation is served on demand, generated on every call from the workspace’s real routes, and filtered by the signed-in user’s permissions.

The eight tools of the Ondes PRO MCP server

Six to understand the API without guessing, two to act.

  • ondes_etatRead

    Connection status

    Who is connected, which modules are reachable and which permissions the connection carries. The assistant calls it once to learn its scope.

  • ondes_guideRead

    API guide

    The API guide, section by section: a summarised table of contents first, then only the sections that matter (pagination, idempotency, payments…).

  • ondes_chercherRead

    Search

    Searches a business term (“quote”, “stock”, “webhook”) across both the resource inventory and the guide.

  • ondes_ressourceRead

    Resource sheet

    Everything needed to call one resource correctly: URL, verbs, typed and required fields, filters, ordering, actions, required permission, test twin.

  • ondes_impossibleRead

    What the API does not do

    The list of what deliberately does not exist. The assistant checks it before inventing a URL: this is what keeps it from hallucinating.

  • ondes_exempleRead

    Complete recipes

    Whole scenarios already verified against the real API: create, read without N+1 calls, invoice, subscribe to events.

  • ondes_appelerWrite

    Call the API

    Runs a real call with the user's identity. Writes go to test mode by default, and a dry run validates a request without writing anything.

  • ondes_assistantWrite

    Ask the Ondes PRO assistant

    Asks a business question to the built-in assistant, which aggregates several modules. Its writes come as a plan, executed only after approval.

What the Ondes PRO server guarantees

  • OAuth 2.1 authentication with PKCE S256 and no client secret, or a scoped API key that never outranks its holder.
  • Your permissions, nothing more: the assistant only sees and does what the signed-in person can, company by company.
  • Safe writes: test mode by default when a resource has a test twin, dry runs on any resource, automatic idempotency, and plans that need your approval for the built-in assistant.
  • No invented URLs: the ondes_impossible tool lists what the API deliberately does not do.
  • Instant revocation, one connection at a time, and a log of every call.

Put it into practice

Connect your assistant, compare approaches, or see what the AI can do module by module.

Frequently asked questions

What is an MCP server used for?

An MCP server exposes a piece of software’s capabilities — reading data, triggering actions — to an AI assistant through the Model Context Protocol. It describes its tools to the model, checks the user’s permissions and runs the calls. It can run on your machine (stdio transport) or be hosted remotely (Streamable HTTP).

What does MCP stand for?

MCP stands for Model Context Protocol. It is an open standard launched by Anthropic on 25 November 2024 and handed in December 2025 to the Agentic AI Foundation, a directed fund of the Linux Foundation.

MCP vs API: what is the difference?

An API is designed for developers writing predictable code; an MCP server is designed for a model, which discovers the tools at connection time and decides which to call. An MCP server often sits on top of an existing API, so the two are complementary.

MCP vs RAG: does MCP replace RAG?

No. RAG queries an indexed copy of documents, ideal for a stable corpus. MCP reads live data at the source, with the user’s permissions, and can take action. They combine well: an MCP server can expose a document search built on RAG.

Will MCP replace traditional integrations?

Not entirely. Deterministic integrations, such as syncing a website or accounting software, are still better served by an API and webhooks. MCP opens a new use: driving software in plain language when the path to an answer is not known in advance.

Who maintains MCP, and will it last?

Since December 2025 the protocol has been stewarded by the Agentic AI Foundation under the Linux Foundation, co-founded by Anthropic, Block and OpenAI and backed by Google, Microsoft, AWS, Cloudflare and Bloomberg. Its specification is public and evolves through dated revisions.

How much does an MCP server cost?

The protocol is open and royalty-free. Cost depends on the server’s vendor: with Ondes PRO, the MCP server is included in every plan, with no add-on to enable. See pricing.

Can I connect an MCP server to a CRM or invoicing tool?

Yes, if the software publishes an MCP server. Ondes PRO’s covers CRM, invoicing, inventory, the online store, projects and calendar at once, so a single request can cross several modules.

Plug your AI into your business

The MCP server is included in every plan, with no add-on or extra fee.

Read next

Claude, Claude Code and Claude Desktop are trademarks of Anthropic, PBC; Cursor is a trademark of Anysphere, Inc.; Visual Studio Code and Microsoft are trademarks of the Microsoft group of companies; GitHub and GitHub Copilot are trademarks of GitHub, Inc.; ChatGPT and OpenAI are trademarks of OpenAI; Windsurf is a trademark of Cognition; Zed is a trademark of Zed Industries, Inc.; JetBrains, Cline, Zapier, Make, n8n, Stripe and Model Context Protocol are trademarks of their respective owners. These names are used solely to describe compatibility or to make a comparison. Ondes PRO is not affiliated with, sponsored or endorsed by these companies.