mcp-use
mcp-use 是一个专为构建 MCP(Model Context Protocol)应用和服务端而设计的全栈开发框架。它旨在简化开发者为 ChatGPT、Claude 等主流大模型创建扩展功能的过程,让 AI 助手能够安全、高效地连接外部数据源或执行特定任务。
对于希望扩展 AI 能力的开发者而言,mcp-use 解决了传统集成方式中配置繁琐、调试困难及部署复杂的问题。通过提供统一的 SDK,用户只需编写少量代码即可定义工具逻辑,并快速将其转化为 AI 可识别的服务。
该工具主要面向软件工程师和 AI 应用开发者,特别是那些熟悉 TypeScript 或 Python 的技术人员。无论是想为编程助手添加自定义技能,还是为企业构建专属的 AI 代理后端,mcp-use 都能提供流畅的开发体验。
其核心亮点在于“一站式”工作流:内置的 MCP Inspector 允许开发者在本地实时预览和调试服务;配合 Manufact MCP Cloud,还能实现从 GitHub 代码库到生产环境的自动化部署,并提供完整的日志监控与分支管理功能。这种从开发、测试到上线的无缝衔接,极大地降低了构建高质量 AI 应用的门槛。
使用场景
某 SaaS 初创团队希望让内部客服 AI 能够实时查询用户订单状态并执行退款操作,需要快速构建连接大模型与公司数据库的工具链。
没有 mcp-use 时
- 开发门槛高:开发者需手动编写复杂的 JSON-RPC 通信逻辑来处理 AI 与后端服务的交互,代码冗长且容易出错。
- 调试困难:缺乏专用测试环境,每次修改工具参数都要重启整个 AI 对话流程进行验证,排查问题耗时极长。
- 部署繁琐:将本地脚本转化为生产级服务需要自行配置服务器、日志监控和版本管理,运维成本高昂。
- 多语言割裂:前端用 TypeScript 而后端用 Python 时,难以统一标准接口,导致团队协作效率低下。
使用 mcp-use 后
- 极速构建:利用 mcp-use 的 SDK,开发者仅需几行代码即可定义“查询订单”和“执行退款”工具,自动处理底层通信协议。
- 可视化调试:通过集成的 MCP Inspector 网页工具,团队能实时模拟 AI 调用、查看输入输出数据,将调试时间从小时级缩短至分钟级。
- 一键上云:连接 GitHub 仓库后,mcp-use 自动在 Manufact 云平台部署服务,原生提供日志监控、指标分析和分支预览功能。
- 全栈统一:无论是 TypeScript 还是 Python 项目,均遵循同一套标准规范,前后端开发人员可无缝协作开发 AI 能力。
mcp-use 将原本需要数天搭建的 AI 工具链压缩至几小时内完成,让团队能专注于业务逻辑而非基础设施重复造轮子。
运行环境要求
- 未说明
未说明
未说明

快速开始
关于
mcp-use 是一个全栈的 MCP 框架,用于构建适用于 ChatGPT / Claude 的 MCP 应用程序以及面向 AI 代理的 MCP 服务器。
- 构建:使用 mcp-use SDK(ts | py)创建 MCP 服务器和 MCP 应用程序。
- 预览:通过 mcp-use MCP 检查器(在线 | 开源)测试和调试您的 MCP 服务器和应用程序。
- 部署:在 Manufact MCP Cloud 上部署——只需连接您的 GitHub 仓库,即可让您的 MCP 服务器和应用在生产环境中运行,并享受可观性、指标、日志、分支部署等功能。
文档
访问我们的文档,或直接跳转到快速入门指南(TypeScript | Python)。
针对编码智能体的技能
正在使用 Claude Code、Codex、Cursor 或其他 AI 编码智能体吗?
快速入门:MCP 服务器与 MCP 应用
TypeScript
构建您的第一个 MCP 服务器或 MPC 应用:
npx create-mcp-use-app@latest
或者手动创建一个服务器:
import { MCPServer, text } from "mcp-use/server";
import { z } from "zod";
const server = new MCPServer({
name: "my-server",
version: "1.0.0",
});
server.tool({
name: "get_weather",
description: "获取某城市的天气",
schema: z.object({ city: z.string() }),
}, async ({ city }) => {
return text(`温度:72°F,天气:晴朗,城市:${city}`);
});
await server.listen(3000);
// 检查器地址:http://localhost:3000/inspector
MCP 应用
MCP 应用允许您构建可在 Claude、ChatGPT 等多种 MCP 客户端上运行的交互式小部件——一次编写,处处运行。
服务器端:定义一个工具并将其指向一个小部件:
import { MCPServer, widget } from "mcp-use/server";
import { z } from "zod";
const server = new MCPServer({
name: "weather-app",
version: "1.0.0",
});
server.tool({
name: "get-weather",
description: "获取某城市的天气",
schema: z.object({ city: z.string() }),
widget: "weather-display", // 引用 resources/weather-display/widget.tsx
}, async ({ city }) => {
return widget({
props: { city、温度:22°C、天气状况:晴朗 },
message:`${city}的天气:晴朗,22°C`,
});
});
await server.listen(3000);
小部件端:在 resources/weather-display/widget.tsx 中创建一个 React 组件:
import { useWidget、type WidgetMetadata } from "mcp-use/react";
import { z } from "zod";
const propSchema = z.object({
city:字符串,
温度:数字,
天气状况:字符串,
});
export const widgetMetadata:WidgetMetadata = {
描述:显示天气信息,
参数:propSchema,
};
const WeatherDisplay:React.FC = () => {
const { props、是否等待中、主题 } = useWidget<z.infer<typeof propSchema>>();
const isDark = theme === "dark";
if (isPending) return <div>加载中...</div>;
return (
<div style={{
背景:深色时为#1a1a2e,浅色时为#f0f4ff,
圆角:16,内边距:24,
}}>
<h2>{props.city}</h2>
<p>{props.temperature}° — {props.conditions}</p>
</div>
);
};
export default WeatherDisplay;
位于 resources/ 目录下的小部件会自动被发现——无需手动注册。
请访问MCP 应用文档
模板
现成可用的 MCP 应用,您可以一键部署,也可以根据需要进行二次开发。
| 预览 | 名称 | 工具 | 演示 URL | 仓库 | 部署 |
|---|---|---|---|---|---|
![]() |
图表生成器 | create-chart |
打开链接 | mcp-use/mcp-chart-builder | |
![]() |
流程图生成器 | create-diagram, edit-diagram |
打开链接 | mcp-use/mcp-diagram-builder | |
![]() |
幻灯片演示文稿 | create-slides, edit-slide |
打开链接 | mcp-use/mcp-slide-deck | |
![]() |
地图探索器 | show-map, get-place-details, add-markers |
打开链接 | mcp-use/mcp-maps-explorer | |
![]() |
Hugging Face Spaces | search-spaces, show-space, trending-spaces |
打开链接 | mcp-use/mcp-huggingface-spaces | |
![]() |
食谱查找器 | search-recipes, get-recipe, meal-plan, recipe-suggestion |
打开链接 | mcp-use/mcp-recipe-finder | |
![]() |
组件库 | show-react-widget, html-greeting, mcp-ui-poll, programmatic-counter, detect-client |
打开链接 | mcp-use/mcp-widget-gallery | |
![]() |
多服务器枢纽 | hub-status, hub-config-example, audit-log |
打开链接 | mcp-use/mcp-multi-server-hub | |
![]() |
文件管理器 | open-vault, get-file, list-files |
打开链接 | mcp-use/mcp-file-manager | |
![]() |
进度演示 | process-data, fetch-report, delete-dataset, search-external, failing-tool |
打开链接 | mcp-use/mcp-progress-demo | |
![]() |
自适应国际化 | show-context, detect-caller |
打开链接 | mcp-use/mcp-i18n-adaptive | |
![]() |
媒体混合器 | generate-image, generate-audio, generate-pdf, get-report, get-html-snippet, get-xml-config, get-stylesheet, get-script, get-data-array |
打开链接 | mcp-use/mcp-media-mixer | |
![]() |
资源监视器 | show-config, update-config, toggle-feature, list-roots |
打开链接 | mcp-use/mcp-resource-watcher |
Python
pip install mcp-use
from typing import Annotated
from mcp.types import ToolAnnotations
from pydantic import Field
from mcp_use import MCPServer
server = MCPServer(name="Weather Server", version="1.0.0")
@server.tool(
name="get_weather",
description="获取某个地点的当前天气信息",
annotations=ToolAnnotations(readOnlyHint=True, openWorldHint=True),
)
async def get_weather(
city: Annotated[str, Field(description="城市名称")],
) -> str:
return f"温度:72°F,天气:晴朗,城市:{city}"
# 使用自动检查器启动服务器
server.run(transport="streamable-http", port=8000)
# 🎉 检查器地址:http://localhost:8000/inspector
检查器
mcp-use 检查器允许您以交互方式测试和调试您的 MCP 服务器。
自动包含在使用 server.listen() 时:
server.listen(3000);
// 检查器地址:http://localhost:3000/inspector
在线连接到托管的 MCP 服务器时:
独立使用:检查任何 MCP 服务器:
npx @mcp-use/inspector --url http://localhost:3000/mcp
请访问 检查器文档
部署
将您的 MCP 服务器部署到生产环境:
npx @mcp-use/cli login
npx @mcp-use/cli deploy
或者将您的 GitHub 仓库连接到 manufact.com,即可实现生产就绪,并提供可观测性、指标、日志和分支部署功能。
包概述
这个 monorepo 包含适用于 Python 和 TypeScript 的多个包:
Python 包
| 包名 | 描述 | 版本 |
|---|---|---|
| mcp-use | 完整的 MCP 服务器和 MCP 代理 SDK |
TypeScript 包
| 包名 | 描述 | 版本 |
|---|---|---|
| mcp-use | MCP 服务器、MCP 应用和 MCP 代理的核心框架 | |
| @mcp-use/cli | 带有热重载和自动检查器的构建工具 | |
| @mcp-use/inspector | 基于 Web 的 MCP 服务器预览与调试工具 | |
| create-mcp-use-app | 项目脚手架工具 |
此外:MCP 代理与客户端
mcp-use 还提供了完整的 MCP 代理和客户端实现。
构建 AI 代理
Python
pip install mcp-use langchain-openai
import asyncio
from langchain_openai import ChatOpenAI
from mcp_use import MCPAgent, MCPClient
async def main():
config = {
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
}
}
}
client = MCPClient.from_dict(config)
llm = ChatOpenAI(model="gpt-4o")
agent = MCPAgent(llm=llm, client=client)
result = await agent.run("列出目录中的所有文件")
print(result)
asyncio.run(main())
TypeScript
npm install mcp-use @langchain/openai
import { ChatOpenAI } from "@langchain/openai";
import { MCPAgent, MCPClient } from "mcp-use";
async function main() {
const config = {
mcpServers: {
filesystem: {
command: "npx",
args: ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
},
},
};
const client = MCPClient.fromDict(config);
const llm = new ChatOpenAI({ modelName: "gpt-4o" });
const agent = new MCPAgent({ llm, client });
const result = await agent.run("列出目录中的所有文件");
console.log(result);
}
main();
使用 MCP 客户端
Python
import asyncio
from mcp_use import MCPClient
async def main():
config = {
"mcpServers": {
"calculator": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-everything"]
}
}
}
client = MCPClient.from_dict(config)
await client.create_all_sessions()
session = client.get_session("calculator")
result = await session.call_tool(name="add", arguments={"a": 5, "b": 3})
print(f"结果: {result.content[0].text}")
await client.close_all_sessions()
asyncio.run(main())
TypeScript
import { MCPClient } from "mcp-use";
async function main() {
const config = {
mcpServers: {
calculator: {
command: "npx",
args: ["-y", "@modelcontextprotocol/server-everything"],
},
},
};
const client = new MCPClient(config);
await client.createAllSessions();
const session = client.getSession("calculator");
const result = await session.callTool("add", { a: 5, b: 3 });
console.log(`结果: ${result.content[0].text}`);
await client.closeAllSessions();
}
main();
模型上下文协议一致性
社区与支持
- Discord: 加入我们的社区
- GitHub Issues: 报告问题或请求功能
- 文档: mcp-use.com/docs
- 官网: manufact.com
- X.com: 关注 Manufact
- 贡献: 请参阅 CONTRIBUTING.md
- 许可证: MIT © MCP-Use 贡献者
星标历史
贡献者
感谢所有了不起的贡献者!
核心贡献者
- 皮耶特罗 (@pietrozullo)
- 路易吉 (@pederzh)
- 恩里科 (@tonxxd)
旧金山 | 苏黎世
版本历史
mcp-use@1.24.2-canary.22026/04/17@mcp-use/inspector@2.2.0-canary.22026/04/17@mcp-use/cli@3.0.2-canary.22026/04/17mcp-use@1.24.2-canary.12026/04/17@mcp-use/inspector@2.1.1-canary.12026/04/17@mcp-use/cli@3.0.2-canary.12026/04/17mcp-use@1.24.2-canary.02026/04/17@mcp-use/inspector@2.1.1-canary.02026/04/17@mcp-use/cli@3.0.2-canary.02026/04/17mcp-use@1.24.1-canary.32026/04/16@mcp-use/inspector@2.1.0-canary.32026/04/16@mcp-use/cli@3.0.1-canary.32026/04/16mcp-use@1.24.1-canary.22026/04/16@mcp-use/inspector@2.1.0-canary.22026/04/16@mcp-use/cli@3.0.1-canary.22026/04/16mcp-use@1.24.1-canary.12026/04/16@mcp-use/inspector@2.1.0-canary.12026/04/16@mcp-use/cli@3.0.1-canary.12026/04/16mcp-use@1.24.1-canary.02026/04/16@mcp-use/inspector@2.1.0-canary.02026/04/16常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
opencode
OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。














