MCP学习适配器🚀
一个智能适配器,通过以下方式学习MCP服务器API并优化令牌使用 80% 通过自动模式学习和响应过滤。
概述
此适配器位于Claude Desktop(或任何MCP客户端)和您的MCP服务器之间,自动学习它们的响应模式并过滤掉噪声。它没有发送带有冗余字段的大量JSON响应,而是智能地减少了令牌消耗,同时保持了完整的功能。
关键利益
- 输入令牌减少80% -成本大幅降低,响应速度更快
- 自我学习 -自动发现并分类API响应模式
- 智能过滤 -固定重要字段,消除噪声,重影冗余数据
- 简易替代者 -适用于现有的MCP服务器(基于Node.js)
- 社区驱动 -在中分享您学到的模式
registry.json
建筑
┌─────────────┐
│ Claude │
│ Desktop │
└──────┬──────┘
│
▼
┌─────────────────────┐
│ Learning Adapter │ ← You are here
│ - Brain (learning) │
│ - Registry (cache) │
│ - Proxy (filter) │
└──────┬──────────────┘
│
▼
┌─────────────────────┐
│ MCP Servers │
│ (ado, dovetail, │
│ filesystem, etc.) │
└─────────────────────┘快速开始
1.安装依赖项
npm install2.配置服务器
复制示例配置:
cp config/servers.json.example config/servers.json编辑 config/servers.json 使用您的设置:
{
"adapter": {
"openaiApiKey": "sk-your-openai-api-key-here"
},
"servers": {
"ado": {
"command": "node",
"args": [
"/path/to/azure-devops-mcp/dist/index.js",
"your-org-name"
],
"env": {
"project": "your-project-name",
"organization": "your-org-name"
}
},
"dovetail-mcp": {
"command": "node",
"args": ["/path/to/dovetail-mcp/dist/index.js"],
"env": {
"DOVETAIL_API_TOKEN": "your-api-token-here"
}
}
}
}3.设置Claude桌面集成
创建或编辑 .vscode/mcp.json 在您的项目中:
{
"mcpServers": {
"learning-adapter": {
"command": "npx",
"args": [
"tsx",
"/path/to/ado-learning-adapter/src/adaptive-proxy.ts"
],
"env": {}
}
}
}或者添加到您的Claude Desktop配置中(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"learning-adapter": {
"command": "npx",
"args": [
"tsx",
"/path/to/ado-learning-adapter/src/adaptive-proxy.ts"
]
}
}
}4.开始使用
适配器将自动:
- 连接到已配置的MCP服务器
- 在使用时学习响应模式
- 在中构建优化的模式
config/registry.json - 逐步减少代币使用
如何学习🧠
适配器使用 GPT 5.1 以分析API响应并将字段分类为三种类型:
- 置顶 📌 - 始终包括基本字段(例如。,
id,title,state) - 噪音 🔇 - 删除冗余字段(例如。,
_links,imageUrl,descriptor) - 幽灵 👻 - 仅汇总或计数字段(例如,长列表、嵌套对象)
在几个API调用之后,适配器学习最佳模式并自动应用它。
代币节省示例📊
之前(原始响应):
{
"id": 123,
"fields": {
"System.Title": "Fix bug",
"System.State": "Active",
"System.AssignedTo": {
"displayName": "John Doe",
"url": "https://...",
"_links": { "avatar": { "href": "..." } },
"id": "guid-here",
"uniqueName": "john@...",
"imageUrl": "https://...",
"descriptor": "..."
},
"_links": { ... }
}
}约500个代币
之后(学习和筛选):
{
"id": 123,
"fields": {
"System.Title": "Fix bug",
"System.State": "Active",
"System.AssignedTo": { "displayName": "John Doe" }
}
}~100个代币(减少80%!)
贡献🤝
如果你使用这个适配器,它会为你的MCP服务器学习模式, 请回馈!
- 将适配器用于MCP服务器
- 让它学习和优化(检查
config/registry.json) - 用你学到的模式创建公关
- 帮助社区节省代币和成本! ❤️
我们分享的越多,适配器就越适合每个人。
路线图🛣️
当前支持
- ✅ 基于Node.js的MCP服务器
- ✅ 自动模式学习
- ✅ 响应过滤和优化
- ✅ 多服务器支持
即将推出
- 🔜 HTTP/REST MCP服务器
- 🔜 基于沙盒的MCP服务器
- 🔜 预构建的模式库
- 🔜 配置UI
- 🔜 性能分析仪表板
配置参考⚙️
servers.json结构
{
"adapter": {
"openaiApiKey": "string" // Required for learning (uses GPT 5.1)
},
"servers": {
"server-name": {
"command": "string", // Command to run (e.g., "node", "npx")
"args": ["string"], // Arguments to pass
"env": { // Environment variables
"KEY": "value"
}
}
}
}register.json结构
此文件是自动生成的,但您可以编辑它:
{
"tool_name": {
"status": "optimized", // "learning" or "optimized"
"schema": {
"pinned": ["field.path"], // Always include
"noise": ["field.path"], // Always exclude
"ghosts": ["field.path"] // Summarize/count
}
}
}故障排除
适配器未连接?
- 在中验证MCP服务器路径
config/servers.json - 检查服务器是否独立运行:
node /path/to/server/index.js - 查找控制台输出中的错误
不学习?
- 确保
openaiApiKey设定在config/servers.json - 适配器需要GPT 5.1访问权限才能学习
- 检查
config/registry.json查看学习进度
代币使用率仍然很高?
- 学习需要几个API调用(每个工具通常需要3-5个调用)
- 检查刀具状态是否在中“优化”
registry.json - 某些工具可能需要手动调整模式
许可证📝
看 许可证 了解详情。
致谢🙏
专为MCP社区打造。特别感谢所有分享他们所学模式的贡献者!
______________________________________________________________________
问题? 打开一个问题! 想贡献吗? PR欢迎! 喜欢吗? 启动回购! ⭐
