io.github.rog0x/perf
Benchmark, memory, Big O analysis for AI agents
Open source Open in the app JSON README (API)
About
Benchmark, memory, Big O analysis for AI agents
Details
- Kind
- MCP servers
- Topic
- AI, RAG & memory
- Publisher
- rog0x
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 1.0.2
- Last push
- 2026-03-21T20:21:38Z
- Repository state
- ativo
- Language
- TypeScript
- License
- NOASSERTION
- Added
- 2026-08-29 04:01:19
- Updated
- 2026-08-29 04:01:19
- Origin id
io.github.rog0x/perf
README
# mcp-perf-tools
Performance analysis tools for AI agents, exposed via the [Model Context Protocol (MCP)](https://modelcontextprotocol.io/).
## Tools
### benchmark
Benchmark JavaScript code execution. Run a snippet N times and measure min/max/avg/median/p95/p99 latency and operations per second. Optionally compare two implementations side by side.
**Parameters:**
- `code` (string) — JavaScript code to benchmark
- `iterations` (number, default 1000) — Number of iterations
- `compareCode` (string, optional) — Second implementation to compare
- `labelA` / `labelB` (string) — Labels for comparison output
### memory_analyze
Analyze Node.js memory usage: heap used/total, RSS, external memory, and array buffers. Takes snapshots over time and uses linear regression to detect trends and potential memory leaks.
**Parameters:**
- `action` — `"snapshot"` | `"analyze"` | `"clear"`
### big_o_estimate
Estimate Big O complexity from empirical timing data. Fits measurements against O(1), O(log n), O(n), O(n log n), O(n^2), O(n^3), and O(2^n) using R-squared scoring. Includes an ASCII growth curve visualization.
**Parameters:**
- `inputSizes` (number[]) — Array of input sizes
- `executionTimesMs` (number[]) — Corresponding execution times in ms
### bundle_analyze
Analyze a JavaScript bundle file: raw size, gzip compressed estimate, detected module count, largest modules, and tree-shaking opportunities (side effects, duplicates).
**Parameters:**
- `filePath` (string) — Absolute path to the bundle file
### load_test
Simple HTTP load tester. Sends N requests at a given concurrency level and reports response time percentiles, error rate, throughput (req/sec), and status code distribution.
**Parameters:**
- `url` (string) — Target URL
- `totalRequests` (number, default 100) — Total requests to send
- `concurrency` (number, default 10) — Concurrent request count
- `method` (string, default "GET") — HTTP method
- `headers` (object, optional) — HTTP headers
- `body` (string, optional) — Request body
- `timeoutMs` (number, default 30000) — Request timeout
## Setup
```bash
npm install
npm run build
```
## Usage with Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"perf-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-perf-tools/dist/index.js"]
}
}
}
```
## License
MIT