使用说明
项目简介
mcp-client-server (MCP Test Client) 是一个用于辅助开发和测试 MCP 服务器的工具。它充当 Claude 等 LLM 平台的 MCP 服务器,并提供了一系列工具,用于部署、管理和测试其他待测 MCP 服务器。同时,它也作为一个 MCP 客户端,可以连接到这些待测服务器并进行交互,从而在不直接将待测服务器注册到 Claude 的情况下进行全面的功能验证和调试。
主要功能点
- MCP 服务器模拟: 模拟一个简单的 MCP 服务器,可以注册到 Claude 等 LLM 平台,接收并处理 MCP 请求。
- 服务器部署与管理: 能够部署和管理待测 MCP 服务器,支持本地文件路径作为服务器源,并可以设置环境变量。
- 工具调用: 允许用户通过工具调用方式,向已部署的待测服务器发送工具调用请求,并查看响应结果。
- 日志查看: 提供查看已部署服务器运行日志的功能,方便用户监控和调试服务器运行状态。
- 自动化测试: 支持运行针对待测服务器的自动化测试套件,快速验证服务器功能的正确性。
- 交互式 CLI: 提供友好的命令行界面,方便用户手动执行部署、测试、日志查看等操作。
- 开发工作流支持: 为 MCP 服务器的开发提供了一套完整的工作流,从本地开发、部署测试到最终注册,简化了开发流程。
安装步骤
- 安装 Node.js 和 npm: 确保你的开发环境中已安装 Node.js 和 npm (Node 包管理器)。
- 克隆仓库: 将 'mcp-client-server' 仓库克隆到本地:
git clone https://github.com/willccbb/mcp-client-server.git cd mcp-client-server - 安装依赖: 在仓库根目录下运行以下命令安装项目依赖:
npm install - 构建项目: 运行以下命令构建 TypeScript 项目:
npm run build
服务器配置
要将 'mcp-client-server' 作为 MCP 服务器 (即 MCP Test Client) 注册到 MCP 客户端 (例如 Claude),你需要提供以下配置信息。MCP 客户端需要这些信息才能连接到 MCP Test Client 并调用其提供的工具。
{ "serverName": "mcp-test-client", // MCP 服务器的名称,可以自定义 "command": "node", // 启动 MCP 服务器的命令,这里使用 node "args": [ // 启动命令的参数 "dist/index.js" // 指向编译后的服务器入口文件 ] }
配置参数说明:
- 'serverName': 为你的 MCP 服务器指定一个名称,例如 "mcp-test-client"。这个名称将在 MCP 客户端中用于标识该服务器。
- 'command': 指定用于启动 MCP 服务器进程的命令。对于 'mcp-client-server',由于它是 Node.js 项目,所以使用 'node' 命令来运行。
- 'args': 一个字符串数组,包含了传递给 'command' 命令的参数。这里 'dist/index.js' 是编译后的 MCP 服务器入口文件路径。
请注意: 'mcp-client-server' 通过标准输入/输出 (stdio) 与 MCP 客户端进行通信,因此不需要配置网络端口或地址。MCP 客户端直接通过 stdio 与 'mcp-client-server' 进程交互。
基本使用方法
-
启动 MCP Test Client (作为 MCP 服务器):
- 按照上述 "服务器配置" 中的说明,在 MCP 客户端 (例如 Claude) 中配置并启动 'mcp-test-client'。
- 启动后,'mcp-test-client' 将作为一个 MCP 服务器运行,并向客户端声明其提供的工具。
-
使用 MCP Test Client 提供的工具:
-
在 MCP 客户端中,你可以调用 'mcp-test-client' 提供的工具来管理和测试其他 MCP 服务器。
-
以下是一些可用的工具及其使用示例 (以 TypeScript 格式展示,模拟 MCP 客户端的调用方式):
-
部署服务器 (mcp_test_deploy_server):
mcp__mcp-test__mcp_test_deploy_server({ name: "my-server-to-test", // 待测服务器的名称 source_path: "/path/to/your/mcp-server", // 待测服务器代码的本地路径 env_vars: { API_KEY: "your_api_key" } // 环境变量 (可选) }) -
调用工具 (mcp_test_call_tool):
mcp__mcp-test__mcp_test_call_tool({ server_name: "my-server-to-test", // 已部署的待测服务器名称 tool_name: "tool_on_test_server", // 待测服务器上的工具名称 arguments: { input_param: "value" } // 工具参数 (JSON 对象) }) -
获取日志 (mcp_test_get_logs):
mcp__mcp-test__mcp_test_get_logs({ server_name: "my-server-to-test", // 已部署的待测服务器名称 lines: 50 // 日志行数 (可选,默认 100) }) -
列出服务器 (mcp_test_list_servers):
mcp__mcp-test__mcp_test_list_servers({}) -
运行测试 (mcp_test_run_tests):
mcp__mcp-test__mcp_test_run_tests({ server_name: "my-server-to-test" // 已部署的待测服务器名称 }) -
停止服务器 (mcp_test_stop_server):
mcp__mcp-test__mcp_test_stop_server({ server_name: "my-server-to-test" // 已部署的待测服务器名称 })
-
-
-
使用 CLI 界面 (可选):
- 你也可以通过命令行界面直接与 MCP Test Client 交互,进行服务器部署、测试等操作。
- 运行命令 'npm run test' 或 'node dist/test-runner.js' 启动 CLI 界面,按照菜单提示操作。
通过以上步骤,你可以使用 'mcp-client-server' 作为 MCP 服务器,方便地测试和验证你的 MCP 服务器实现。
信息
分类
开发者工具