README
🚀 Frida MCP 模型上下文协议(MCP)在Frida动态插装工具包中的实现
本项目为Frida动态插装工具包实现了符合MCP标准的服务器,借助Frida的动态插装能力,让AI系统能与移动和桌面应用程序进行交互。同时,通过官方MCP Python SDK,实现了与AI应用程序的无缝集成。
🚀 快速开始
此包为Frida提供了一个符合MCP标准的服务器,使AI系统能够通过Frida的动态插装功能与移动和桌面应用程序交互。它使用官方 MCP Python SDK来实现与AI应用程序的无缝集成。若想查看更多演示信息,请参见链接: [视频或演示链接]。
✨ 主要特性
- 基于官方MCP Python SDK构建。
- 通过MCP全面公开Frida工具:
- 进程管理(列表、附加、启动、恢复、终止)。
- 设备管理(USB、远程设备)。
- 交互式JavaScript控制台,支持实时代码执行。
- 脚本注入及进度跟踪。
- 进程和设备监控。
- 提供Frida数据的资源以供模型使用。
- 引导式Frida分析工作流提示。
- 长期操作的进度跟踪。
- 完全支持所有MCP传输方法。
📦 安装指南
先决条件
- Python 3.8或更高版本。
- pip包管理器。
- Frida 16.0.0或更高版本。
快速安装
pip install frida-mcp
开发安装
# 克隆仓库
git clone https://github.com/yourusername/frida-mcp.git
cd frida-mcp
# 开发模式下安装,带额外工具
pip install -e ".[dev]"
💻 使用示例
安装完成后,您即可直接在Claude Desktop中使用Frida MCP。服务器提供以下功能:
进程管理
- 列出所有正在运行的进程。
- 附加到特定进程。
- 启动新进程。
- 恢复 suspended 进程。
- 终止进程。
设备管理
- 列出所有连接的设备(USB、远程)。
- 获取设备信息。
- 连接到特定设备。
交互式JavaScript控制台
- 创建与进程的交互式会话。
- 实时执行JavaScript代码。
- 监控进程状态和内存。
- 钩住函数并拦截调用。
- 捕获console.log输出。
- 灵活处理错误和异常。
脚本注入
- 注入自定义JavaScript脚本。
- 跟踪注入进度。
- 处理脚本错误和异常。
资源
- 获取Frida版本信息。
- 以人类可读格式访问进程列表。
- 以人类可读格式访问设备列表。
与Claude桌面集成
要在Claude Desktop中使用Frida MCP,请更新您的Claude配置文件:
-
找到您的Claude Desktop配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
在配置文件中添加以下内容:
{
"mcpServers": {
"frida": {
"command": "frida-mcp"
}
}
}
📚 详细文档
开发
# 克隆仓库
git clone https://github.com/yourusername/frida-mcp.git
cd frida-mcp
# 安装开发依赖项
pip install -e ".[dev]"
📄 许可证
本项目采用MIT许可证。
Scan to contact