MCP Server - JavaScript SDK 是一个面向 JavaScript / TypeScript 开发者的 Model Context Protocol 服务端实现,用于以编程方式暴露自定义 MCP 工具、Prompts 与资源。它基于官方 TypeScript SDK 构建,可在 Node.js 环境中快速搭建符合 MCP 规范的 Server,配合 Claude Desktop、Cursor、Cline 等 MCP 客户端即可被调用,适合做轻量级的 AI 工具链扩展。
它能接什么
- 工具 Tools:通过
server.tool(name, schema, handler)注册可调用函数,参数由 Zod schema 定义,客户端可直接调用。 - 资源 Resources:通过
server.resource(uri, metadata, reader)暴露静态或动态内容,供客户端按 URI 读取。 - Prompts:通过
server.prompt(name, schema, cb)提供可复用的提示模板与参数化插值。 - 传输协议:默认支持 stdio(标准输入输出)通信,便于本地进程间集成;也可结合 HTTP/SSE 包装层在网络环境下部署。
是否需要密钥
- 本地 stdio 模式:本地进程直连,无需任何 API Key 或 Token。
- 远程或云端部署:SDK 本身不内置鉴权,若通过 HTTP 暴露,需要自行在网关或反向代理层加入身份验证,例如 API Key、Bearer Token 或 OAuth。
- 上游 LLM 调用:若业务工具内部要继续调用 OpenAI、Anthropic 等模型,需自备相应厂商的 API Key,与 MCP SDK 无关。
典型用法
- 使用
npm i @modelcontextprotocol/sdk安装依赖。 - 编写
server.tool暴露自有工具方法。 - 通过
StdioServerTransport启动,在客户端配置文件中以node your-server.js方式注册。
总体而言,这是一个轻量、纯协议层的服务端 SDK,不托管密钥,但要求开发者自行处理任何对外暴露接口的鉴权设计。