Module 5 · Lesson 4 of 6 · Emerging
MCP: one standard way to connect tools
- User — asks for a slot — healthy
- AI app — the MCP client — healthy
- Model — writes tool requests — healthy
- MCP server — calendar tools — healthy — NOW — 2 tools listed
- Calendar — the real data — healthy
- Tool list
- Request
- Answer
Step 1 of 6 · MCP server
Done: The app asks the MCP server which tools it has
- What happens
- The server answers with each tool's name, what it does and its inputs: find_free_slot and book_meeting.
- Why
- MCP, the Model Context Protocol, is an open standard for this. Any app that speaks it can use any server that speaks it.
- What changes
- The descriptions are plain and honest.
- Next
- The app sends the question and the tool list to the model
Event log
5 more to go. Press a line to go back to that step.
Tools the server listed
find_free_slot(date, minutes): finds a free slot in the calendar.book_meeting(slot, title): books a meeting.
Step 1 of 6: MCP server. The app asks the MCP server which tools it has. The server answers with each tool's name, what it does and its inputs: find_free_slot and book_meeting.
What this simplifies. This leaves out how the app and server connect: on the same machine or over HTTP, with messages in a format called JSON-RPC. MCP servers can also offer files and saved prompts, not only tools. Only install servers you trust.
Each tool an (A model that calls tools in a loop, deciding each next step from the results, until it can answer.) uses once needed its own code in every app. MCP, the Model Context Protocol, is an open standard that removes that work. A tool is wrapped once as an MCP server, and any app that speaks MCP can use it.
The app, called the MCP client, asks a server which tools it offers. The server answers with each tool's name, description and inputs. The app passes these to the model, which writes a request to call one, and the app runs it through the server.
The model still never runs anything. The app does, so it should check each call against its own rules, as with any tool. MCP changes how tools are connected, not who decides what runs.
A server is code from someone else. Its tool descriptions go into the (Everything sent to a language model in one request: instructions, context and the question.), so a planted line in one can steer the model. Install only servers you trust, and keep the checks in your own code.
In system design: Use MCP to reuse tools across apps, install only servers you trust, and check every (A request from a model to run one of the functions it was given, such as a search. Your own code runs it.) in your own code before it runs.