WEBVTT

00:01.360 --> 00:03.120
Hello everyone and welcome.

00:03.680 --> 00:09.560
In this video, we will learn about how MCP communicates between different components that we introduced

00:09.560 --> 00:10.280
earlier.

00:10.800 --> 00:18.360
So here is a high level flow diagram which has different components that like MCP server, MCP client,

00:18.400 --> 00:24.720
host application and various transport mechanism that goes into the communication.

00:25.280 --> 00:29.200
So the very first one that we'll introduced is MCP server.

00:29.520 --> 00:32.120
This is the main logic layer of the server.

00:32.320 --> 00:38.760
It handles multiple capabilities like resources, tools, context and prompts.

00:39.280 --> 00:42.640
The protocol layer sits below the MCP server layer.

00:42.960 --> 00:45.840
It's responsible for structuring the communication.

00:46.080 --> 00:48.480
Json-rpc 2.0.

00:48.960 --> 00:55.960
Now there is a transport layer which interfaces the client via supported transport mechanism like HTTP

00:55.960 --> 00:57.360
or Stdio.

00:58.040 --> 01:01.600
It handles data transmission based on chosen protocol.

01:02.240 --> 01:04.640
The next component is MCP client.

01:04.840 --> 01:09.720
MCP client is the main application integrating two MCP host.

01:10.120 --> 01:15.040
The client layer manages communication between the host and the MCP protocol.

01:15.480 --> 01:20.360
Protocol layer mirrors the servers protocol layer for consistent communication.

01:20.640 --> 01:25.360
The communication happens Json-rpc 2.0 layer.

01:25.640 --> 01:30.000
And then there's transport layer that handles sending and receiving of data from the server.

01:30.320 --> 01:33.440
On the very right hand side is the transport mechanism.

01:33.440 --> 01:39.720
So the transport happens via stdio and HTTP with S.S.C..

01:40.240 --> 01:48.120
Stdio is a standard input output, while HTTP with SSE is a standard server sent event for streaming.

01:48.280 --> 01:55.160
All of this communication happens via protocol layer that is, maintain via Json-rpc format.

01:55.520 --> 02:00.560
So now let's take a deep dive into how the data flows from different components and how this is made

02:00.560 --> 02:01.320
possible.

02:01.920 --> 02:05.320
So the host application sends the request to the client layer.

02:05.760 --> 02:11.680
The client layer passes down the communication to protocol layer and then to the transport layer.

02:12.240 --> 02:19.360
The transport layer then sends it to the server using a Stdio or HTTP protocol.

02:19.680 --> 02:24.120
And on the server side, transport layer receives the request.

02:24.600 --> 02:32.080
It passes on to the protocol layer, which is then routed to the server layer, which uses resources,

02:32.200 --> 02:37.400
tools, context, or prompts to generate the responses.

02:37.800 --> 02:44.120
The response then travels back the same path to the client and then onto the host application.

02:45.320 --> 02:52.640
I hope you understand how the entire MCP communication happens over different components, over different

02:52.640 --> 02:54.920
layers, using different protocols.

02:55.240 --> 02:56.000
Thank you.

02:56.200 --> 02:58.440
I'll see you in the next video.
