skilled-feishu-mcp
v1.1.0
Published
A Model Context Protocol (MCP) server that integrates with Feishu's Open Platform APIs
Maintainers
Readme
MCP 服务器性能测试框架
本文档介绍了用于测试 Skilled Feishu MCP 服务器性能的测试框架。这些测试主要关注开发模式下的性能表现。
测试脚本概述
1. Feishu 令牌测试 (test_token_dev.js)
测试 Feishu 客户端初始化和获取令牌的性能。
- 设置开发环境和测试凭据
- 测量客户端初始化时间
- 测量获取令牌时间
使用方法:
NODE_ENV=development node --experimental-specifier-resolution=node test_token_dev.js2. MCP 服务器启动测试 (test_mcp_dev.js)
测试 MCP 服务器基本启动流程的性能。
- 设置开发环境和测试凭据
- 测量 Feishu 客户端初始化时间
- 显示可用工具列表
- 测量服务器启动时间
使用方法:
NODE_ENV=development node --experimental-specifier-resolution=node test_mcp_dev.js3. MCP 服务器组件性能测试 (test_mcp_performance_dev.js)
详细测量 MCP 服务器各个组件的性能。
- 设置开发环境和测试凭据
- 测量 Feishu 客户端初始化时间
- 测量工具加载时间
- 测量 SDK 导入时间
- 测量服务器创建时间
- 测量工具注册时间
- 测量传输层创建时间
- 计算总体启动时间
使用方法:
NODE_ENV=development node --experimental-specifier-resolution=node test_mcp_performance_dev.js4. MCP 服务器全面性能测试 (test_mcp_comprehensive_dev.js)
提供完整的性能报告,包括基准对比和性能建议。
- 设置开发环境和测试凭据
- 测量所有组件性能
- 与基准值对比
- 计算性能评级
- 确定性能瓶颈
- 提供优化建议
使用方法:
NODE_ENV=development node --experimental-specifier-resolution=node test_mcp_comprehensive_dev.js5. 请求-响应循环测试 (test_mcp_roundtrip_dev.js)
测试完整的请求-响应循环时间(注意:此测试存在一些限制,可能不会成功完成)。
- 设置开发环境和测试凭据
- 模拟
list_tools请求 - 测量响应时间
使用方法:
NODE_ENV=development node --experimental-specifier-resolution=node test_mcp_roundtrip_dev.js性能测试指标
以下是我们测量的主要性能指标:
- Feishu 客户端初始化时间:初始化 Feishu API 客户端所需的时间
- 工具加载时间:加载所有工具定义的时间
- SDK 导入时间:导入 MCP SDK 所需的时间
- 服务器创建时间:实例化 MCP 服务器的时间
- 工具注册时间:在服务器上注册所有工具的时间
- 传输层创建时间:创建 stdio 传输层的时间
- 总启动时间:从开始到服务器完全准备好的总时间
基准值
以下是开发模式下的性能基准值:
| 指标 | 基准值 (ms) | |------|------------| | Feishu 客户端初始化 | 10 | | 工具加载 | 1 | | SDK 导入 | 25 | | 服务器创建 | 1 | | 工具注册 | 1 | | 传输层创建 | 1 | | 总启动时间 | 40 |
这些基准值是基于多次测试的平均结果,可作为性能评估的参考点。
性能优化建议
基于测试结果,以下是一些可能的优化方向:
- SDK 导入优化:如果 SDK 导入时间过长,考虑使用预加载策略或优化导入路径
- Feishu 客户端优化:如果客户端初始化时间较长,考虑延迟初始化或优化客户端代码
- 工具注册优化:如果工具数量较多导致注册时间长,考虑按需注册或优化注册流程
自定义测试
您可以根据需要修改测试脚本:
- 调整基准值以适应您的环境
- 添加更多的性能指标
- 修改测试逻辑以测试特定场景
注意事项
- 这些测试专为开发模式设计,使用测试凭据
- 性能结果可能因系统环境而异
- 生产环境测试需要单独配置真实的 Feishu 凭据
