輕松開發(fā) Streamable HTTP MCP Server
大家好!我是韓老師。
還是那句話:也許有一天,AI 程序員不懂 MCP,就猶如前端程序員不懂 JavaScript!
相信不少童鞋已經(jīng)了解了甚至參與到了 MCP 相關(guān)的開發(fā)。
從 MCP 支持的兩個(gè)協(xié)議 stdio 和 SSE 來看,MCP 確實(shí)有點(diǎn)“快而糙”。如果我當(dāng)年本科的暑假大作業(yè),還有一天就要deadline了,我也許才會(huì)選擇這兩個(gè)協(xié)議,能讓我快速出活。
在第一篇文章中,我就提到了 stdio 和 SSE 的的“快而糙”。
SSE 的最大缺陷之一,顯而易見:SSE 需要 server 端保持一個(gè)長連接,而且,根據(jù) MCP 的協(xié)議,在 MCP Client 與 MCP Server 建立 SEE 連接后,在整個(gè) connection 的生命周期中,MCP Server 需要一直保持著這個(gè) SSE 連接。
那么,對于要支持 SSE 的運(yùn)行在 remote 的 MCP Server 來說,就需要保證高可靠性。在高并發(fā)的情況下,對 MCP Server 的負(fù)載更是一個(gè)挑戰(zhàn)。
在 3 月 26 日,MCP 發(fā)布了最新的 spec,用 Streamable HTTP “取代”了 SSE。
簡單來說,在新的 Streamable HTTP 協(xié)議中,MCP Server 可以根據(jù)自己實(shí)際的使用場景來決定自己是 Stateless 還是 Stateful 的,而不是像 SSE 那樣,一定是 Stateful 的。
這對開發(fā) Remote MCP Server 的開發(fā)者來說,真是一個(gè)極好的消息,因?yàn)樵诓簧賵鼍爸?,Stateless server 會(huì)對 MCP Server 的要求降低很多!
今天,我也要和大家分享個(gè)好消息,韓老師的 Code Runner MCP Server 和 Yeoman Generator for MCP Server 都已經(jīng)支持 Streamable HTTP 啦!
現(xiàn)在,韓老師就用 Yeoman Generator for MCP Server,來帶領(lǐng)大家快速開發(fā)一個(gè) Streamable HTTP 的 MCP Server!
安裝 Node.js
從 https://nodejs.org/en 安裝 LTS 版的 Node.js 即可。
安裝 Scaffolding Tool
在命令行運(yùn)行下面命令,安裝 Yeoman Generator for MCP Server:
npm install -g yo generator-mcp@latest
創(chuàng)建 MCP Server 項(xiàng)目
在命令行運(yùn)行下面命令,創(chuàng)建 MCP Server 項(xiàng)目:
yo mcp -n 'Weather MCP Server'
實(shí)現(xiàn)代碼邏輯
主要的代碼邏輯在 src\streamableHttp.ts 文件中,可以不做修改直接使用。
啟動(dòng)項(xiàng)目
在命令行運(yùn)行下面命令,啟動(dòng) MCP Server 項(xiàng)目:
npm run build npm run start:streamableHttp
在 VS Code 運(yùn)行
安裝好最新的 VS Code Insiders 版本。
打開 .vscode\mcp.json,取消 weather-mcp-server-streamable-http 的注釋,點(diǎn)擊 “start” 按鈕:
現(xiàn)在,就能在 VS Code Insiders 的 Agent Mode 調(diào)用你的 MCP Server 啦!
大功告成!
到此這篇關(guān)于輕松開發(fā) Streamable HTTP MCP Server 的文章就介紹到這了,更多相關(guān)開發(fā) Streamable HTTP MCP Server 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 教你如何實(shí)現(xiàn)容器化 MCP Server
- 在 VS Code 中,一鍵安裝 MCP Server!
- 從零開始開發(fā)一個(gè) MCP Server!
- VS?Code擴(kuò)展Code?Runner?MCP?Server來了
- Go語言開發(fā)實(shí)現(xiàn)查詢IP信息的MCP服務(wù)器
- 一文弄懂用Go實(shí)現(xiàn)MCP服務(wù)的示例代碼
- 一文帶你學(xué)會(huì)使用Go語言實(shí)現(xiàn)自己的MCP服務(wù)端
- SpringBoot項(xiàng)目引入MCP的實(shí)現(xiàn)示例
- .NET?MCP?文檔詳細(xì)指南
- 把 MCP Server 打包進(jìn) VS Code extension
相關(guān)文章
Node中使用http-proxy-middleware實(shí)現(xiàn)代理跨域的方法步驟
本文主要介紹了Node中使用http-proxy-middleware實(shí)現(xiàn)代理跨域的方法步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11NodeJS http模塊用法示例【創(chuàng)建web服務(wù)器/客戶端】
這篇文章主要介紹了NodeJS http模塊用法,結(jié)合實(shí)例形式分析了node.js創(chuàng)建web服務(wù)器與客戶端,進(jìn)行HTTP通信的相關(guān)操作技巧,需要的朋友可以參考下2019-11-11nodejs提示:cross-device link not permitted, rename錯(cuò)誤的解決方法
這篇文章主要給大家介紹了關(guān)于nodejs提示:cross-device link not permitted, rename錯(cuò)誤的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用nodejs具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06輕松創(chuàng)建nodejs服務(wù)器(2):nodejs服務(wù)器的構(gòu)成分析
這篇文章主要介紹了輕松創(chuàng)建nodejs服務(wù)器(2):nodejs服務(wù)器的構(gòu)成分析,本文是對第一節(jié)中簡單服務(wù)器的代碼進(jìn)行分析總結(jié),需要的朋友可以參考下2014-12-12nodejs腳本centos開機(jī)啟動(dòng)實(shí)操方法
在本篇文章里小編給大家整理的是關(guān)于nodejs腳本centos開機(jī)啟動(dòng)實(shí)操方法,有興趣的朋友們參考下。2020-03-03