A detailed walkthrough of how MCP clients (LLM hosts) and MCP servers (tool providers) communicate. Covers the transport layer options (stdio and HTTP/SSE), the handshake and capability negotiation process, and how messages flow through the protocol in both directions.