Agent infrastructure

MCP Architecture Visualised

Follow numbered MCP steps from sender to receiver across the Host Application and MCP Server boundaries. Preview the next operation before advancing the 3D diagram.

Step 1 / 15

Next: Policy client sends server/discover.

1. The reader asks

ReaderHost

Local host event · not MCP

Host ApplicationMCP ServerPayrollReaderHostLanguage modelPolicy clientPolicy serverPolicy lookupPayroll clientPayroll server

The host receives a question. The full conversation stays under the host’s control.

Local event (not an MCP message)

{
  "question": "What is the Manchester office travel approval rule?"
}

Synthetic UK lookup, MCP 2026-07-28. Host approval and internal tool work are illustrative. The boxes show logical ownership, not shared machines: a model can run remotely, and servers can run locally or remotely. The grey payroll service is separate and unused.

Choose a scenario and click Next step. Each numbered step names its sender, receiver and operation. The preview explains the next action before you advance. A fictional Northbank colleague wants the Manchester office travel rule. The host manages conversation and permissions; its MCP client exchanges messages with the policy server. The lookup tool belongs to that server. A separate payroll client and server remain unused. Previous revisits a step, and Replay starts the same scenario again.

The blue Host Application and purple MCP Server show logical ownership, not physical deployment. Servers and models may run remotely. Requests cross towards the server; responses return to the client. Method names and IDs connect each response to its request. Local host decisions and internal tool work are labelled separately. The current message sits with the explanation of that step.

This trace follows MCP 2026-07-28, with per-request protocol metadata and server discovery. Earlier versions use a different connection lifecycle. Permission denial ends locally, an unknown tool returns a protocol error, and a failed tool returns isError. Every example is synthetic and performs no external action.

Sources and model assumptions

Follow the original mechanism behind this explainer. The interactive examples identify their toy data and simplifying assumptions above.

Put it to work

Related terms

More visualisations

Building with language models?

These explainers come out of the work. If you want the same thinking applied to your own system, that is what I do.

See how I can help