MCP 工具 Schema 设计:让模型稳定调用,而不是猜参数
MCP 工具的输入输出 schema 是模型、客户端和业务服务之间的长期契约。本文讲解参数设计、错误模型、分页、兼容性和可测试性,避免工具越多越难用。
这里聚合 CodeNodeX AI 社区中与 AI Agent 相关的技术文章和讨论,覆盖概念解释、工具对比、工程实践、常见问题和独立开发经验。
如果你正在研究 AI Agent,建议先阅读高质量长文,再参与帖子讨论,形成从理解到实践的完整路径。
MCP 工具的输入输出 schema 是模型、客户端和业务服务之间的长期契约。本文讲解参数设计、错误模型、分页、兼容性和可测试性,避免工具越多越难用。
搜索有结果不代表结果属于当前提交。本文用 commit 水位、变更日志、删除与重命名处理、脏工作树覆盖层和原子索引发布保证 Agent 不读取过期符号。
按角色名把任务发给“最强 Agent”会忽略工具权限、版本兼容和实时容量。本文用版本化 capability descriptor、分层准入与截止期感知卸载保护交互和关键任务。
DAG 画出来不等于可恢复。本文把依赖满足、节点尝试、产物提交和图版本拆开,用事件重放与派生就绪集防止重启后漏跑、早跑或重复释放下游。
多个 Agent 返回内容后,拼接或投票都会丢失证据与适用条件。本文设计候选结果血缘、确定性冲突分类、仲裁记录和原子发布,使合并结论可复算、可撤销。
多个 Agent 同时修改共享计划、偏好或结论时,简单最后写入会丢事实。本文用版本命令、单键排序和字段级合并策略控制并发。
多个 Agent 竞争同一工作时,带 TTL 的领取记录只能帮助回收,不能阻止旧执行者迟到提交。本文用单调 fencing、尝试身份和副作用登记建立可证明的任务所有权。
Agent 互相等待结果、锁、审批或容量时,仅靠逐任务超时会把死锁拖成长故障。本文建立带代数的等待图,检测强连通环并用可验证取消收敛释放资源。
Git worktree 能隔离索引和工作目录,却不会自动解决文件、生成目标与共享契约的并行所有权。本文用版本化 claim、单调 generation、差异准入和 ref CAS 建立可回收且不可被迟到 Agent 覆盖的集成协议。
同一计划里的工具分支并行完成,并不意味着最快返回者可以先修改事实。本文设计分支结果暂存、依赖闭包、决策版本与事务性提交屏障,让乱序结果只产生一次可解释的下游推进。
没有记忆的 Agent 每次都从零开始,谈不了"连续协作"。本文讲清三层记忆模型(工作/短期/长期)、长期记忆的存储与检索、最容易被忽略的"写入策略"与"遗忘机制",以及一个生产级 Agent 记忆系统该怎么搭——记忆不是越多越好,而是越准越好。
RAG 系统检索到不同版本、不同权限或不同来源的矛盾内容时,不能让模型自行挑一个顺眼的答案。本文设计来源排序、冲突检测、时间语义和安全澄清流程。