mcpField
P
perf

perf

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

关于 perf

面向使用 JavaScript、Node.js、代码包和 HTTP 服务的 AI Agent 的性能分析 MCP 服务,提供基准测试、内存趋势分析、经验性 Big O 估算、包检查和负载测试。

主要功能

  1. 01基准测试 JavaScript 执行
  2. 02分析 Node.js 内存趋势
  3. 03根据耗时数据估算 Big O
  4. 04检查 JavaScript 包
  5. 05对 HTTP 端点进行负载测试

适用场景

  1. 01比较两种代码实现
  2. 02调查内存随时间的增长
  3. 03根据测量结果估算算法复杂度
  4. 04查找包中的大型模块
  5. 05测量负载下端点的延迟和吞吐量

MCP 相关

向 MCP 客户端提供基准测试、内存、复杂度、代码包和 HTTP 负载测试工具。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"rog0x-perf": {
"command": "npx",
"args": [
"-y",
"@rog0x/mcp-perf-tools"
]
}
}
}
启动命令npx -y @rog0x/mcp-perf-tools

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

安装包
npm@rog0x/mcp-perf-tools1.0.2

工具

5

收录的工具列表 · 更新于 3 周前

参数类型必填说明
codestring是要进行基准测试的 JavaScript 代码
labelAstring否第一个实现的标签
labelBstring否第二个实现的标签
iterationsinteger否运行次数
compareCodestring否用于比较的可选第二个实现

详细介绍

mcp-perf-tools

通过 Model Context Protocol(MCP) 向 AI Agent 提供的性能分析工具。

工具

benchmark

对 JavaScript 代码执行进行基准测试。运行代码片段 N 次,并测量最小值、最大值、平均值、中位数、p95、p99 延迟和每秒操作数。也可并排比较两种实现。

参数:

  • code(string)——要进行基准测试的 JavaScript 代码
  • iterations(number,默认值 1000)——迭代次数
  • compareCode(string,可选)——用于比较的第二种实现
  • labelA / labelB(string)——比较结果的标签
memory_analyze

分析 Node.js 内存使用情况:已用/总堆内存、RSS、外部内存和数组缓冲区。随时间采集快照,并使用线性回归检测趋势和潜在内存泄漏。

参数:

  • action — "snapshot" | "analyze" | "clear"
big_o_estimate

根据经验计时数据估算 Big O 复杂度。使用 R 平方评分,将测量结果拟合到 O(1)、O(log n)、O(n)、O(n log n)、O(n^2)、O(n^3) 和 O(2^n)。包含 ASCII 增长曲线可视化。

参数:

  • inputSizes(number[])——输入大小数组
  • executionTimesMs(number[])——对应的执行时间,单位为 ms
bundle_analyze

分析 JavaScript bundle 文件:原始大小、gzip 压缩大小估算、检测到的模块数量、最大的模块,以及 tree-shaking 机会(副作用、重复项)。

参数:

  • filePath(string)——bundle 文件的绝对路径
load_test

简单的 HTTP 负载测试工具。以指定的并发级别发送 N 个请求,并报告响应时间百分位数、错误率、吞吐量(req/sec)和状态码分布。

参数:

  • url(string)——目标 URL
  • totalRequests(number,默认值 100)——要发送的请求总数
  • concurrency(number,默认值 10)——并发请求数
  • method(string,默认值 "GET")——HTTP 方法
  • headers(object,可选)——HTTP 请求头
  • body(string,可选)——请求体
  • timeoutMs(number,默认值 30000)——请求超时时间

设置

npm install
npm run build

在 Claude Desktop 中使用

添加到你的 claude_desktop_config.json:

{
  "mcpServers": {
    "perf-tools": {
      "command": "node",
      "args": ["D:/products/mcp-servers/mcp-perf-tools/dist/index.js"]
    }
  }
}

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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