SuperAPI AI 工具集

mcp-protocol-builder

智能体与模型

查看项目

更新于 10-15 17:42

技能介绍

MCP(Model Context Protocol,模型上下文协议)是一种开放标准,用于将 AI 助手连接到外部数据源和工具。该技能帮助构建 MCP 服务器,向 LLM 暴露三类能力:工具(Tools,LLM 可执行的函数,如读取文件、查询 API、运行命令)、资源(Resources,LLM 可读取的数据源,如文件、数据库、API)、提示(Prompts,带参数的可复用模板)。MCP 采用客户端—服务器模型,服务器暴露能力,客户端(如 Claude Desktop)消费这些能力;传输方式支持 STDIO(本地)、SSE(Server-Sent Events)和 HTTP(网络)。

官方 SDK 与安装

TypeScript SDK:@modelcontextprotocol/sdk;Python SDK:mcp。安装命令:TypeScript 服务器使用 npx @modelcontextprotocol/create-server@latest my-server,然后 cd my-server && npm install;Python 服务器使用 pip install mcp,或推荐使用 uv pip install mcp。

工具(Tools)

服务器通过 ListToolsRequestSchema(TypeScript)或 @app.list_tools()(Python)声明可用工具,包括名称、描述和 inputSchema;通过 CallToolRequestSchema 或 @app.call_tool() 处理调用并返回文本内容。示例包含 read_file 和 list_directory 两个工具。

资源(Resources)

资源提供对数据源的只读访问。通过 ListResourcesRequestSchema 和 ReadResourceRequestSchema(TypeScript),或 @app.list_resources() 与 @app.read_resource()(Python)实现,返回资源的 uri、name、description、mimeType 以及 contents/ResourceContent。

提示(Prompts)

提示是 LLM 可带参数使用的模板。通过 ListPromptsRequestSchema 和 GetPromptRequestSchema(TypeScript),或 @app.list_prompts() 与 @app.get_prompt()(Python)实现,返回 PromptMessage 列表,示例为 code_review 提示。

Claude Desktop 集成

在 claude_desktop_config.json(macOS 位于 ~/Library/Application Support/Claude/,Windows 位于 %APPDATA%/Claude/)中配置 mcpServers,指定 command 和 args 指向服务器入口文件。构建后需重启 Claude Desktop,服务器将出现在 🔌 菜单中。

高级模式

文档覆盖:错误处理(校验输入并返回 isError 的错误文本,TypeScript 和 Python 示例)、异步操作(TypeScript 用 axios 做异步 API 调用,Python 用 aiosqlite 做异步数据库查询)、环境变量与配置(用 dotenv / load_dotenv 读取 API_KEY、BASE_URL)、流式响应(TypeScript 用 createReadStream 分块读取大文件)、动态工具注册(用 Map 注册工具并从配置生成工具列表与处理器)。

适用场景

适合需要将本地文件系统、数据库、API 等外部能力接入 Claude Desktop 等 MCP 客户端的开发者,支持 TypeScript 与 Python 两种技术栈。限制方面,原文未提供价格、收费模式、性能指标或具体平台兼容性等更多信息;流式增量输出仅提及未来 MCP 版本可能支持。