案例分享——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 集成时遇到的最大限制。非常希望看到这个提案取得进展。

相关推荐
xrlfreedom19 小时前
大厂 MCP 面试实录:基于 OpenTelemetry 与 OAuth 2.1 的可重复集成测试方案设计
opentelemetry·mcp·oauth 2.1
吴佳浩1 天前
为什么每个人最终都会使用 Agent?从 LLM 到 Agent,看懂 AI 为什么一定会走向执行时代
llm·agent·mcp
仓三1 天前
Chrome DevTools MCP 上手:让 Coding Agent 自己调试前端页面
前端·chrome devtools·mcp
xrlfreedom2 天前
大厂 MCP 面试实录:设计需人工确认的高风险 Tool 的工程化方案
opentelemetry·mcp·rag 知识库·向量检索与重排
gsls2008082 天前
OpsKat封装MCP:用 Go 标准库把运维 CLI 变成 AI 的“手“
运维·人工智能·golang·mcp
zhuodedao2 天前
Spring AI + MCP 文件工具未调用问题复盘:为什么初始化成功却没有写入文件?
java·debug·agent·springai·mcp
夜猫逐梦2 天前
【MCP】ida-pro-mcp 入门实战:安装、启动并用 MCP Inspector 调通四层连通
ida·mcp·ida-pro-mcp
Geek-Chow2 天前
MCP 模型上下文协议:四、概念地图 · 八个概念与五个组件
人工智能·大语言模型·mcp
张彦峰ZYF2 天前
MCP 从“能连工具”到“像 Web 一样部署”——无状态核心、扩展框架与企业级 Agent 基础设施的真正分水岭
人工智能·llm·agent·mcp
AI程序员2 天前
MCP Apps 能直接返回 HTML,为什么还需要 A2UI?
人工智能·agent·mcp