CLI工具集

一个用于快速调用CLI MCP工具的命令行工具集,提供交互式工具调用、记录管理、可视化界面和蓝图功能。

  • by knoxHuang
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 knoxHuang/mcp-tools

使用说明

MCP Tools

用于快速调用 CLI MCP 工具的命令行工具集,提供交互式工具调用、记录管理、可视化界面和蓝图功能。

功能特性

  • 🔧 交互式工具调用 - 通过命令行交互式调用 MCP 服务器上的工具
  • 📝 调用记录管理 - 自动保存所有工具调用记录(成功/失败)
  • 🔄 记录重播 - 支持重播历史调用记录
  • 📊 可视化界面 - Web 界面查看和管理调用记录
  • 🗺️ 蓝图功能 - 创建、保存和执行工具调用蓝图(工作流)
  • 📋 Schema 导出 - 导出工具的 Schema 定义
  • ⚠️ 错误处理 - 自动识别和记录错误(包括 code 500 和 schema 验证错误)

环境要求

  • Python 3.8+
  • Node.js 14.0+ (可选,用于启动脚本)
  • MCP 服务器运行在 http://localhost:9527/mcp

安装步骤

1. 克隆项目

git clone <repository-url>
cd mcp-tools

2. 创建并激活虚拟环境

# 创建虚拟环境
python3 -m venv venv

# 激活虚拟环境
source venv/bin/activate

3. 安装 Python 依赖

pip install mcp fastapi uvicorn

4. 安装 Node.js 依赖(可选)

npm install

使用方法

方式一:直接使用 Python 脚本

# 激活虚拟环境
source venv/bin/activate

# 启动主程序
python3 main.py

方式二:使用 Node.js 启动脚本

# 使用 npm 脚本
npm start

# 或直接执行
node bin/start.js [mcp-project-path]

方式三:使用 Shell 脚本启动可视化器

# 启动可视化服务器
./start_visualizer.sh

# 或手动启动
source venv/bin/activate
python3 visualizer_server.py

然后在浏览器中访问:http://localhost:8000

主要功能说明

1. 调用工具

启动程序后,选择菜单选项 1. 调用工具,然后:

  • 选择要调用的工具编号
  • 根据提示交互式输入参数
  • 查看调用结果
  • 结果会自动保存到 mcp_records/ 目录

2. 查看历史记录

选择菜单选项 2. 查看历史记录,查看所有已保存的调用记录。

3. 重播历史记录

选择菜单选项 3. 重播历史记录,可以:

  • 选择单个记录进行重播
  • 批量重播所有记录

4. 导出工具 Schema

  • 导出所有工具 Schema:选择菜单选项 4. 导出所有工具 Schema 定义
  • 导出单个工具 Schema:选择菜单选项 5. 导出单个工具 Schema 定义

Schema 文件保存在 mcp_tools_schemas/ 目录。

5. 可视化界面

启动可视化服务器后,访问 http://localhost:8000,可以:

  • 查看所有调用记录
  • 重播记录
  • 创建和管理蓝图
  • 执行蓝图工作流

目录结构

mcp-tools/
├── main.py                 # 主程序入口
├── visualizer_server.py    # 可视化服务器
├── visualizer.html        # 可视化界面 HTML
├── start_visualizer.sh     # 启动可视化器脚本
├── bin/                    # Node.js 启动脚本
│   ├── start.js
│   └── visualizer.js
├── visualizer/             # 前端可视化代码
│   ├── main.js
│   ├── records.js
│   ├── tools.js
│   ├── blueprint.js
│   └── ...
├── mcp_records/            # 成功调用记录(自动创建)
├── mcp_errors/             # 错误调用记录(自动创建)
├── mcp_tools_schemas/      # 工具 Schema 定义(自动创建)
├── mcp_blueprint/          # 保存的蓝图(自动创建)
└── venv/                   # Python 虚拟环境

配置说明

MCP 服务器地址

默认 MCP 服务器地址为 http://localhost:9527/mcp。

如需修改,请编辑以下文件中的 MCP_SERVER_URL 常量:

  • main.py (第 13 行)
  • visualizer_server.py (第 22 行)

记录存储位置

  • 成功记录:mcp_records/record_*.json
  • 错误记录:mcp_errors/error_*.json 或 mcp_errors/validation_error_*.json
  • Schema 定义:mcp_tools_schemas/{tool_name}_{timestamp}.json
  • 蓝图:mcp_blueprint/{blueprint_name}.json

记录文件格式

成功记录示例

{
  "timestamp": "2024-01-01T12:00:00",
  "tool_name": "example_tool",
  "arguments": {
    "param1": "value1"
  },
  "result": {
    "structuredContent": {
      "result": {
        "code": 200,
        "data": "..."
      }
    }
  },
  "success": true,
  "validation_error": false,
  "error": null
}

错误记录示例

{
  "timestamp": "2024-01-01T12:00:00",
  "tool_name": "example_tool",
  "arguments": {
    "param1": "value1"
  },
  "result": null,
  "success": false,
  "validation_error": true,
  "error": {
    "type": "schema_validation_failed",
    "summary": "Invalid structured content returned by tool",
    "failed_path": "...",
    "schema_definition": {...}
  }
}

常见问题

1. 无法连接到 MCP 服务器

问题:提示无法连接到 http://localhost:9527/mcp

解决方案:

  • 确保 MCP 服务器正在运行
  • 检查服务器地址和端口是否正确
  • 检查防火墙设置

2. 虚拟环境激活失败

问题:source venv/bin/activate 命令失败

解决方案:

  • 确保已创建虚拟环境:python3 -m venv venv
  • 检查虚拟环境目录是否存在
  • 在 Windows 上使用:venv\Scripts\activate

3. 依赖安装失败

问题:pip install 失败

解决方案:

  • 确保已激活虚拟环境
  • 升级 pip:pip install --upgrade pip
  • 使用国内镜像源:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple mcp fastapi uvicorn

4. 可视化服务器无法启动

问题:python3 visualizer_server.py 报错

解决方案:

  • 确保已安装 FastAPI 和 Uvicorn:pip install fastapi uvicorn
  • 检查端口 8000 是否被占用
  • 查看错误日志定位具体问题

注意事项

  • ⚠️ 所有工具调用记录都会自动保存,请定期清理不需要的记录
  • ⚠️ Schema 验证错误会保存原始返回数据,文件可能较大
  • ⚠️ 蓝图执行会按顺序调用工具,遇到错误会停止执行
  • ⚠️ 重播记录时不会保存新的记录,避免重复记录

许可证

MIT License