Skip to main content
Glama
1shin-7
by 1shin-7

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
frida_ls_devicesA

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

frida_get_deviceA

Get info for a specific device. Uses default device if ID is omitted.

frida_add_remoteB

Connect to a remote Frida server (frida-server over TCP).

frida_remove_remoteB

Disconnect from a remote Frida server.

frida_query_system_parametersB

Returns a dictionary of information about the host system.

Args: device_id: Target device. Uses default if omitted.

frida_enable_spawn_gatingA

Enable spawn gating on the device.

When enabled, newly spawned processes are suspended until explicitly resumed.

Args: device_id: Target device. Uses default if omitted.

frida_disable_spawn_gatingA

Disable spawn gating on the device.

Args: device_id: Target device. Uses default if omitted.

frida_enumerate_pending_spawnB

List pending spawned processes that are waiting to be resumed.

Args: device_id: Target device. Uses default if omitted.

frida_enumerate_pending_childrenA

List pending child processes that are waiting to be resumed.

Args: device_id: Target device. Uses default if omitted.

frida_inject_library_fileA

Inject a native library file (.so/.dylib) into a process.

Args: pid: Target process PID. path: Absolute path to the library on the device. entrypoint: Name of the entry function in the library. data: String argument passed to the entrypoint. device_id: Target device. Uses default if omitted.

frida_inject_library_blobA

Inject a native library from memory (base64-encoded binary) into a process.

Args: pid: Target process PID. blob_base64: Base64-encoded library binary. entrypoint: Name of the entry function in the library. data: String argument passed to the entrypoint. device_id: Target device. Uses default if omitted.

frida_psA

List running processes on a device (frida-ps equivalent).

Returns PID and name for each process.

Args: device_id: Target device. Uses default if omitted. scope: Enumeration scope — "minimal", "metadata", or "full". When "full", includes parameters (path, user, ppid, started). pids: Optional list of PIDs to filter by.

frida_spawnA

Spawn a new process and optionally attach to it.

Args: program: Path or bundle identifier to spawn. device_id: Target device. Uses default if omitted. auto_resume: Whether to resume the process after attaching. argv: Command-line arguments for the spawned process. env: Environment variables as key-value pairs. cwd: Working directory for the spawned process. stdio: Standard I/O mode — "inherit", "pipe", or "redirect".

Note: If spawn times out on Android, call frida_fix_usap to disable the USAP pool and detect root-hiding modules that may interfere with Frida's spawn interception.

frida_attachA

Attach to a running process by PID or name.

Args: pid: Process PID (int). name: Process name (str). identifier: Application bundle identifier (str). frontmost: Attach to the frontmost application. device_id: Target device. Uses default if omitted. realm: Session realm — "native" or "emulated".

frida_detachC

Detach from a process session.

frida_killC

Kill a process by PID.

frida_resumeC

Resume a suspended process.

frida_list_sessionsA

List all active session PIDs.

frida_ls_appsA

List installed applications on a device (frida-ls equivalent).

Returns identifier, name, and PID (if running).

Args: device_id: Target device. Uses default if omitted. scope: Enumeration scope — "minimal", "metadata", or "full". When "full", includes parameters (version, build, etc.). identifiers: Optional list of bundle identifiers to filter by.

frida_ls_apps_runningA

List only currently running applications.

Args: device_id: Target device. Uses default if omitted. scope: Enumeration scope — "minimal", "metadata", or "full". identifiers: Optional list of bundle identifiers to filter by.

frida_get_frontmost_applicationA

Get details about the frontmost application.

Args: device_id: Target device. Uses default if omitted. scope: Enumeration scope — "minimal", "metadata", or "full".

frida_injectA

Inject a JavaScript snippet into a process.

The process must already have an active session (use frida_attach first).

IMPORTANT: The default runtime is QJS (QuickJS), which is lightweight but does NOT include the Java/ObjC bridges. If your script uses Java.perform(), Java.use(), ObjC.classes, or any Java/Objective-C APIs, you MUST set runtime="v8". Always use runtime="v8" for Android Java hooking.

Args: pid: Target process PID. source: JavaScript source code to inject. runtime: Script runtime — "qjs" (default, no Java/ObjC bridge) or "v8" (full runtime with Java/ObjC bridge support).

Returns: script_id for subsequent RPC calls or unloading.

frida_rpc_callA

Call an RPC export on an injected script.

The script must expose methods via rpc.exports.

Args: script_id: ID returned by frida_inject. method: Export method name (snake_case in Python, camelCase in JS). args: Positional arguments to pass.

frida_unload_scriptB

Unload a previously injected script.

frida_get_messagesA

Retrieve and drain pending messages from an injected script.

Messages are produced by send() calls in the injected JS.

frida_list_scriptsA

List all active script IDs.

frida_enumerate_modulesA

Enumerate loaded modules in a process.

Injects a helper script to call Process.enumerateModules(). Requires an active session for the given PID.

Args: pid: Target process PID (must have active session). name_filter: Optional substring filter on module name (case-insensitive). Use this to avoid returning hundreds of modules at once.

frida_enumerate_exportsB

Enumerate exports of a specific module.

Args: pid: Target process PID (must have active session). module_name: Name of the module to inspect.

frida_list_exportsB

List RPC exports available on an injected script.

Args: script_id: ID returned by frida_inject.

frida_post_messageA

Post a message to an injected script.

Args: script_id: ID returned by frida_inject. message: JSON-serializable message to send. data: Optional base64-encoded binary data.

frida_enable_child_gatingA

Enable child gating on a session.

When enabled, child processes created by the target are suspended until explicitly resumed.

Args: pid: Target process PID (must have active session).

frida_disable_child_gatingA

Disable child gating on a session.

Args: pid: Target process PID (must have active session).

frida_compile_scriptA

Compile a script to bytecode without loading it.

Args: pid: Target process PID (must have active session). source: JavaScript source code to compile. runtime: Script runtime — "qjs" (default, no Java/ObjC) or "v8" (full runtime with Java/ObjC bridge).

Returns: Base64-encoded bytecode.

frida_snapshot_scriptA

Create a snapshot of a script for fast future loading.

Args: pid: Target process PID (must have active session). embed_script: JavaScript source to embed in the snapshot. warmup_script: Optional script to run during snapshot creation. runtime: Script runtime — "qjs" (default, no Java/ObjC) or "v8" (full runtime with Java/ObjC bridge).

Returns: Base64-encoded snapshot data.

frida_eternalize_scriptA

Eternalize a script so it persists after detaching from the session.

Args: script_id: ID returned by frida_inject.

frida_memory_readA

Read bytes from process memory.

Args: pid: Target process PID (must have active session). address: Hex address string (e.g. "0x7fff12340000"). size: Number of bytes to read.

frida_memory_writeA

Write bytes to process memory.

Args: pid: Target process PID (must have active session). address: Hex address string (e.g. "0x7fff12340000"). hex_data: Hex-encoded bytes to write (e.g. "deadbeef").

frida_memory_scanA

Scan process memory for a byte pattern.

Args: pid: Target process PID (must have active session). address: Start address (hex string). size: Number of bytes to scan. pattern: Frida-style pattern (e.g. "48 8b ?? 00").

frida_memory_protectC

Change memory protection flags.

Prompts

Interactive templates invoked by user choice

NameDescription
frida_hook_functionTemplate for hooking a native function with Interceptor.
frida_trace_callsTemplate for tracing function calls with Stalker.
frida_hook_javaTemplate for hooking Java methods on Android.
frida_hook_objcTemplate for hooking Objective-C methods on iOS.
frida_android_usb_setupWorkflow: set up frida-server on an Android device connected via USB.
frida_enumerate_and_dumpWorkflow: enumerate modules then dump exports.

Resources

Contextual data attached and managed by the client

NameDescription
devices_resourceLive list of all connected Frida devices.
sessions_resourceCurrent active sessions and scripts.

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/1shin-7/ya-frida-mcp'

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