写 MCP 服务,光会调 API 不够,还要把工具、资源、提示词的 schema、参数校验、传输层都做对。官方 TypeScript SDK 把这套地基铺好了:服务端、客户端双端齐全,stdio、Streamable HTTP、SSE 全支持,类型完备,和 MCP 规范同步。无论你是要造轮子还是用轮子,它都是 TypeScript 世界的「标准件」。

对已经熟悉 TypeScript 的团队来说,这个 SDK 意味着你不必再从零理解协议细节,就能把任意内部能力封装成 MCP 工具或资源。它也是 FastMCP 等上层框架的底座,理解它就理解了生态的根。

项目基本信息

信息项详情
项目名称typescript-sdk
GitHub地址https://github.com/modelcontextprotocol/typescript-sdk
项目描述The official TypeScript SDK for Model Context Protocol servers and clients
作者modelcontextprotocol
开源协议MIT / Apache-2.0
开源状态公开
LanguagesTypeScript
Stars13,659
Forks2,342
支持平台Windows / macOS / Linux
最后更新2026-10-27

一、项目介绍

modelcontextprotocol/typescript-sdk 是 MCP 协议的官方 TypeScript 实现,由协议方直接维护。它提供 servers 与 clients 两端能力,支持 stdio、Streamable HTTP、SSE 三种标准传输,让你既能把工具、资源、提示词暴露给任意 MCP 主机,也能连接任意 MCP 服务。当前 v2 实现 2026-07-28 规范,配套文档含入门、迁移与 API 参考。

二、核心优势

  • 官方正统:协议方维护,与规范同步。
  • 双端齐全:既能建服务端,也能建客户端。
  • 全传输:stdio、Streamable HTTP、SSE 全覆盖。
  • 文档完善:含入门、v2 新特性、API 参考与迁移指南。
  • 生态枢纽:FastMCP 等上层框架都基于它。

三、适用场景

  • 需要深度控制 MCP 行为或自定义传输时。
  • 教学、研究 MCP 协议机制。
  • 构建企业级、强类型约束的 MCP 服务。
  • 作为其他 Python/TS MCP 框架的底层依赖。

四、安装教程

需要 Node.js 18+,安装服务端或客户端包:

npm install @modelcontextprotocol/server
npm install @modelcontextprotocol/client

若要用框架中间件(Express/Fastify/Hono/Node HTTP),按需另装对应包。常见报错:Node 版本过低——升级到 18+;@scope 包装不上——确认 npm registry 可达;类型报错——对齐 v2 与 v1 的 API 差异。

五、使用示例

用服务端包定义一个工具:

import { McpServer } from "@modelcontextprotocol/server";
const server = new McpServer({ name: "demo", version: "1.0.0" });
server.tool("add", { a: z.number(), b: z.number() }, async ({ a, b }) => ({
  content: [{ type: "text", text: String(a + b) }]
}));
server.start();

客户端侧可建立连接、枚举工具并调用,完成「AI 应用 ↔ MCP 服务」的标准握手。

六、常见问题

  • 2.x 和 1.x 区别大吗?有较大改进,官方提供迁移指南。
  • 支持异步吗?支持 async/await。
  • 和 FastMCP 框架重复吗?SDK 是底层,FastMCP 是上层封装,二者互补。
  • 能同时开多个传输吗?按部署需求选择其一即可。

七、总结

官方 TypeScript SDK 是 MCP 在 TS 世界的「标准件」。框架可以换,但协议与边界由它定义。无论你是造轮子还是用轮子,先摸清这个 SDK,都会少走很多弯路。