关于 Mcp Cli Catalog
Mcp Cli Catalog 是一个 MCP 服务,用于让编码 Agent 发现本机可用的命令行工具。目录只描述命令,不负责执行;Agent 需具备 Shell 访问权限才能运行命令。
主要功能
- 01将命令行工具发布为 MCP 定义
- 02通过 JSON 目录配置工具
- 03提供用法提示和命令名称
适用场景
- 01帮助 Agent 发现本机命令行工具
- 02通过命令示例引导 Shell 操作
MCP 相关
服务将配置的命令行条目作为 MCP 工具定义公开。这些定义引导 Agent 使用 Shell,本身不执行命令。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mcp-cli-catalog
一个用于发布你机器上 CLI 工具的 MCP 服务。编码 Agent 已经可以访问 shell,也擅长生成包含管道和筛选器的复杂命令。这个服务只是告诉它们有哪些工具可用,让它们更高效地使用 MCP 工具。
为什么
- 大模型编码 Agent 可以有效地通过管道串联 shell 命令,以筛选和重塑复杂数据。
- 将 CLI 工具声明为 MCP 工具,可以让大模型发现这些工具。
工作原理
- 此服务会将你的 CLI 工具公开为 MCP 工具定义,让大模型了解有哪些工具可用。
- 目录中定义的 MCP 工具只会指示大模型使用 shell,不会自行执行任何工具。
- Agent 需要访问 shell 才能实际运行命令。
安装
将此服务添加到你的 MCP 配置中(例如,用于 Claude Code):
{
"mcpServers": {
"cli-catalog": {
"command": "npx",
"args": ["mcp-cli-catalog"]
}
}
}
也可以使用自定义目录路径:
{
"mcpServers": {
"cli-catalog": {
"command": "npx",
"args": ["mcp-cli-catalog", "--config", "./tools.json"]
}
}
}
配置工具
添加一个 JSON 目录文件(默认:~/.mcp-cli-catalog.json),列出你希望公开供发现的 CLI 工具:
{
// JSON Comments are allowed.
"tools": [
{
"name": "knowledge-base-search",
"description": "Search full text across the knowledge base",
"usage": "knowledge-base-search 'pattern' | head"
},
{
"name": "knowledge-base-get",
"description": "Get a knowledge base file",
"usage": "knowledge-base-get path/to/file.md | sed -n '100,200p'\nknowledge-base-get path/to/file.md | rg 'TODO'"
}
]
}
- 必须提供
name和description。 usage(可选)会作为提示显示在响应中。command(可选)是要运行的确切字符串。如果省略,则使用工具的name。- 使用
--config <path>或MCP_CLI_CATALOG_FILE=<path>指向其他目录。
测试
使用 MCP Inspector 测试你的服务配置:
npx @modelcontextprotocol/inspector npx mcp-cli-catalog
也可以使用自定义目录:
npx @modelcontextprotocol/inspector npx mcp-cli-catalog --config ./tools.json
开发
npm run dev:直接从src/index.js运行npm run build:编译到dist/index.js并修复权限npm start:从dist/index.js运行构建后的服务
替代方案
Cloudflare 的“Code Mode”1 和 Anthropic 关于 MCP 代码执行的文章2 探讨了另一种解决 MCP 工具挑战的方法。它们的方案通过 SDK 向大模型提供 MCP 工具,由大模型编写代码来调用和处理这些工具。本项目采用更简单的方式:构建 CLI 工具,并通过 MCP 工具目录让它们可被发现。
- Cloudflare,《Code Mode》,2025。
- Anthropic,《Code execution with MCP》,2025。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。