案例分享——MCP改进提案在生产中落地的例子

提案 SEP-1306: Binary Mode Elicitation for File Uploads

https://github.com/modelcontextprotocol/modelcontextprotocol/issues/1306

真实用例:用于医疗保健计划分析的文档上传

我是正在构建医疗保健计划分析平台 (PlanVantage) 的 MCP 服务器作者。我们的 MCP 服务器允许 AI 助手上传福利计划 PDF,以便自动提取计划设计、费率和缴款信息。后端 API 是一个简单的多部分表单 POST。

当前的问题

  • Stdio 传输(本地 MCP 服务器): 完美运行。我们的工具接受一个 file_path,服务器从磁盘读取文件,并通过多部分表单上传。用户说"上传此目录中的所有 PDF",它就能正常工作------每个文件只需一次工具调用,快速且可靠。
  • 远程 HTTP+SSE 传输(OAuth 连接器): 对于文件上传来说基本无法使用。MCP 服务器无法访问客户端的文件系统,因此模型退而求其次,读取每个 PDF,进行 base64 编码,并将其作为字符串工具参数传递。对于典型的 2-5MB 的福利 PDF,这会导致:
    • 二进制数据大量消耗上下文窗口
    • 对于本应是简单批量上传的操作,需要 50-100 多次工具调用
    • 频繁失败、输出损坏和超时
    • 糟糕的用户体验

这迫使 MCP 服务器作者面临的权衡

特性 Stdio (本地) 远程 HTTP+OAuth
文件上传 运行良好 无法使用
安装体验 需要 Node.js,配置编辑 无缝的一键 OAuth
最适合 技术用户 非技术最终用户

我们无法同时拥有可靠的文件处理和无缝的安装体验。我们的客户是福利顾问和人力资源专业人士------要求他们安装 Node.js 并编辑 JSON 配置文件是行不通的。但远程连接器无法处理他们的核心工作流程(上传计划文档)。

为什么 SEP-1306 能解决这个问题

提议的客户端中介上传流程完全正确。客户端(Claude Desktop)已经拥有文件系统访问权限,并且已经提示用户批准工具调用------将其扩展为代理文件传输到服务器提供的上传端点,将完全弥合这一差距。我们的服务器将提供上传 URL,客户端将处理文件读取和传输,而模型的上下文窗口则保持干净。

这是我们构建生产级 MCP 集成时遇到的最大限制。非常希望看到这个提案取得进展。

相关推荐
MicrosoftReactor18 小时前
技术速递|智能体构建智能体:基于 Microsoft Agent Framework 与 Foundry 的 Skill 优先架构蓝图
ai·架构·agent·智能体·mcp
牧艺1 天前
从 Tool Calling 到 MCP Server:把业务能力做成 Agent 可复用接口
agent·全栈·mcp
凡泰AI2 天前
如何借助MCP打通企业APP内部服务:从统一调用到小程序承接
小程序·uni-app·app·mpaas·mcp·小程序容器
小四的小六3 天前
MCP Client实战翻车记:两个Server同时跑,AI调错了Tool
openai·ai编程·mcp
在水一缸3 天前
当 AI 拥有了“核按钮”:深入解析 MCP 服务器与命令执行护栏
运维·服务器·人工智能·命令执行·智能体·ai安全·mcp
wMoqi3 天前
trae cn 中ai开发配置skill mcp 规则参考(yudao-cloud项目-个人用)
ai·skill·yudao·mcp·trae
不能只会打代码4 天前
Day 006 — Multi-Agent + MCP/A2A + 安全 + 可观测性
agent·token·sse·multi-agent·mcp·a2a
冬奇Lab5 天前
MCP 系列(08):企业治理——Registry、路由与可观测性
人工智能·llm·mcp
weigangwin5 天前
agent-workspace-linux 不是远程桌面:Linux AI 工作区的隔离边界验收
linux·xvfb·mcp·桌面隔离·权限边界·bubblewrap·agent-workspace