系统跟踪套件
Systracesuite是一个MCP服务器,旨在向LLM和自主代理公开Linux跟踪和调试功能,如eBPF、bpftrace、perf、ftrace和系统调用跟踪。
它提供了一个统一的可观察性接口,使AI系统能够通过安全、结构化的MCP工具检查、分析和调试Linux内核和用户空间行为。
建筑
该项目包含一个使用JSON-RPC通过STDIO进行通信的MCP服务器的简单实现。
文件
mcp_server/main.py:主服务器可执行文件。mcp_server/tools:包含与同步的Bpftrace工具
上游存储库。 https://github.com/bpftrace/bpftrace/tree/master/tools
requirements.txt:包含所需的Python包。setup.sh:设置systracesuite的白名单工具,以便它们可以使用无密码的sudo运行。MCP服务器无法触发Gemini CLI交互式shell来提示用户进行权限升级。
安装
此服务器依赖于 fastmcp 图书馆。使用pip和 requirements.txt 文件:
pip install -r requirements.txt用法
快速启动
- 克隆存储库并更改到项目目录:
git clone git@github.com:r1chard-lyu/systracesuite.git
cd systracesuite- 安装Python依赖项:
pip install --upgrade pip
pip install -r requirements.txt- 允许bpftrace使用无密码sudo,这样服务器就可以在没有交互式提示的情况下运行工具。注意:仅在开发中使用,不要在生产中启用。
sudo ./setup.sh- 使用Gemini CLI将systracesuite注册为MCP服务器。替换 `` 使用您计算机上此存储库的绝对路径:
gemini mcp add systracesuite \
--scope user \
uv run --with fastmcp \
fastmcp run /mcp_server/main.py- 验证MCP注册:
gemini mcp list如果注册成功,您应该看到这样的条目:
Configured MCP servers:
✓ systracesuite: uv run --with fastmcp fastmcp run /mcp_server/main.py (stdio) - Connected贡献
欢迎投稿、专题、问题和讨论。
