Provides tools for mobile security testing on Android devices, including app lifecycle management via ADB, memory manipulation, and Java hooking to monitor method calls and bypass security features like SSL pinning.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@frida-mcpSearch for 'crypto' classes in com.example.app and disable SSL pinning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
frida-mcp
MCP server for Frida-based mobile security testing. Exposes Frida functionality as MCP tools for AI-assisted security research.
Requirements
Python 3.11+
Frida server running on target device
ADB access for Android devices
Rooted device (for most operations)
Install
Build the Frida agent (required):
Add to Claude Code
Tools
Connection & Session Management
Tool | Description |
| List all available Frida devices (USB, remote, local) |
| List running processes on a device |
| List installed applications on a device |
| Attach to app by bundle ID, name, or PID. Supports |
| Disconnect from the current session |
| Check if Frida session is still alive and healthy |
| List all active Frida sessions (multi-device support) |
| Switch to a different active session by ID |
App Lifecycle (ADB-based)
Tool | Description |
| Get PID of a running app by package name |
| Launch app via ADB and return its PID |
| Force stop an app by package name |
| Force stop, launch fresh, and attach Frida in one step |
Memory Operations
Tool | Description |
| List all loaded modules (libraries) in the process |
| List exports (functions) from a specific module |
| Search process memory for hex pattern or string |
| Read memory at a specific address |
| Write bytes to memory address (for patching) |
| Get base address of a module by name (partial match) |
Android Java Hooking
Tool | Description |
| List loaded Java classes, optionally filtered |
| List methods of a Java class |
| Hook a Java method to monitor calls |
| Search for classes matching a pattern |
| Disable SSL certificate pinning |
| Get the current foreground activity |
| Dump all methods, fields, and constructors of a class |
| Search Java heap for live instances of a class |
Persistent Hooks
Tool | Description |
| Install a persistent hook script that collects messages |
| Retrieve collected messages from persistent hooks |
| Clear the hook message buffer |
| Unload all persistent hook scripts |
| List all installed persistent hooks |
| Hook a native function by module+offset |
File Operations
Tool | Description |
| List files in a directory on the device |
| Read a text file from the device |
| Download a file from device to local machine |
Custom Scripting
Tool | Description |
| Execute custom Frida JavaScript code |
| Run JavaScript within Java.performNow context |
Usage Example
Notes
SELinux is automatically set to permissive mode when connecting (required for Frida injection on many devices)
The
spawn=trueoption uses ADB-based launch which is more reliable than Frida's native spawnMulti-session support allows attaching to multiple apps/devices simultaneously
This server cannot be installed