ClaudeCodeMod

All shelves / MCP servers

Uniprof

indragiek/uniprof · 404 stars · TypeScript · MIT

MCP server Universal CPU profiler designed for humans and AI agents

Install

In your shell
npm install -g uniprof

These repos do not share one command. When an entry shows a command, it was copied as published. Check the repo's README before you run it.

Open the repo

Files

README.md

uniprof

uniprof simplifies CPU profiling for humans and AI agents. Profile any application without code changes or added dependencies.

# Profile and analyze any app in one step
npx uniprof python script.py

Table of Contents

  • Supported Platforms
  • System Requirements
  • Installation
  • MCP Server
  • Quick Start
  • Host vs. Container Modes
  • Compiling with Debug Information
  • Documentation
  • Credits
  • License

Supported Platforms

uniprof implements a common interface over multiple profilers that specialize in different platforms and runtimes. It automatically detects which profiler to use based on the command being executed, runs the profiler, transforms the varying output formats into a single format, and runs statistical analysis on the data to identify hotspots.

\* Linux only for host mode

System Requirements

tl;dr: macOS or Linux with Docker installed

uniprof is designed to run on macOS and Linux but has primarily been developed & tested on macOS. If you find any bugs when running on Linux, please report them. Running on a Windows host is currenly not supported, but you can run on Linux installed on Windows via WSL2. Note that when using uniprof via WSL2, profiling native Windows executables is not supported, but you can still use the profilers for the higher level language runtimes like Python and Node.js.

Profiling tools are often non-trivial to set up correctly and can require elevated privileges. To simplify set up and provide better isolation for the profiled code, uniprof defaults to using Docker containers for each runtime that are pre-configured to run specific profiling tools. uniprof mounts your workspace in the container and executes the program with the profiler attached. uniprof also supports profiling outside the container if the host system has the profiling tools installed by running with the --mode host flag. The only case where containerized execution is not supported is when profiling a native Mach-O binary on macOS, since Apple Instruments cannot run inside a container.

Installation

npm install -g uniprof

MCP Server

# Install uniprof MCP server automatically
uniprof mcp install claudecode
uniprof mcp install cursor
uniprof mcp install vscode

Supported clients for auto-installation: amp, claudecode, codex, cursor, gemini, vscode, zed

If auto-installation is not supported for your client, add an MCP server using the stdio transport with the command npx -y uniprof mcp run.

For detailed MCP documentation see docs/mcp.md.

Quick Start

Profile and analyze in one step:

# Profile most languages and get immediate analysis
uniprof python app.py
uniprof node server.js
uniprof ruby script.rb
uniprof java -jar myapp.jar
uniprof dotnet MyApp.dll
uniprof ./my-native-app

# Profile and visualize flamegraph in browser
uniprof --visualize python app.py

Save profiles to analyze and visualize later:

# 1. Check environment (optional)
uniprof bootstrap

# 2. Record a profile
uniprof record -o profile.json -- python app.py
uniprof record -o profile.json -- node server.js
uniprof record -o profile.json -- ruby script.rb
uniprof record -o profile.json -- php script.php
uniprof record -o profile.json -- java -jar myapp.jar
uniprof record -o profile.json -- ./gradlew run
uniprof record -o profile.json -- ./mvnw spring-boot:run
uniprof record -o profile.json -- dotnet MyApp.dll
uniprof record -o profile.json -- elixir script.exs
uniprof record -o profile.json -- mix run
uniprof record -o profile.json -- ./my-native-app
uniprof record -o profile.json -- /Applications/MyApp.app

# 3. Analyze profile data to find hotspots
uniprof analyze profile.json

# 4. Visualize flamegraph in the browser
uniprof visualize profile.json

For detailed command line options documentation see docs/cli.md.

Host vs. Container Modes

Use the --mode option to control how profiling runs:

  • auto (default): Prefer container mode when Docker is available; otherwise use host.
  • Language runtimes (Python/Node.js/Ruby/PHP/BEAM/JVM/.NET) default to container for zero-setup.
  • Native on macOS with Mach-O binaries uses host (Instruments). ELF binaries on macOS are supported in container mode.
  • Native on Linux defaults to container; host can be used if you prefer your local perf setup.
  • host: Force host-installed profilers.
  • container: Force Docker containers (not supported for macOS Instruments/Mach-O binaries).
# Auto mode (default)
uniprof record -o profile.json -- python script.py

# Force host profilers
uniprof record --mode host -o profile.json -- python script.py

# Force container mode
uniprof record --mode container -o profile.json -- ./my-linux-app

Compiling with Debug Information

Native profiling requires debug information for meaningful results. Debug symbols enable the profiler to map memory addresses to function names, providing readable output instead of just hexadecimal addresses. Additionally, frame pointers improve call stack accuracy, especially for optimized code.

Documentation

Credits

Facts

Kind
MCP server
Repo
indragiek/uniprof
Group
Uncategorized
Stars
404
License
MIT
Language
TypeScript
Last push
2026-02-23
Forks
11
Homepage
uniprof.sh
Topics
performance, performance-optimization, profiler, profiling

More on this shelf

  1. 1Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
  2. 2Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k
  3. 3Gitmodelcontextprotocol/serversA Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.85.8k
  4. 4Memorymodelcontextprotocol/serversA basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.85.8k
  5. 5Sequential Thinkingmodelcontextprotocol/serversAn MCP server implementation that provides a tool for dynamic and reflective problem-solving through a structured thinking process.85.8k
  6. 6Timemodelcontextprotocol/serversA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.85.8k