轻松开发 Streamable HTTP MCP Server

 更新时间:2025年05月01日 11:21:07   作者:formulahendry  
本文介绍了MCP协议中stdio和SSE协议的优缺点,以及MCP的最新协议StreamableHTTP的特性,韩老师还分享了如何使用YeomanGeneratorforMCPServer快速开发一个支持StreamableHTTP的MCPServer,并在VSCode中进行调试

大家好!我是韩老师。

还是那句话:也许有一天,AI 程序员不懂 MCP,就犹如前端程序员不懂 JavaScript!

相信不少童鞋已经了解了甚至参与到了 MCP 相关的开发。

从 MCP 支持的两个协议 stdio 和 SSE 来看,MCP 确实有点“快而糙”。如果我当年本科的暑假大作业,还有一天就要deadline了,我也许才会选择这两个协议,能让我快速出活。

在第一篇文章中,我就提到了 stdio 和 SSE 的的“快而糙”。

SSE 的最大缺陷之一,显而易见:SSE 需要 server 端保持一个长连接,而且,根据 MCP 的协议,在 MCP Client 与 MCP Server 建立 SEE 连接后,在整个 connection 的生命周期中,MCP Server 需要一直保持着这个 SSE 连接。

那么,对于要支持 SSE 的运行在 remote 的 MCP Server 来说,就需要保证高可靠性。在高并发的情况下,对 MCP Server 的负载更是一个挑战。

在 3 月 26 日,MCP 发布了最新的 spec,用 Streamable HTTP “取代”了 SSE。

简单来说,在新的 Streamable HTTP 协议中,MCP Server 可以根据自己实际的使用场景来决定自己是 Stateless 还是 Stateful 的,而不是像 SSE 那样,一定是 Stateful 的。

这对开发 Remote MCP Server 的开发者来说,真是一个极好的消息,因为在不少场景中,Stateless server 会对 MCP Server 的要求降低很多!

今天,我也要和大家分享个好消息,韩老师的 Code Runner MCP Server 和 Yeoman Generator for MCP Server 都已经支持 Streamable HTTP 啦!

现在,韩老师就用 Yeoman Generator for MCP Server,来带领大家快速开发一个 Streamable HTTP 的 MCP Server!

安装 Node.js

从 https://nodejs.org/en 安装 LTS 版的 Node.js 即可。

安装 Scaffolding Tool

在命令行运行下面命令,安装 Yeoman Generator for MCP Server:

npm install -g yo generator-mcp@latest

创建 MCP Server 项目

在命令行运行下面命令,创建 MCP Server 项目:

yo mcp -n 'Weather MCP Server'

实现代码逻辑

主要的代码逻辑在 src\streamableHttp.ts 文件中,可以不做修改直接使用。

启动项目

在命令行运行下面命令,启动 MCP Server 项目:

npm run build npm run start:streamableHttp

在 VS Code 运行

安装好最新的 VS Code Insiders 版本。

打开 .vscode\mcp.json,取消 weather-mcp-server-streamable-http 的注释,点击 “start” 按钮:

现在,就能在 VS Code Insiders 的 Agent Mode 调用你的 MCP Server 啦!

大功告成!

到此这篇关于轻松开发 Streamable HTTP MCP Server 的文章就介绍到这了,更多相关开发 Streamable HTTP MCP Server 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Node环境中JS代码缺少window对象的原因和解决方案

    Node环境中JS代码缺少window对象的原因和解决方案

    你可能会在某些情况下需要在Node环境下运行JavaScript代码,但你也可能会遇到一个常见的问题:缺少window环境,在本文中,我们将深入探讨这个问题的原因,并提供解决方案,需要的朋友可以参考下
    2023-08-08
  • NodeJs的优势和适合开发的程序

    NodeJs的优势和适合开发的程序

    做页游或webqq这样的应用nodejs有优势,但如果做微博、豆瓣、facebook这样的社交网络,nodejs还有优势吗?另外不知道大家是什么原因选择的nodejs?是因为应用需求还是对javascript这门语言的喜欢?
    2016-08-08
  • NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to

    NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Pleas

    这篇文章主要介绍了NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to的相关资料,需要的朋友可以参考下
    2016-12-12
  • node命令行工具之实现项目工程自动初始化的标准流程

    node命令行工具之实现项目工程自动初始化的标准流程

    这篇文章主要介绍了node命令行工具之实现项目工程自动初始化的标准流程 ,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • websocket实现Vue 3和Node.js之间的实时消息推送

    websocket实现Vue 3和Node.js之间的实时消息推送

    使用 WebSocket 实现实时消息推送是一种高效的方式,可以在客户端和服务器之间建立长连接,实现低延迟的双向通信,以下是一个简单的示例,展示如何在前端使用 Vue 3 和后端使用 Node.js 搭建一个 WebSocket 实现实时消息推送的应用
    2024-06-06
  • 微信小程序搭载node.js服务器的简单教程

    微信小程序搭载node.js服务器的简单教程

    小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验,下面这篇文章主要给大家介绍了关于微信小程序搭载node.js服务器的简单教程,需要的朋友可以参考下
    2022-12-12
  • nodejs简单读写excel内容的方法示例

    nodejs简单读写excel内容的方法示例

    这篇文章主要介绍了nodejs简单读写excel内容的方法,简单分析了nodejs常见的读写Excel模块,并结合实例形式分析了nodejs读写Excel具体操作技巧,需要的朋友可以参考下
    2018-03-03
  • Windows使用nvm多版本管理node.js的步骤记录

    Windows使用nvm多版本管理node.js的步骤记录

    nvm是NodeJS的多版本管理工具,这篇文章主要介绍了Windows使用nvm多版本管理node.js的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-12-12
  • Nodejs监控事件循环异常示例详解

    Nodejs监控事件循环异常示例详解

    这篇文章主要给大家介绍了关于Nodejs监控事件循环异常的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Nodejs具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • Nodejs使用dgram模块创建UDP服务详解

    Nodejs使用dgram模块创建UDP服务详解

    这篇文章主要为大家介绍了Nodejs使用dgram模块创建UDP服务详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10

最新评论