人工智能AI AgentAgent 框架后端多智能体RAG工具调用Agent 记忆【免费下载链接】voltagentAI Agent Engineering Platform built on an Open Source TypeScript AI Agent Framework项目地址https://gitcode.com/gh_mirrors/vo/voltagent点击查看免费下载导读本文围绕 VoltAgent 项目中关于 Model Context ProtocolMCP的官方博客内容展开系统讲解 MCP 是什么、为什么它对构建 AI Agent 至关重要以及如何通过 VoltAgent 的MCPConfiguration把第三方 MCP 服务器如文件系统服务器接入自己的 Agent。读完本文你将掌握 MCP 的核心概念、四种服务器传输类型stdio / http / sse / streamable-http的配置方式并能从零搭建一个可以读写本地文件系统的 VoltAgent 实战项目。MCP 是什么把 AI Agent 想象成一个罐子里的聪明大脑它非常擅长理解和生成语言但被封闭在数字容器里没有手也没有眼睛去直接操作外部世界——文件、网站、数据库、API 都不在它的直接触达范围内。要让 Agent 真正完成有用的任务它需要工具tools。MCPModel Context Protocol模型上下文协议解决的核心问题就是连接方式。可以把它类比成一个万能转换插头或标准电源插座如果你有一堆电动工具电钻、电锯、打磨机每个工具都需要一种完全不同的电源线那将是一场噩梦而 MCP 为 Agent 与工具即MCP 服务器之间的通信提供了一种标准方式。有了这个标准一个用支持 MCP 的框架构建的 Agent就可以连接任何同样说 MCP 语言的服务或工具例如访问本地计算机的文件系统读写文件浏览网页与数据库交互连接特定API如 GitHub、Slack、Google Maps 等运行本地脚本或应用程序。对开发者来说最大的收益是标准化开发者可以创建一次 MCP 服务器任何兼容的 Agent 都能直接使用Agent 构建者也能轻松接入多样化的能力而无需为每个工具手写大量定制集成代码。为什么你应该关心 MCPMCP 的实际价值体现在四个方面更轻松的工具集成不必成为每个 API 或系统的专家。只要有人已经为某个能力如读取文件、搜索网页构建了 MCP 服务器通常只需在 Agent 配置里插上即可更少的自定义代码、更快的开发。接入专业化工具社区正在构建大量强大的 MCP 服务器金融数据分析、智能家居控制、特定类型图片生成等MCP 让你可以在自己的 Agent 中直接复用这些专业工作。可复用性为一个目的构建的 MCP 服务器例如与 GitHub 交互不绑定某个特定 Agent 或框架。只要另一个 Agent 或平台支持 MCP同一台服务器就能被复用——构建一次多处使用。专注于 Agent 逻辑MCP 处理了通信的怎么做你可以把更多精力花在设计 Agent 的做什么和为什么上——目标、性格、核心决策逻辑——而不是陷在工具连接的管道细节里。去哪里寻找 MCP 服务器MCP 生态正在快速成长虽然目前还没有一个官方的、包罗万象的单一目录但可以从几个渠道寻找官方示例MCP 的创建方Anthropic和社区维护着参考实现与示例服务器列表是很好的起点社区聚合站已有多个网站专门收集和分类社区开发的 MCP 服务器这些站点往往是宝矿工具/平台文档某些服务或工具数据库、Stripe 这类 API 平台、甚至 Blender 这类软件的官方文档中可能会提到官方或社区构建的 MCP 服务器包管理器在 npmNode.js/TypeScript 项目中搜索modelcontextprotocol/server-*之类命名的包。VoltAgent 与 MCPVoltAgent 是一个开源 TypeScript AI Agent 框架详见 README.md它简化了复杂 AI Agent 的构建负责处理状态管理、工具使用等基础设施问题而 MCP 服务器的集成正是它的核心能力之一。VoltAgent 集成 MCP 的核心思路是在MCPConfiguration对象中声明要使用的服务器然后把该配置提供的工具tools传给Agent。VoltAgent 会自动完成以下工作启动服务器运行你为 MCP 服务器指定的命令如npx modelcontextprotocol/server-filesystem ...连接与运行中的服务器建立通信获取工具询问服务器它提供哪些能力工具暴露工具将这些工具如readFile、writeFile暴露给 Agent 的 LLM使其理解并能决定是否使用。你只需要声明要哪个服务器、它在哪剩下的事情由 VoltAgent 负责接线。从源码看 MCP 的传输层实现从源码结构看MCPConfiguration的底层客户端能力由MCPClient提供packages/core/src/mcp/client/index.ts它封装了官方 MCP SDK并根据配置的type选择不同的传输实现type: stdio使用StdioClientTransport以本地命令行子进程方式运行通过标准输入/输出通信构造函数中通过getDefaultEnvironment()继承默认环境变量并可合并env与cwd配置见 packages/core/src/mcp/types.ts 中的StdioServerConfigtype: http先尝试 Streamable HTTP失败后自动回退到 SSE对应HTTPServerConfig的自动回退设计packages/core/src/mcp/types.tstype: sse显式使用 SSE 传输SSEServerConfigtype: streamable-http显式使用 Streamable HTTP不做回退StreamableHTTPServerConfig可携带sessionId。同时MCPClient.getAgentTools 会把 MCP 服务器返回的 JSON Schema 工具定义通过zod-from-json-schema转换成 zod schema并以${serverName}_${toolName}的命名空间形式包装成 Agent 可执行的createTool工具——这就是readFile、writeFile等远程工具能被 Agent LLM 理解并调用的底层机制。MCPConfigurationpackages/core/src/mcp/registry/index.ts则负责按服务器名管理客户端连接缓存并提供getTools()、getToolsets()、getRawTools()等不同粒度的工具获取方式还支持通过authorization配置在发现discovery和执行execution阶段对工具调用进行权限控制filterOnDiscovery、checkOnExecution。此外如果你希望反过来把 VoltAgent 的 Agent、工作流和工具暴露为 MCP 服务器例如让 Cursor、Windsurf、VS Code 扩展等 MCP 客户端发现并调用可以查看 examples/with-mcp-server/README.md它演示了用voltagent/mcp-server的MCPServer将注册表镜像到 MCP 客户端并通过voltagent/server-hono挂载 HTTP/SSE 路由/mcp/*也支持--stdio模式直接供 IDE 以子进程方式连接。示例完整代码见 examples/with-mcp-server/src/index.ts。实战用 VoltAgent 连接文件系统 MCP 服务器下面我们来构建一个基础项目连接标准的文件系统 MCP 服务器让 Agent 能读取本地特定目录中的文件。完整的示例参考仓库中的 examples/with-mcp-server。创建项目最快的起步方式是使用create-voltagent-app命令行工具。我们把项目命名为mcp-filesystem-agentnpm create voltagent-applatest mcp-filesystem-agent命令会引导你完成配置多数选项使用默认值即可但要记得选择TypeScript。更多细节可参考 快速开始指南。完成后进入项目目录cd mcp-filesystem-agent此时项目结构如下mcp-filesystem-agent/ ├── src/ │ └── index.ts # 主 Agent 逻辑写在这里 ├── package.json # 项目依赖 ├── tsconfig.json # TypeScript 配置 ├── .gitignore # Git 忽略文件 └── .env # 存放 API Key需要手动添加编写 Agent 与 MCP 配置打开src/index.ts设置 MCP 配置和 Agent 定义import { openai } from ai-sdk/openai; import { VoltAgent, Agent, MCPConfiguration } from voltagent/core; import { VercelAIProvider } from voltagent/vercel-ai; // Node.js path 模块用于生成安全、跨平台的文件路径 import path from node:path; const mcpConfig new MCPConfiguration({ servers: { filesystem: { // stdio 表示 VoltAgent 会把它作为本地命令行进程运行 // 并通过标准输入/输出与其通信。 type: stdio, command: npx, args: [-y, modelcontextprotocol/server-filesystem, path.resolve(./data)], }, }, }); const mcpAgent new Agent({ name: MCP Filesystem Agent, instructions: You can interact with the local filesystem. List files, read files, write files., llm: new VercelAIProvider(), model: openai(gpt-4o-mini), tools: await mcpConfig.getTools(), }); new VoltAgent({ agents: { fsAgent: mcpAgent, }, });代码逐段解析MCPConfiguration在这里定义filesystem服务器连接。type: stdio告诉 VoltAgent 这是一个本地命令command: npx指定如何运行它args: [...]提供细节MCP 服务器包modelcontextprotocol/server-filesystem以及关键的path.resolve(./data)——这会把服务器锁在项目内的./data目录中让它只能看到这个目录。之后必须实际创建data目录mkdir data这对安全至关重要MCP 服务器被限制在最小可见范围内Agent 无法越界访问其他文件。Agent定义创建Agent实例核心是tools: await mcpConfig.getTools()。这一行告诉 VoltAgent去连接我在mcpConfig里定义的所有服务器找出它们提供的工具比如文件系统服务器的readFile、writeFile并把它们提供给这个 Agent 的 LLM 使用。VoltAgent初始化启动 VoltAgent 主服务器并把mcpAgent注册到fsAgent这个键名下。这个键名就是之后在 VoltOps LLM 可观测性平台中选中该 Agent 的方式。运行前的准备运行前需要两样东西LLM 的 API Key以及我们限制 MCP 服务器访问的data目录。创建.env文件在mcp-filesystem-agent项目根目录创建.env添加 API Key在.env中写入 OpenAI KeyOPENAI_API_KEYyour_openai_api_key_here把your_openai_api_key_here替换为你的真实 Key创建data目录与测试文件在项目根目录执行mkdir data echo Hello from the MCP agents accessible file! data/test.txt安装依赖npm install # 或 yarn install / pnpm install启动 Agentnpm run dev # 或 yarn dev / pnpm dev启动后会看到 VoltAgent 服务器的启动信息包括 VoltOps 平台的链接══════════════════════════════════════════════════ VOLTAGENT SERVER STARTED SUCCESSFULLY ══════════════════════════════════════════════════ ✓ HTTP Server: http://localhost:3141 VoltOps Platform: https://console.voltagent.dev ══════════════════════════════════════════════════此时文件系统 MCP 服务器进程也会在后台自动启动。在 Console 中测试接下来就是见证时刻打开控制台在浏览器中访问 VoltOps 平台找到 AgentAgent 会以键名fsAgent名称为 MCP Filesystem Agent列出点击进入聊天点击右下角的聊天图标打开聊天窗口让它读取文件输入并发送Please read the file named test.txt in the data directory.背后发生的事情可以在控制台的 trace 中看到Agent 收到消息LLM 理解用户想读取文件并且看到自己有一个readFile工具可用得益于 MCP 和 VoltAgentAgent 决定调用readFile工具传入参数test.txtVoltAgent 把这个工具调用路由到正在运行的文件系统 MCP 服务器进程MCP 服务器被安全限制在./data目录内读取test.txt并把内容返回VoltAgent 把内容回传给 Agent 的 LLMLLM 组织出类似好的我读了 test.txt 文件。内容是Hello from the MCP agents accessible file!的回复并在聊天中发给你。就这样Agent 通过 MCP 使用外部工具与本地文件系统完成了交互——完全符合预期。总结MCP 起初可能显得有些抽象但真正跑通之后它的价值就清晰了它确实像一个万能转换插头让 AI Agent 只需配置正确的 MCP 服务器就能获得新能力比如访问文件。VoltAgent 让连接服务器到 Agent 的过程变得相当轻松——你声明服务器框架负责启动、连接、拉取工具并暴露给 LLM。通过提供这层标准通信协议MCP 为 Agent 安全、可靠地与海量外部系统交互打开了大门。如果你想进一步探索可以从仓库中的 examples/with-mcp-server 入手查看完整的服务器端示例MCPServer配置、stdio/HTTP/SSE 三种协议同时启用、工作流与 elicitation 适配器要深入理解客户端底层实现可以阅读 packages/core/src/mcp/registry/index.ts 与 packages/core/src/mcp/client/index.ts。赞分享人工智能AI AgentAgent 框架后端多智能体RAG工具调用Agent 记忆【免费下载链接】voltagentAI Agent Engineering Platform built on an Open Source TypeScript AI Agent Framework项目地址https://gitcode.com/gh_mirrors/vo/voltagent点击查看免费下载相关推荐VoltAgent MCP 接入指南用 Model Context Protocol 为 AI Agent 连接任意外部系统VoltAgent MCP 接入指南用 Model Context Protocol 为 AI Agent 连接任意外部系统 导读 本教程面向希望在 Volt人工智能AI AgentAgent 框架后端多智能体RAG工具调用Agent 记忆Agent 工作流AI 评测MCP 服务MCP Clients语音Pydantic AI MCP Agent 实战基于 Model Context Protocol 无缝接入外部工具Pydantic AI MCP Agent 实战基于 Model Context Protocol 无缝接入外部工具 导读 本文将围绕 pydantic ai示例工程OpenManus 中的 MCPModel Context Protocol为 Agent 动态接入外部工具的即插即用协议OpenManus 中的 MCPModel Context Protocol为 Agent 动态接入外部工具的即插即用协议 本篇技术指南聚焦 OpenMa人工智能AI 应用AI Agent上一篇HeidiSQL完全攻略数据库管理零基础到精通下一篇5个关键场景深度解析go2rtc流媒体服务器的实战部署指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
12kW全GaN AIDC电源:三电平架构与磁集成技术解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 15:23:26
Jetson AGX Orin性能榨干指南:MAXN模式与jetson_clocks实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 15:23:20
Docker之镜像、容器、数据卷关系 Docker之镜像、容器、数据卷关系一个 Image(镜像)可以创建多个 Container(容器);Container 挂载 Volume(数据卷)后,数据可以在删除旧容器、创建新容器后继续使用。概念含义类比Image… · 2026/9/24 15:56:39
基于图像识别的跨平台 UI 自动化框架:Airtest 安装、Python API 与 CLI 实战指南 测试质量保障计算机视觉 【免费下载链接】Airtest UI Automation Framework for Games and Apps 项目地址: https://gitcode.com/gh_mirrors/ai/Airtest 点击查看 免费下载 Airtest 是网易开源的跨平台 UI 自动化框架,专为游戏和 App 设计,核… · 2026/9/24 15:56:33
Perfetto heapprofd 完全指南:如何从火焰图到 SQL 查清堆内存的每一分去向 Perfetto heapprofd 完全指南:如何从火焰图到 SQL 查清堆内存的每一分去向 【免费下载链接】perfetto Production-grade client-side tracing, profiling, and analysis for complex software systems. 项目地址: https://gitcode.com/GitHub_Trending/pe/perfett… · 2026/9/24 15:56:27
基于vue的蛋糕定制预约自提系统[Vue]-计算机毕业设计源码+LW文档 摘要:随着消费者对个性化蛋糕需求的增长以及线上消费习惯的普及,开发一个高效便捷的蛋糕定制预约自提系统具有重要的现实意义。本文阐述了一个基于Vue框架开发的此类系统,详细介绍了其从需求分析到设计、实现的全过程。系统实现了用户蛋糕定… · 2026/9/24 15:56:27
2分钟拿到完整电子教材 PDF:免截图免拼接的 tchMaterial-parser 教程 2分钟拿到完整电子教材 PDF:免截图免拼接的 tchMaterial-parser 教程 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具,帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载,让您更方便地获取课本内容… · 2026/9/24 15:56:08
Python新闻网站项目-6.Django内容后台管理系统配置 该项目展示了一个基于Python的Django框架所构建的新闻系统,旨在实现从新闻数据的采集、处理、展示到管理的一体化流程。通过整合Scrapy、Gerapy、NLP等技术,系统不仅具备高效的数据抓取和处理能力,还提供了前后端友好的交互界面及后台管理功能。结合Django的强大拓展性与RES… · 2026/9/24 15:56:08
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程 简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13
1D-CNN时间序列建模实战:从Conv1d原理到工业落地 简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26
柔软的L:汉语语流中被忽视的舌肌张力控制 1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44