mcp-use
用 TypeScript 构建、调试和部署带交互界面的 MCP 服务与应用。
源码展示了工具的只读、破坏性和开放世界注解示例,安全政策也要求审查权限、限制工具访问并通过环境变量保存秘密;工作流的写权限和外部效果在文件中可见。扣分点是框架级用户确认机制、完整数据流说明、依赖审计或漏洞缓解证据均不足,公共隧道和托管部署的数据处理边界未展开,也没有回滚机制。来源列出了作者、社区、Manufact 和安全联系人,但发布者身份未经企业注册表验证,故不能视为已验证出处。
README、示例和代理集成测试对客户端、代理、工具调用及关闭流程的描述基本一致;界面示例包含加载、错误和调用失败状态,测试也用 finally 关闭代理。扣分点是仅有一个依赖真实 OpenAI 服务和凭据的集成案例,未提供离线替代、依赖可用性保证或全面的框架级失败诊断证据。
材料清楚覆盖 TypeScript、Python、服务器、客户端、代理、Inspector、React Views、ChatGPT、Claude、自托管和托管部署等受众与场景。工具 schema、注解、名称绑定和传输配置提供了较好的能力及触发边界。扣分点是平台差异、运行时前提、模型兼容矩阵和不适用场景未被完整说明,开放世界工具的策略仍主要交给应用作者。
README 的快速开始、构建、检查、部署、比较、示例、生态、安全和贡献结构清晰;MIT 正文完整,v1 到 v2 迁移路径和包职责也明确。扣分点是安装命令使用 latest,源材料中没有锁定版本的完整安装要求、FAQ、集中式已知限制或实际变更日志内容;维护者和报告渠道虽已列出,但发布及长期维护责任没有正式治理说明。
类型化输入输出、结构化结果、视图绑定、Inspector、CLI 调用和截图流程能产生可直接开发与调试的成果,示例也具备较强可用性。扣分点是性能、安装体积和竞品优势主要来自 README 自述,未在给定材料中展示基准方法或结果文件;免费部署说法也未说明资源限制、托管依赖和长期成本。
独立的 LICENSE 和 SECURITY 文件能交叉印证 README 的许可证、安全联系人及安全实践,集成测试也具体展示了一条代理调用工具的路径。扣分点是基准、协议一致性、性能和竞品功能声明主要依赖外部链接或徽章,给定文件无法逐项追溯;营销性事实、测量结果和推断之间缺少明确标识。
- 公共隧道会把本地 MCP 服务暴露到外部;启用前应核查认证、访问控制、日志记录和数据保留策略。
- 代理集成测试使用 ChatOpenAI 和 gpt-4o,静态材料未说明凭据需求、费用上限、数据发送范围或离线测试方式。
- 示例中的 destructiveHint 和 readOnlyHint 是元数据,不应在缺少运行时强制、用户确认及补偿操作时视为安全控制。
- npx -y create-mcp-use-app@latest 会获取可变版本;生产采用前应固定版本并审查依赖与供应链。
- 性能、协议一致性及竞品比较未由本次提供的文件充分证实,应在采购或生产采用前独立核验。
这个 Agent 能做什么,适合哪些场景?
mcp-use 是一个以 TypeScript 为核心的全栈 MCP 框架,而不是单一的成品智能体。它提供 MCPServer、Zod 类型契约、React Views、客户端、智能体组件、Inspector、隧道和项目脚手架,可用于构建 MCP 服务、ChatGPT 插件与 Claude 连接器。工具可以同时返回文本 content 和 structuredContent,并通过 view 元数据把结构化结果绑定到 React 界面。开发者既能在浏览器 Inspector 中调用和检查工具,也能通过 @mcp-use/client 与命令行进行无头测试和截图验证。项目可部署到 Manufact,也提供自托管指引,因此核心交付边界是一个可连接的 MCP HTTP 端点及其客户端落地页和交互视图。
端到端流程从 npx -y create-mcp-use-app@latest 生成服务器、TypeScript 配置、开发脚本、Inspector 和 React View 管线开始。开发者用 MCPServer 注册工具,以 Zod 定义 inputSchema 和 outputSchema,并可通过 view: { name: "..." } 将工具绑定到 views/<name>/view.tsx。服务器接收工具输入,运行处理函数,返回 MCP 文本 content 与类型化的 structuredContent;React 组件使用 useToolContext 读取输入、状态和输出,并用 useCallTool 再次调用工具。npm run dev 在 /mcp 提供端点,并在 /mcp/inspector 提供 Inspector;mcp-use client 可以连接、列出和调用工具,mcp-use screenshot 可以渲染并保存 View 截图。生产构建使用 npm run build,可通过 npm run deploy 发布到 Manufact,或按照自托管方案运行。
- TypeScript 团队需要为 ChatGPT 对话构建带 React 卡片、图表或地图等交互界面的 MCP App。
- Claude 集成开发者希望把现有业务能力包装成具有输入输出模式和注解的 MCP 工具与连接器。
- MCP 服务作者需要在同一开发循环中调用工具、验证输入并检查 View,而不想另行搭建调试界面。
- 自动化测试或 CI 维护者需要从终端连接 MCP 服务、枚举工具、执行代表性调用并保存界面截图。
- 需要私有部署的工程团队希望保留自托管路径,同时仍可选择托管隧道和 Manufact 部署。
- 开发模型驱动智能体的团队希望组合
@mcp-use/client与@mcp-use/agent,让智能体调用 MCP 服务。
这个 Agent 有哪些优点和局限?
- Zod 模式贯穿工具输入、结构化输出、View props 和工具调用,减少服务端与界面之间重复定义类型的工作。
- React Views 可直接绑定 MCP 工具,同时输出普通文本和 structuredContent,适合在支持 MCP Apps 的宿主中提供交互体验。
- 内置浏览器 Inspector、无头客户端、工具调用命令和 View 截图 CLI,覆盖开发、调试与界面验证。
- 同时提供 ChatGPT 插件、Claude 连接器、客户端和智能体组件,并保留 Manufact 托管部署与自托管两种路径。
- 项目建立在官方 TypeScript SDK v2 之上,并明确提供 MCP 2026 协议、原生 Views、隧道和 OAuth 适配能力。
- 主要快速入门和完整 View 流程面向 TypeScript、React、Zod 与 npm 工具链;非 JavaScript 团队即使使用独立的 Python 包,也不能直接复用这里展示的前端流程。
- v1 项目需要遵循单独的 v2 迁移指南,说明升级可能涉及不兼容改动和迁移工作。
- ChatGPT 或 Claude 测试本地服务需要公共隧道或可访问的部署端点,会增加网络暴露和环境配置要求。
- 来源没有说明 Node.js 最低版本、Manufact 身份验证步骤、生产资源要求或自托管拓扑,采用前仍需补充运维评估。
- 对比表中的性能、磁盘占用和包数量来自项目自己的基准说明;所给材料没有独立复现结果或测试环境细节。
如何安装或部署这个 Agent?
需要可运行 npx 和 npm 的 Node.js 环境;来源未规定具体 Node.js 版本,也未说明本地开发所需凭据。创建项目:
npx -y create-mcp-use-app@latest进入生成的项目后启动:
npm run dev然后打开 http://localhost:3000/mcp/inspector;MCP 端点位于 http://localhost:3000/mcp。若要使用无头客户端,再安装:
npm install --save-dev @mcp-use/client生产构建运行 npm run build。托管部署使用 npm run deploy,但来源没有给出 Manufact 登录或凭据配置步骤;自托管所需的具体运行时配置也未在所给材料中展开。
如何使用这个 Agent?
在服务器入口中导入 MCPServer 和 z,创建服务器并用 server.tool(...) 注册工具;在工具元数据中填写 name、description、inputSchema、outputSchema、可选的 view 以及读写或开放世界注解。处理函数返回包含文本 content 和业务对象 structuredContent 的结果。若工具声明 view: { name: "weather-card" },就在 views/weather-card/view.tsx 中创建 React 组件,并用 useToolContext<"get-weather">() 读取调用结果。启动后可执行:
npx mcp-use client connect local http://localhost:3000/mcp
npx mcp-use client local tools list
npx mcp-use client local tools call get-weather city=Tokyo若要验证界面,再执行:
npx mcp-use screenshot --server local --tool get-weather city=Tokyo --output weather-card.png需要从 ChatGPT 或 Claude 测试本地服务时,可在 Inspector 中开启隧道,或运行 mcp-use dev --tunnel 获取公共 URL。
这个 Agent 与同类方案有什么区别?
项目将自身与 FastMCP TS、官方 TypeScript SDK v2、xmcp、Skybridge 和 mcp-handler 比较。其表格声称 mcp-use v2 在所测场景达到 10,982 ops/s、开发栈占用 74.4 MiB 并安装 51 个包,同时具备 Views、MCP 2026 原生 Views、一行式 OAuth 适配、截图 CLI、隧道和 Inspector。官方 SDK v2 的比较栈包含 @modelcontextprotocol/ext-apps、Vite 和 Zod;FastMCP 的比较栈还包含 Apps 扩展与 React 相关依赖。选择时应把这些数字视为仓库提供的基准,并结合团队对原生框架、附加开发工具和依赖规模的取舍自行验证。
常见问题
本地开发需要 API 密钥吗?
npm run dev 并访问本地 Inspector。Manufact 部署、托管隧道或具体 ChatGPT、Claude 连接流程可能需要账户或授权,但来源没有列出相关凭据步骤。它只能部署到 Manufact 吗?
npm run deploy 发布到 Manufact,也明确给出自托管指南入口;不过所给材料没有展开自托管运行时和基础设施配置。工具失败或仍在运行时,View 能处理状态吗?
useToolContext 暴露 pending 和 error 状态,useCallTool 也提供 isPending、data 与 error,组件可据此展示加载信息、禁用按钮或显示错误消息。能否在没有浏览器的环境中测试?
@mcp-use/client 和 mcp-use client 支持连接服务器、列出及调用工具,mcp-use screenshot 可从命令行调用工具并保存 View 截图。