VS Code 智能体 MCP 工具优化:紧凑 Go 代理
像 Cline、Roo Code 或 Kilo 这样的 VS Code 智能体扩展,会迅速积累大量 MCP 服务器:文件访问、搜索、数据库、GitHub、Jira、OpenAPI 等。mcp.json 配置文件膨胀到 25+ 个服务器。模型在解析这一团乱麻时浪费上下文:名称冲突(search 重复)、冗长描述、参数幻觉。结果?令牌成本飙升,却毫无实际收益。
toolc Go 代理将多个服务器聚合为单一 MCP 接口。它过滤重复项、压缩描述,并控制工具可见性。对于 VS Code,这意味着从动物园变成一个服务器。
安装与配置
从 Releases 下载二进制文件,或从源码构建:
go install github.com/aak204/Tool-Catalog-Compiler/cmd/[email protected]
优化你的配置文件:
./toolc optimize-mcp \
-input .vscode/mcp.json \
-emit vscode \
-out-dir dist/mcp-optimized
启动网关:
./toolc mcp-serve -catalog dist/mcp-optimized/toolc.compiled.json
像普通 MCP 服务器一样,将新配置接入 VS Code。你的智能体即可获得精简目录,无需额外查询。
内部架构
toolc 将 MCP 和 OpenAPI 规范转换为中间表示 (IR)。它应用三种编译模式:
- direct:完整 schema 不变 — 用于调试。
- flat:扁平列表,去重并压缩描述 — 首选模式。
- staged:基于名称发现,按需 schema — 适用于复杂 API。
OpenAPI 解析器处理巨型规范(如 Stripe API),设置深度限制并浅层复用引用。内存占用:约 48 MB。处理时间:毫秒级。
令牌节省基准测试
测试 GitHub API(1100 个端点)和 Stripe。模型:Qwen-3.6-plus、GLM-5.1、GPT-5.4、Claude Sonnet 4.6。每百万调用成本(flat 模式 vs direct):
| 模型 | 无代理 ($) | 使用 toolc ($) | 节省 (%) |
|----------------------------|------------|----------------|----------|
| qwen/qwen3.6-plus | 1807.26 | 1199.13 | 33.65 |
| z-ai/glm-5.1 | 3102.53 | 1593.14 | 48.65 |
| openai/gpt-5.4 | 8819.46 | 4291.96 | 51.34 |
| anthropic/claude-sonnet-4.6 | 10736.57 | 4290.21 | 60.04 |
成功率保持高位。Flat 模式大幅降低 token proxy 开销。
GLM-5.1 案例分析:幻觉问题与修复
GLM-5.1 在截断 JSON 上卡壳,并遗忘契约。罪魁祸首:
- 统一系统提示用于编排。
- 补全预算不足。
修复:隔离提示并提升限制。Flat 模式下成功率从 0.78 跃升至 0.92。
挑剔模型需要在编译基础上进行请求塑形。
限制与路线图
已支持:
- 本地 MCP stdio。
- OpenAPI。
- VS Code 智能体上下文。
暂未支持:
- 远程 MCP。
- 通用函数。
- OpenAI 兼容运行时(开发中)。
架构可扩展至完整控制平面。
关键要点
toolc通过压缩 MCP/OpenAPI 目录,将成本降低 33–60%。- 三种模式:flat 在性价比上胜出。
- 解析器处理递归 API(如 Stripe)而不崩溃。
- 更干净的上下文提升模型成功率。
- VS Code 即插即用,无需重写配置。
— Editorial Team
暂无评论。