news 2026/9/26 5:39:05

PromptX的toolx工具实战:从零接入你的第一个API,让AI替你调用外部服务

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PromptX的toolx工具实战:从零接入你的第一个API,让AI替你调用外部服务

PromptX的toolx工具实战:从零接入你的第一个API,让AI替你调用外部服务

【免费下载链接】PromptXPromptX · 领先的AI 智能体上下文平台 | PromptX · Leading AI Agent Context Platform项目地址: https://gitcode.com/Deepractice/PromptX

PromptX 是一款领先的 AI 智能体上下文平台,它的toolx 工具系统让你用一个简单的 JS 文件就能把自己的 API、数据库、任何外部服务接入 AI——写好工具后,AI 会自动发现并替你调用。本文带你从零完成第一个工具接入,全程不到 10 分钟。

一、toolx 是什么?为什么需要它

大模型"聪明"但"手短":它不能替你查天气、读 PDF、调你公司的接口。toolx 就是 PromptX 的工具执行环境,解决三件事:

  1. 让 AI 能干活:你写的每个工具都会自动暴露给 AI,AI 通过 MCP 协议调用;
  2. 安全隔离:每个工具跑在独立沙箱里,依赖互相不冲突;
  3. 零运维:声明依赖后系统自动安装(pnpm 管理),不用手动npm install。

内置已带 6 个工具可以直接用:filesystem(文件操作)、pdf-reader(PDF 分页阅读)、excel-tool、word-tool、role-creator(创建 AI 角色)、tool-creator(创建新工具),源码见 packages/resource/resources/tool/。

二、准备工作:安装并启动 PromptX

  • 需要 Node.js 环境,克隆仓库后进入项目执行pnpm install安装依赖;
  • 启动 PromptX 桌面端,在「工具」页面可以查看系统内置工具和用户自定义工具;
  • 工具的统一规范定义在 ToolInterface.js,官方使用指南在 docs/toolsandbox.md。

三、4 步写出你的第一个 API 工具

以"查询天气 API"为例,工具只需实现 3 个方法:getMetadata(元信息)、getSchema(参数说明)、execute(执行逻辑)。

第 1 步:确定目录结构

.promptx/resource/tool/ └── weather/ ├── weather.tool.js # 工具实现(必需) └── weather.manual.md # 工具手册(可选,AI 会先读它)

第 2 步:编写工具骨架

// weather.tool.js module.exports = { getMetadata() { return { name: 'weather', version: '1.0.0', description: '查询指定城市的实时天气' }; }, getSchema() { return { type: 'object', properties: { city: { type: 'string', description: '城市名称' } }, required: ['city'] }; }, // 第 3 步:声明依赖,系统自动安装 getDependencies() { return { 'axios': '^1.6.0' }; }, // 第 4 步:执行逻辑 async execute(params) { const axios = await loadModule('axios'); const res = await axios.get(`https://api.weather.com/v1/${params.city}`); return { success: true, data: res.data }; } };

💡 完整可运行示例(含数据库连接、HTTP 桥接)参考 tool-with-bridge.example.js。

getSchema里的description会直接给 AI 看——参数描述写得越清楚,AI 调用就越准确,这是新手最容易忽略的一点。

四、自动依赖安装:声明即用

工具第一次运行时,toolx 会:

  • 检测getDependencies()声明的包是否已安装;
  • 用 pnpm 自动安装到该工具独立的~/.promptx/toolbox/[工具名]/node_modules/;
  • 修改版本号后下次运行自动更新。

每个工具拥有独立的node_modules和package.json,两个工具一个用lodash@3、一个用lodash@4也完全不打架。ES Module 和 CommonJS 包也无需区分,统一用loadModule('包名')加载即可,沙箱实现见 ToolSandbox.js。

五、让 AI 调用你的工具:MCP 一键接入

工具放好后无需任何注册——PromptX 内置了名为toolx的 MCP 工具(实现见 toolx.ts),AI 通过一段 YAML 就能操作任何工具,共 5 种模式:

模式作用使用场景
manual读工具手册第一次使用前必做
execute执行工具正式调用
configure设置环境变量配置 API Key 等密钥
dryrun预览不执行安全检查
log查看执行日志排查问题

AI 实际发起的调用长这样:

tool: tool://weather mode: execute parameters: city: 上海

还支持configure模式给工具注入 API Key:

tool: tool://weather mode: configure parameters: API_KEY: sk-xxxx123

工具内通过this.api.environment.get('API_KEY')安全读取,密钥不会出现在对话记录里。

六、进阶:Bridge 模式让工具可测试、可 Mock

如果你的工具依赖数据库、第三方 API 等外部服务,推荐用Bridge 桥接模式:给每个外部操作同时提供real(真实实现)和mock(模拟实现)两份代码。这样:

  • 用dryrun模式测试时走mock,不消耗真实 API 配额、不碰生产库;
  • 通过getBusinessErrors()定义业务错误(如"连接被拒绝"),AI 会自动识别错误并给出修复建议,而不是把一堆堆栈丢给你。

数据库 + HTTP 双桥接的完整写法在 tool-with-bridge.example.js 中,直接抄作业即可。

七、常见问题(新手避坑清单)

  • require 报"这是 ES Module 包"?这是保护机制,改用await loadModule('包名');
  • AI 不调用我的工具?检查description是否清晰、是否提供了manual.md手册;
  • 依赖装在哪里?~/.promptx/toolbox/[工具名]/node_modules/;
  • 支持私有 npm 源?支持,配置好.npmrc即可。

八、延伸阅读

  • 完整沙箱指南:docs/toolsandbox.md
  • 工具接口规范:ToolInterface.js
  • MCP 工具桥接实现:toolx.ts
  • 内置 PDF 阅读工具示例:pdf-reader.tool.js

照着上面的步骤,你现在就可以写一个自己的工具,然后在对话里对 AI 说一句"帮我查一下杭州天气"——它会自己找到你的工具、填好参数、拿到结果。这就是 toolx 的核心价值:把一次性的编码,变成 AI 的长期能力。

【免费下载链接】PromptXPromptX · 领先的AI 智能体上下文平台 | PromptX · Leading AI Agent Context Platform项目地址: https://gitcode.com/Deepractice/PromptX

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/26 5:38:16

系统集成十年演进:从机房堆叠到工业机器人系统集成

有个做售前的朋友前两天问我:“你说咱们这个系统集成行业,到底还算不算一个行业?”我当时愣了半天。要说算吧,现在的大项目动辄就是云原生化、软件定义一切,那种传统“搬服务器、拉网线、装系统”的集成活儿&#xff0…

作者头像 李华
网站建设 2026/9/26 5:37:08

视觉工件尺寸测量:从标定到亚像素边缘提取的微米级精度实战

简介:这份资源围绕计算机视觉在工件尺寸测量中的应用展开,面向从事工业检测、自动化产线或机器视觉方向的学习者与工程人员,帮助理解如何用图像处理替代传统卡尺、千分尺等接触式量具,解决批量生产中尺寸检测效率与精度问题。压缩…

作者头像 李华
网站建设 2026/9/26 5:36:52

Flash Attention实战避坑指南:四款大模型推理压测深度解析

1. 这不是“模型评测”,而是一场面向真实部署场景的Flash推理压力测试最近两周,我连续在三类不同规格的机器上跑了四轮完整实测:一台32GB内存RTX 4090的开发工作站、一台64GB内存双A100 80G的推理服务器、还有一台用MacBook Pro M3 Max临时搭…

作者头像 李华
网站建设 2026/9/26 5:36:20

Canal原理与实战:MySQL实时同步到ES、Redis、Kafka

做了几年数据同步,MySQL主库到从库、到ES、到Redis、到数仓,各种折腾。今天把Canal这套东西掰开揉碎讲清楚。Canal是阿里巴巴开源的一个中间件,核心原理是把自己伪装成一个MySQL的从库,订阅主库的Binlog日志,然后把增量…

作者头像 李华
网站建设 2026/9/26 5:34:47

秦皇岛越野叉车生产厂家挑选全攻略,北叉重工信誉度高广受信赖

北叉重工(天津)有限公司是长期深耕越野叉车研发、生产与工况适配的实体制造品牌,始终聚焦野外非铺装路面的搬运作业难题,依托11000平方米标准化生产厂区搭建独立的越野叉车研发与装配生产线,打造多吨位、多机型、高适配的越野叉车产品体系&am…

作者头像 李华
网站建设 2026/9/26 5:34:23

财经直播聊天系统PHP源码部署与WebSocket实时推送改造

简介:财经直播聊天系统是一套面向金融投资机构与投资者的网页版实时交流工具,基于PHP与ThinkPHP主流框架开发,采用B/S架构,无需安装客户端即可使用,为在线语音、文字图片互动及喊单发布等场景提供一站式支持。系统具备…

作者头像 李华