Skip to main content
Glama
fuzzmind

fuzzmind-frida-mcp

by fuzzmind

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
frida_checkA

Verify frida + frida-tools install state and version.

frida_list_processesA

Enumerate running processes via Frida's local device.

Equivalent to frida-ps, with an optional case-insensitive name substring filter.

frida_script_run_fileC

Run a Frida JS script against a process.

mode: 'attach' (default — process already running) or 'spawn' (start a new process; pass full command in target). Collects send(...) messages from the script and returns them.

frida_evalC

Evaluate inline JavaScript against a target, equivalent to CLI -e.

frida_enumerate_modulesC

List all loaded modules in a target process.

Returns name, base address, size, and file path for each module. target: process name or pid (string).

frida_enumerate_exportsC

List exported symbols from a specific module in a target process.

module_name: e.g. 'libsystem_kernel.dylib'. Returns name, type ('function' or 'variable'), and address.

frida_list_devicesA

List all available Frida devices (USB, remote, local).

Useful for discovering connected devices before specifying a device_id in other tools. Returns id, name, and type for each.

frida_get_device_infoB

Get info about a specific Frida device or the default local device.

device_id: optional device id from frida_list_devices. Defaults to the local macOS device. Returns device metadata and running process count.

frida_connectC

Connect/attach to a process and create a persistent Frida session.

target: process name or pid (string). Full binary path when spawn=True. device_id: optional device id; defaults to local device. spawn: if True, spawn the process under Frida instead of attaching to an existing one.

Returns a session_id for use with session-based tools (hooks, hook messages, etc.). The session stays alive until explicitly disconnected.

frida_await_spawnC

Wait for a spawn matching pattern, optionally attach and resume.

frida_disconnectA

Disconnect from the current or a specified Frida session.

session_id: optional; defaults to the active session. Detaches from the process and unloads all persistent hooks.

frida_list_sessionsA

List all active Frida sessions.

Shows session id, target, pid, device, whether each is the active session, and whether the underlying Frida connection is still alive.

frida_switch_sessionA

Switch the active Frida session.

session_id: id of the session to activate (from frida_list_sessions). Subsequent session-based tool calls (hooks, messages) will operate on this session.

frida_is_connectedA

Check if the current Frida session is alive.

Returns connection status, session id, target, pid, and device name. Useful as a health-check before running session-based tools.

frida_session_get_eventsC

Read lifecycle events for a persistent Frida session.

frida_session_clear_eventsC

Clear lifecycle events for a persistent Frida session.

frida_script_loadA

Load a long-running Frida script into a persistent session.

The script remains loaded until explicitly unloaded or the session disconnects. Use send() in JavaScript to emit events, recv() to receive messages, and rpc.exports to expose callable functions.

frida_script_load_fileC

Load a local JavaScript file as a long-running Frida script.

frida_script_listC

List long-running scripts loaded in a persistent session.

frida_script_unloadC

Unload a long-running script by script_id.

frida_script_reloadC

Reload a long-running script, preserving its name and kind.

frida_script_call_rpcC

Call a function exposed through rpc.exports by a loaded script.

frida_script_post_messageC

Post a JSON-serialisable message to a long-running script.

frida_script_get_eventsC

Read queued events emitted by long-running scripts.

frida_script_clear_eventsB

Clear queued events for one script or a whole session.

frida_script_export_eventsC

Export queued script events to JSON or JSONL.

frida_get_module_baseA

Get base address of a module by name (partial match supported).

target: process name or pid (string). module_name: full or partial module name (case-insensitive). Returns the first matching module's name, base address, size, and path.

frida_get_frontmost_appA

Get the frontmost (foreground) application on a device.

device_id: optional Frida device id (from frida_list_devices); defaults to local device. Returns {identifier, name, pid}. Useful on iOS/Android to identify the currently visible app.

frida_launch_appA

Spawn and resume an application by bundle/package identifier.

identifier: app bundle id (iOS/macOS) or package name (Android), e.g. 'com.apple.Safari' or 'com.example.app'. device_id: optional Frida device id; defaults to local device.

Uses Frida's device.spawn() + device.resume() to launch the app fresh. Returns {pid, identifier, status}.

frida_kill_appA

Kill a process by PID or name on a device.

target: integer PID (as string) or process name. If a name is given, the process list is searched (exact match first, then substring). device_id: optional; defaults to local device.

frida_cli_compile_bundleA

Compile a Frida JS script to bytecode for faster injection.

Shells out to frida-compile. Produces an optimised bundle that loads faster than raw JS.

script_path: path to the source .js file. output_path: optional output path (default: <script>.compiled.js).

frida_script_eternalizeA

Inject a script and eternalize it so it survives session detach.

After script.eternalize(), the hooks live on inside the target process even after the Frida session disconnects. Only killing the target process removes the instrumentation.

target: process name or pid (string). js_code: Frida JS code to inject and eternalize.

frida_inject_libraryA

Inject a shared library (.dylib / .so) into a target process.

Uses Frida's inject_library_file() to load the library. The library's entrypoint function (if specified) is called with data as its argument.

target: process name or pid (string). library_path: path to the .dylib or .so to inject. entrypoint: optional symbol to call after load. data: optional string argument for the entrypoint.

frida_enumerate_threadsA

List all threads in a target process with state and registers.

target: process name or pid (string). Returns thread id, state (running/stopped/waiting), and key register values (pc, sp) for each thread.

frida_enumerate_symbolsA

List all symbols (not just exports) from a module.

Unlike frida_enumerate_exports, this includes local and debug symbols when available.

target: process name or pid (string). module_name: module to query (default: main executable). filter: optional case-insensitive name substring filter. limit: max symbols to return (default 1000).

frida_session_recoverA

Recover a broken/crashed Frida session by re-attaching.

Looks up the original target PID/name from the session registry and attempts to create a new Frida session to the same process.

session_id: optional; defaults to the current active session.

frida_list_appsA

List all installed applications on a device (not just running).

Unlike frida_list_processes which only returns running processes, this enumerates all installed apps. Returns identifier, name, and pid (0 if not running) for each.

device_id: optional Frida device id; defaults to local device.

frida_process_infoB

Get detailed Process metadata: pid, arch, platform, page/pointer sizes, code signing policy, mainModule, dirs, debugger state, current thread id.

target: process name or pid (string).

frida_target_snapshotA

Collect an agent-friendly target snapshot before deeper analysis.

Returns process metadata, runtime/bridge availability, main module, module/thread samples, memory-range counts, and recommended next tools.

target: process name or pid (attach), or command line when spawn=True. device_id: optional Frida device id for USB/remote targets. spawn: start the target suspended, attach, collect the snapshot, then resume.

frida_enumerate_importsA

Enumerate imports of a module in a target process.

target: process name or pid (string). module_name: module to query (e.g. 'Safari', 'libsystem_kernel.dylib'). filter: optional case-insensitive name substring filter. limit: max imports to return (default 1000).

frida_enumerate_sectionsA

Enumerate sections (name, base, size, protection) of a module.

target: process name or pid (string). module_name: module to query (e.g. 'CoreAudio', 'libsystem_c.dylib').

frida_enumerate_dependenciesB

Enumerate dependencies of a module in a target process.

target: process name or pid (string). module_name: module to query.

frida_enumerate_malloc_rangesA

Enumerate malloc heap ranges filtered by memory protection.

target: process name or pid (string). filter: protection string filter (default 'rw-'). Frida returns ranges whose protection is a superset of the specified value.

frida_find_export_by_nameA

Find a single export by name, optionally scoped to a module.

target: process name or pid (string). module_name: module to search in, or None for all modules. export_name: export name to find. Returns the address of the export.

frida_find_symbol_by_nameA

Find a symbol by name within a module (including non-exported symbols).

target: process name or pid (string). module_name: module to search. symbol_name: symbol name to find. Returns address and type.

frida_resolve_debug_symbolB

Resolve a debug symbol from an address via DebugSymbol.fromAddress.

target: process name or pid (string). address: hex address (e.g. '0x100004000'). Returns name, moduleName, fileName, lineNumber.

frida_find_functions_namedA

Find all functions with an exact name via DebugSymbol.findFunctionsNamed.

target: process name or pid (string). name: exact function name to search for. Returns list of matching addresses.

frida_find_functions_matchingA

Find functions matching a glob pattern via DebugSymbol.findFunctionsMatching.

target: process name or pid (string). glob: glob pattern (e.g. 'xpcsend*', 'objc_msg*'). Returns matching addresses with symbolicated names.

frida_load_debug_symbolsB

Load debug symbols from a file (e.g. dSYM) into the target.

target: process name or pid (string). path: path to the debug symbol file to load.

frida_resume_processB

Resume a suspended process by PID.

Standalone resume for processes spawned but not yet resumed.

target_pid: integer process ID. device_id: optional Frida device id; defaults to local device.

frida_interactive_evalA

Execute arbitrary JS in an existing persistent Frida session (REPL).

Reuses a persistent session so hooks and state remain. Unlike inject_script, this creates a one-shot script, collects messages, and unloads without disturbing the session.

session_id: session id from frida_connect / frida_list_sessions. js_code: JavaScript to evaluate. Use send() to return data.

frida_cli_options_file_parseA

Parse a Frida CLI --options-file into shell-style tokens.

This is a planning/inspection helper for agents. It does not execute the options file.

frida_codeshare_runC

Run an official frida-tools CodeShare script via frida -c.

frida_device_get_usbC

Get the first USB Frida device via frida.get_usb_device().

frida_device_get_remoteB

Get Frida's default remote device via frida.get_remote_device().

frida_device_get_matchingC

Find a device with DeviceManager.get_device_matching().

frida_remote_device_addC

Add a remote device with official auth/keepalive options.

frida_remote_device_removeC

Remove a remote device from Frida's DeviceManager.

frida_device_query_system_parametersD

Call Device.query_system_parameters().

frida_device_override_optionD

Call Device.override_option(name, value).

frida_device_unpairD

Call Device.unpair().

frida_device_inputC

Send raw base64-decoded input bytes to a spawned target.

frida_device_get_processD

Call Device.get_process().

frida_device_is_lostD

Call Device.is_lost().

frida_inject_library_blobC

Inject a library from base64 bytes with Device.inject_library_blob().

frida_spawn_with_optionsC

Spawn without attaching, exposing Device.spawn() options.

frida_pending_spawn_listD

List Device.enumerate_pending_spawn().

frida_pending_children_listD

List Device.enumerate_pending_children().

frida_event_subscribeC

Subscribe to official DeviceManager/Device/Session events.

frida_event_get_eventsC

Read queued official event subscription events.

frida_event_unsubscribeC

Unsubscribe from an official event subscription.

frida_bus_attachC

Attach to a device bus and start queueing bus messages.

frida_bus_postC

Post a message on an attached Frida bus.

frida_bus_get_eventsC

Read queued bus events.

frida_bus_detachC

Forget a bus event queue.

frida_session_enable_child_gatingC

Call Session.enable_child_gating().

frida_session_disable_child_gatingC

Call Session.disable_child_gating().

frida_session_resumeC

Call Session.resume().

frida_session_is_detachedD

Call Session.is_detached().

frida_session_setup_peer_connectionD

Call Session.setup_peer_connection().

frida_session_join_portalD

Call Session.join_portal().

frida_session_leave_portalB

Terminate a portal membership created by frida_session_join_portal.

frida_script_load_bytesC

Load compiled script bytes with Session.create_script_from_bytes().

frida_session_compile_scriptC

Compile script source with Session.compile_script().

frida_session_snapshot_scriptD

Create a script snapshot with Session.snapshot_script().

frida_script_list_exportsC

List rpc.exports exposed by a loaded script.

frida_script_enable_debuggerC

Enable the Frida script debugger for a loaded script.

frida_script_disable_debuggerC

Disable the Frida script debugger for a loaded script.

frida_script_post_binaryC

Post a message plus binary data to a loaded script.

frida_script_set_log_handlerC

Queue Script log-handler events for a loaded script.

frida_script_get_log_eventsC

Read queued Script log-handler events.

frida_script_get_log_handlerD

Call Script.get_log_handler().

frida_script_reset_log_handlerB

Reset Script log handling to the Frida default.

frida_compiler_buildC

Build a Frida agent bundle with frida.Compiler.build().

frida_compiler_watchC

Start Compiler.watch() and queue compiler events.

frida_compiler_watch_get_eventsC

Read queued Compiler.watch() events.

frida_compiler_watch_stopA

Stop tracking a Compiler.watch() record.

frida_package_searchC

Search Frida packages with PackageManager.search().

frida_package_installC

Install Frida packages with PackageManager.install().

frida_package_registryC

Read PackageManager.registry.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/fuzzmind/frida-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server