
fastify-mcp

2025.03.20
3
TypeScriptFastify 插件MCP 服务器集成开发效率
fastify-mcp 是一个用于将 Model Context Protocol (MCP) 服务器与 Fastify 应用集成的插件,通过 Server-Sent Events (SSE) 连接实现。它允许开发者在 Fastify 应用中轻松集成 MCP 服务器,并管理多个 SSE 会话。
View on GitHub
Overview
基本能力
产品定位
fastify-mcp 是一个用于将 Model Context Protocol (MCP) 服务器与 Fastify 应用集成的插件,通过 Server-Sent Events (SSE) 连接实现。
核心功能
- MCP 服务器集成:支持在 Fastify 应用中集成 MCP 服务器。
- SSE 连接管理:通过 SSE 协议实现客户端与服务器的实时通信。
- 会话管理:提供会话的创建、终止和错误处理功能。
- 事件驱动:支持会话连接和终止的事件监听。
适用场景
- 实时应用开发:适用于需要实时通信的 Fastify 应用。
- MCP 服务器集成:适用于需要在 Fastify 应用中集成 MCP 服务器的场景。
- 多会话管理:适用于需要管理多个客户端会话的应用。
工具列表
- MCP TypeScript SDK:用于定义和管理 MCP 服务器。
- Fastify 插件:用于在 Fastify 应用中集成 MCP 服务器。
常见问题解答
- 会话管理:官方 MCP TypeScript SDK 不支持多会话管理,因此需要宿主服务器自行管理。
- 会话事件:支持
connected
、terminated
和error
事件监听。
使用教程
使用依赖
- 安装 Node.js 和 npm/yarn。
安装教程
# npm
npm install fastify-mcp
# yarn
yarn add fastify-mcp
调试方式
- 启动 Fastify 应用并监听端口 8080。
- 使用 SSE 客户端连接服务器并测试会话管理功能。
const sessions = new Sessions();
sessions.on("connected", (sessionId) => {
console.log(`Session ${sessionId} connected`);
});
sessions.on("terminated", (sessionId) => {
console.log(`Session ${sessionId} terminated`);
});