SuperAPI AI 工具集

mcp-integration-patterns

智能体与模型

查看项目

更新于 10-15 10:44

技能介绍

MCP Integration Patterns 是一项面向 AI 助手扩展开发的技能,主要指导如何构建 MCP(Model Context Protocol,模型上下文协议)服务器与客户端,从而为 AI 助手增加自定义能力。

用途 该技能用于开发 MCP 服务器和客户端,使 AI 助手能够通过标准化协议访问外部工具、数据和提示词模板。它适合需要把数据库、文件系统、外部 API 等能力接入 AI 助手的场景。

主要能力 资料列出的核心能力包括:MCP 服务器开发(暴露工具、资源与提示词)、MCP 客户端集成(连接 MCP 服务器)、传输协议(stdio、HTTP/SSE、WebSocket)以及安全(认证、授权、沙箱)。

MCP 基础 MCP 为 AI 助手(如 Claude)提供三类原语:Tools(执行动作,方向为 Client → Server)、Resources(暴露数据,方向为 Client ← Server)、Prompts(模板化交互,方向为 Client ← Server),以及 Sampling(请求补全,方向为 Client ← Server)。

构建 MCP 服务器 资料提供了 Python SDK 与 TypeScript SDK 的示例。Python 示例使用 mcp.server 的 Server、stdio_server 以及 mcp.types 中的 Tool、TextContent、Resource 等,通过 @server.list_tools() 定义工具列表,通过 @server.call_tool() 处理工具调用,并以 stdio_server 运行服务器。TypeScript 示例使用 @modelcontextprotocol/sdk 的 Server、StdioServerTransport 以及 ListToolsRequestSchema、CallToolRequestSchema,通过 setRequestHandler 注册工具列表与调用处理逻辑。

资源(Resources) 资源用于暴露 AI 可读取的数据。示例展示了 @server.list_resources() 返回 Resource 列表、@server.list_resource_templates() 返回 ResourceTemplate 列表(如 file:///logs/{date}.log、db://tables/{table_name}/schema),以及 @server.read_resource() 根据 URI 读取资源内容。

提示词(Prompts) 提示词提供可复用的模板。示例通过 @server.list_prompts() 返回 Prompt 列表(如 code_review、summarize_document),并通过 @server.get_prompt() 根据名称与参数返回包含 PromptMessage 的消息内容。

传输协议 stdio 为默认方式,适用于 MCP 服务器作为子进程运行,示例给出了 claude_desktop_config.json 的配置结构(command、args、env)。HTTP with SSE 用于远程服务器,示例使用 SseServerTransport 与 Starlette 定义 /sse 与 /messages 路由。

服务器模式 资料包含三类服务器模式示例:数据库集成(使用 asyncpg 连接池,并通过 _is_dangerous_query 阻止 DROP、DELETE、TRUNCATE、UPDATE、INSERT 等破坏性查询)、文件系统访问(通过 allowed_paths 与 _validate_path 限制访问范围)、外部 API 集成(使用 httpx 调用天气与通知 API,并通过 Authorization 头传递 API Key)。

安全考虑 资料给出输入验证(使用 pydantic 的 BaseModel 与 validator 校验查询与 limit 参数)、速率限制(RateLimiter 按每分钟请求数限制)、认证(从环境变量 MCP_API_KEY 读取密钥)等实践。

适用场景 该技能适用于需要为 AI 助手接入自定义工具、数据源或提示词模板的开发场景,例如数据库查询、文件读取、外部 API 调用等。

限制 资料未提供该技能的具体安装命令、收费方式、价格、平台支持范围或实际效果说明,这些信息暂未提供。