写在前面
第一章:MCP到底是个啥?
先来个灵魂拷问
💡 划重点:MCP的本质就是让AI助手和各种工具之间有了"共同语言",工具开发者和AI开发者从此各干各的,互不打扰。
三个角色,一台戏
|
|
|
|
|---|---|---|
| MCP Client |
|
|
| MCP Server |
|
|
| MCP Host |
|
|
跟传统的function call有啥区别?
🎯 核心价值:工具开发和AI开发彻底解耦,一次开发、处处可用。
第二章:MCP底层用了哪些技术?
技术一:SSE——服务器"主动推消息"的神器
|
|
|
|---|---|
data |
|
id |
|
event |
|
retry |
|
🔧 在MCP里:SSE负责Server到Client的单向数据推送,解决"怎么传"的问题。
技术二:JSON-RPC 2.0——消息格式的"普通话"
|
|
|
|
|
|---|---|---|---|
jsonrpc |
|
|
|
method |
|
|
|
params |
|
|
|
id |
|
|
|
{"jsonrpc": "2.0","method": "get_weather","params": {"city": "北京"},"id": 1}响应长这样(成功时):{"jsonrpc": "2.0","result": {"temp": "26℃", "weather": "晴"},"id": 1}响应长这样(失败时):{"jsonrpc": "2.0","error": {"code": -1, "message": "城市不存在"},"id": 1}
💬 一句话总结:在MCP里,Client和Server永远只交换这种"四字段"消息,简单统一,谁都看得懂。
第三章:MCP协议是怎么工作的?
📌 一句话结论:MCP就是"客户端先拉一条SSE长连接收通知,再用HTTP POST发请求到服务端;双方必须先发initialize打招呼,才能调工具,最后关SSE就通信结束了"。
双通道:一条用来听,一条用来说
|
|
|
|
|
|---|---|---|---|
GET /sse) |
|
|
|
|
|
|
|
|
五步走:从连接到断开
登录查看剩余 70% 内容