桑普利mcp
允许AI助手进行分析的MCP服务器 样品 CPU配置文件。注册一次,然后让克劳德按路径分析任何配置文件——找到热点,探索呼叫树,并解释什么是慢的。
它做什么
$ samply record --save-only --unstable-presymbolicate -o profile.json.gz -- ./my-program
$ claude mcp add samply /path/to/samply-mcp mcp然后在Claude Code中,只需问:
“/tmp/profile.json.gz中的顶级CPU热点是什么?” “显示主线程的调用树” “什么叫 vec::sort 最多?"每个工具都接受 path 参数,因此一个服务器安装适用于任何配置文件。
可用的MCP工具
| 工具 | 说明 |
|---|---|
profile_info | 配置文件元数据:持续时间、样本计数、线程计数、采样间隔 |
profile_threads | 列出所有具有名称、样本计数和时间范围的线程 |
profile_top_functions | 按自身时间或总时间排列的前N个函数 |
profile_call_tree | 具有时间百分比的分层呼叫树 |
profile_function_detail | 特定功能的调用者、被调用者和源位置 |
profile_markers | 时间线标记和事件 |
profile_flamegraph | 用于生成火焰图的折叠堆栈格式(Brendan Gregg) |
所有工具都需要 path 指向配置文件的参数 .json 或 .json.gz 文件。配置文件在首次使用时加载并缓存在内存中。
录制个人资料
安装 样品:
cargo install samply录制您的节目。这 --unstable-presymbolicate 旗帜写着 .syms.json samply mcp用来自动解析函数名的sidecar:
samply record --save-only --unstable-presymbolicate -o profile.json.gz -- ./target/profiling/my-program
这产生 profile.json.gz (以及 profile.json.syms.json 旁边)。samply mcp自动拿起侧车,不需要手动符号。
安装
需要Rust 1.85+。
git clone https://github.com/protortyp/samply-mcp
cd samply-mcp
cargo build --release
# Binary is at target/release/samply-mcpMCP服务器设置
克劳德代码(CLI)
claude mcp add samply /path/to/samply-mcp mcp不需要配置文件路径——当调用工具时,配置文件会按需加载。
克劳德桌面版
增添 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"samply": {
"command": "/path/to/samply-mcp",
"args": ["mcp"]
}
}
}工作流示例
# 1. Build your program (with debug info for best results)
cargo build
# 2. Record a profile
samply record --save-only --unstable-presymbolicate \
-o /tmp/profile.json.gz -- ./target/debug/my-program
# 3. Register the MCP server (once, globally or per-project)
claude mcp add samply ~/path/to/samply-mcp mcp
# 4. Open Claude Code and ask it to analyze by path