渐进式MCP工具发现
基于文件系统的渐进式发现系统,用于模型上下文协议(MCP)工具。按需加载工具,而不是一次全部加载。
快速开始
安装
依赖项应该已经安装。如果需要:
cd ~/.mcp-catalogue
pnpm install需求:Node.js 20+(许多MCP服务器需要现代Node功能)
使用示例
发现工具
# List all servers
pnpm run discover
# List tools in a server
pnpm run discover -- list chrome-devtools
# Get tool details
pnpm run discover -- info chrome-devtools navigate-page使用会话
# Start a browser session
pnpm run session -- start chrome-devtools
# Navigate and screenshot
pnpm run session -- call chrome-devtools navigate_page '{"type":"url","url":"https://example.com"}'
pnpm run session -- call chrome-devtools take_screenshot '{}'
# Stop when done
pnpm run session -- stop chrome-devtools建筑
~/.mcp-catalogue/
├── servers.json # Server configurations
├── index.ts # CLI entry point
├── session-manager.ts # Persistent sessions
├── mcp-client.ts # MCP client wrapper
├── docs/ # Documentation
│ ├── discovery.md
│ ├── sessions.md
│ └── adding-servers.md
└── servers/ # Server implementations
├── coretx/
│ ├── coretx_get_ai_notes.ts
│ ├── coretx_create_session.ts
│ └── index.ts
└── chrome-devtools/
├── navigate-page.ts
├── take-screenshot.ts
└── index.ts每个工具文件都在其旁边记录了自己的输入/输出接口 callMCPTool() 包装器,保存发现元数据、验证说明和类型 共同定位。为了避免重复的类型名称通过桶泄漏,请重新导出 只有可调用包装器(例如。, export { createSession } from './coretx_create_session.js') 并将接口保存在其文件的本地。
可用服务器
跑 pnpm run discover 查看所有已配置的服务器及其工具计数。可用性取决于您的 servers.json 配置。
运作原理
- 渐进式发现:工具按文件组织,但并非全部加载到内存中
- 按需加载:仅在需要时导入所需的工具
- 会话保持:为需要它们的工具维护有状态的连接
- HTTP包装器:基于会话的服务器为工具调用公开本地HTTP端点
贡献
要添加新服务器,请参阅 添加服务器.
许可证
\[在此处添加您的许可证\]
