mcpField
M
Mcp Cli Catalog

Mcp Cli Catalog

本地服务
github.com/abcpro1开发工具150 周前更新

关于 Mcp Cli Catalog

Mcp Cli Catalog 是一个 MCP 服务,用于让编码 Agent 发现本机可用的命令行工具。目录只描述命令,不负责执行;Agent 需具备 Shell 访问权限才能运行命令。

主要功能

  1. 01将命令行工具发布为 MCP 定义
  2. 02通过 JSON 目录配置工具
  3. 03提供用法提示和命令名称

适用场景

  1. 01帮助 Agent 发现本机命令行工具
  2. 02通过命令示例引导 Shell 操作

MCP 相关

服务将配置的命令行条目作为 MCP 工具定义公开。这些定义引导 Agent 使用 Shell,本身不执行命令。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cli-catalog": {
"command": "npx",
"args": [
"-y",
"mcp-cli-catalog"
]
}
}
}
启动命令npx -y mcp-cli-catalog

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmcp-cli-catalog

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

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 工具目录让它们可被发现。


  1. Cloudflare,《Code Mode》,2025。
  2. Anthropic,《Code execution with MCP》,2025。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。