███╗ ███╗ ██████╗██████╗ ██╗ █████╗ ███████╗██╗ ██╗ ████╗ ████║██╔════╝██╔══██╗ ██║ ██╔══██╗╚══███╔╝╚██╗ ██╔╝ ██╔████╔██║██║ ██████╔╝█████╗██║ ███████║ ███╔╝ ╚████╔╝ ██║╚██╔╝██║██║ ██╔═══╝ ╚════╝██║ ██╔══██║ ███╔╝ ╚██╔╝ ██║ ╚═╝ ██║╚██████╗██║ ███████╗██║ ██║███████╗ ██║ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚══════╝╚═╝ ╚═╝╚══════╝ ╚═╝
mcp懒惰🫠
通过延迟加载将MCP上下文窗口令牌使用率降低90%+。一个命令设置。
- MCP服务器在启动时将所有工具定义加载到上下文窗口中,甚至在您使用它们之前。对于5-10台服务器,这可能会占用您上下文窗口的30-50%。 mcp懒惰 通过一个按需加载工具的轻量级代理来代理所有MCP服务器。
82 tools exposed at startup
👇 Just 2 with mcp-lazy
快速开始
为您的代理人选择一个:
npx mcp-lazy add --cursor # Cursor
npx mcp-lazy add --antigravity # Antigravity
npx mcp-lazy add --opencode # Opencode
npx mcp-lazy add --all # or all at once然后预构建工具缓存(推荐):
npx mcp-lazy init- 这
add命令读取代理的现有MCP配置,将所有服务器定义保存到~/.mcp-lazy/servers.json,并仅用mcp懒惰代理条目替换代理配置。
init预构建工具缓存,以便您的第一个代理会话立即启动。没有它,当mcp-lazy从所有服务器发现工具时,第一个会话会稍微慢一些。
> 提示: 是否安装了新的MCP服务器?重新运行 npx mcp-lazy add -- --无需额外步骤。
运作原理
Without mcp-lazy:
Agent → MCP Server A (50 tools) + Server B (30 tools) + Server C (20 tools)
= 100 tools loaded at startup (~67,000 tokens)
With mcp-lazy:
Agent → mcp-lazy proxy (2 tools only, ~350 tokens)
↓ on-demand
Server A / B / C (loaded only when needed)
URL servers (Notion, Slack, etc.) via mcp-remote bridge代理只公开了2个工具:
- mcp_search_tools --按关键字搜索可用工具
- mcp_nexecute_tool --执行一个工具(第一次调用时延迟加载服务器)
什么 add 是否
- 当你奔跑时
npx mcp-lazy add --它
- 读取代理的现有MCP服务器配置
- 提取所有服务器定义(基于stdio和URL)
- 使用以下命令将URL服务器(需要Notion、Slack等服务的OAuth)转换为stdio命令
npx mcp-remote - 将所有内容保存到
~/.mcp-lazy/servers.json - 仅用mcp懒惰代理条目替换代理配置
- 代理从以下位置读取
~/.mcp-lazy/servers.json在运行时——这是安装后所有服务器定义所在的地方。
支持的代理
| 代理 | 状态 |
|---|---|
| 光标 | ✓ 支持 |
| 开放代码 | ✓ 支持 |
| 反重力 | ✓ 支持 |
| Codex | 本地支持(不需要) |
| Claude Code | 本机支持(不需要) |
命令
npx mcp-lazy add
- 向您的代理人注册代理:
npx mcp-lazy add --cursor # register with Cursor
npx mcp-lazy add --antigravity # register with Antigravity
npx mcp-lazy add --all # register with all agents选项:
--cursor,--opencode,--antigravity,--codex--目标代理--all--向所有代理商注册
npx mcp-lazy init
通过连接到所有已注册的服务器来预构建工具缓存:
$ npx mcp-lazy init
mcp-lazy init — building tool cache...
✓ github-mcp 15 tools 342ms
✓ postgres-mcp 12 tools 518ms
✗ slack-mcp connection timeout
✓ filesystem 8 tools 120ms
Cache saved: 35 tools from 3/4 servers in 1.2s
Ready! mcp-lazy serve will start instantly.- 并行连接到每台服务器,并将工具索引保存到
~/.mcp-lazy/tool-cache.json - 运行此之后
add因此,第一个代理会话立即开始,而不是等待发现
npx mcp-lazy doctor
诊断您的设置:
$ npx mcp-lazy doctor
✓ Node.js 18+ installed
✓ 7 MCP server(s) registered
- github, notion, slack, postgres, filesystem, memory, puppeteer
✓ Cursor: registered
Token savings: 67,300 → 350 (99.5% reduction)URL和OAuth支持
- 一些MCP服务器托管在URL上,需要OAuth(Notion、Slack、Linear等)。这
add命令通过使用以下命令将其转换为stdio命令来自动处理这些命令npx mcp-remote:
URL server: https://mcp.notion.com/sse
↓ converted automatically
stdio: npx mcp-remote https://mcp.notion.com/sse- 这意味着您的所有服务器——本地stdio和需要URL的远程OAuth服务器——都可以通过mcp-lazy进行代理,无需手动转换。
搜索工作原理
当代理人来电时 mcp_search_tools("query database"),代理使用加权评分在所有注册的工具中搜索:
| 比赛类型 | 得分 |
|---|---|
| 工具名称完全匹配 | +1.0 |
| 部分工具名称匹配 | +0.8 |
| 描述关键字匹配 | +0.6 |
| 服务器描述匹配 | +0.4 |
结果按相关性排序并返回给代理。
常见问题解答
Q: 第一次跑步很慢。
- 在首次启动时,mcp-lazy连接到每个注册的mcp服务器,以发现可用的工具并构建搜索索引。这可能需要10-30秒,具体取决于服务器的数量。
- 之后,工具索引将缓存在
~/.mcp-lazy/tool-cache.json。后续启动从缓存加载并在一秒钟内启动。 - 当服务器配置更改时,缓存会自动刷新。
- 跑
npx mcp-lazy init在设置好预构建缓存后,避免缓慢的首次启动。
Q: 在安装过程中,我收到了“错误:意外错误”。
- 检查您是否具有配置目录的读/写权限。例如:
> 光标: ~/.cursor/mcp.json
> 开放代码: ~/.config/opencode/config.json
> 反重力: ~/.gemini/antigravity/mcp_config.json
- 试着跑步
ls -la在相关路径上验证权限。如果需要,请使用 `chmod 644
`.
Q: 设置MCP-lazy后,我安装了一个新的MCP服务器。我该如何添加它?
- 只需像往常一样将新服务器添加到代理的MCP配置中,然后重新运行add命令:
npx mcp-lazy add --cursor # re-scans and picks up the new server- mcp-lazy将检测新服务器,并将其添加到
~/.mcp-lazy/servers.json,并保持代理配置不变。
范围
- mcp-lazy目前支持 仅限全局MCP配置 (例如。,
~/.cursor/mcp.json).项目级MCP配置(例如。,.cursor/mcp.json在项目根目录中)尚不支持。
需求
- Node.js 18+
- 现有MCP服务器配置(全局范围)
许可证
麻省理工学院
