SuperAPI AI 工具集

build-mcp-sdk

智能体与模型

查看项目

更新于 10-16 08:49

技能介绍

用途:在项目中使用 @modelcontextprotocol/sdk v1.x(单包、基于 Zod、协议版本 2025-11-25)构建或维护 MCP 服务器。识别 v1:package.json 中出现 @modelcontextprotocol/sdk,且处理器使用 (args, extra),extra 顶层含 sendNotification、authInfo、signal。若导入 @modelcontextprotocol/server 或使用 ctx.mcpReq,应改用 v2 相关技能;审计优化现有服务器则另有专门技能。

主要能力与核心规则:始终使用 McpServer(不直接用已弃用的 Server 类);用 registerTool/registerResource/registerPrompt(位置参数式 tool()/resource()/prompt() 已弃用);输入输出用 zod,SDK 自动转为 JSON Schema 2020-12;HTTP 用 StreamableHTTPServerTransport(SSEServerTransport 已弃用)。工具名 1-128 字符,字母数字下划线连字符点。输入校验错误应以工具执行错误(isError: true)返回而非协议错误,便于模型自我纠正。仅采样、诱导、资源订阅或自定义协议扩展时才访问 server.server。

用法流程:先探测现状(tree -L 3、查看 package.json/tsconfig.json),区分已有服务器审计或新建范围;选择实现分支(stdio、有状态/无状态 HTTP、加工具/资源/认证/采样/部署);预检需 Node.js 18+、npm install @modelcontextprotocol/sdk zod、TypeScript 5+ 且 moduleResolution 为 node16 或 nodenext,HTTP 另装 express。实现顺序:创建 McpServer、定义 Zod schema、注册工具/资源/提示、创建传输并 await server.connect(transport)、处理 SIGINT 优雅关闭。验证可用 npx @anthropic-ai/mcp-inspector 或 curl。文档给出最小 stdio 示例与 McpServer、registerTool 配置、CallToolResult、RequestHandlerExtra 的 API 摘要。

限制与护栏:不得使用弃用的位置参数方法与 SSE 传输;不得向客户端暴露内部错误细节;不得省略工具输入校验;不得硬编码密钥;HTTP 必须校验 Origin 头防 DNS 重绑定(createMcpExpressApp 或 hostHeaderValidation),无效来源返回 403;无参工具应省略 inputSchema 而非设为 null。v2 在 2026 年初发布,社区采用尚早,多数生产服务器仍在 v1.x;迁移细节需查阅相应迁移指南。具体价格、平台支持等信息资料未提供。