
Frida Mcp Workflow
- 61 installs
- 2 repo stars
- Updated February 12, 2026
- yfe404/frida-mcp-skills
Helps with automation & workflows tasks during AI-assisted development.
About
frida-mcp-workflow is a Claude Code skill for automation & workflows. It helps solo builders move faster with AI-assisted coding.
- frida-mcp-workflow
- Automation & Workflows
- AI-coding skill
Frida Mcp Workflow by the numbers
- 61 all-time installs (skills.sh)
- +3 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Ranked #991 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
- Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/yfe404/frida-mcp-skills --skill frida-mcp-workflowAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 61 |
|---|---|
| repo stars | ★ 2 |
| Last updated | February 12, 2026 |
| Repository | yfe404/frida-mcp-skills ↗ |
What it does
Helps with automation & workflows tasks during AI-assisted development.
Files
Frida MCP Workflow
Run these phases in order. Do not skip phases.
Phase 1: Idea
- Define target: process/app identifier, platform, and session type.
- Define objective: what signal/result must be observed.
- Query docs before function use: call
search_frida_docsfor each non-trivial API/runtime assumption. - Record 2-5
Doc facts usedbullets before scripting. - Assume Frida 17 semantics only. Do not use Frida 16 assumptions.
Hard stop:
- If docs are missing or ambiguous, narrow the query and retry before scripting.
Phase 2: Scripting
- Prefer saved files over inline scripts.
- Allow inline only for short, read-only probes.
- For hook scripts, require file-based scripts and
load_script. - Declare
script_id, purpose, and explicit target list (module/symbol or class/method). - Add idempotence guard to prevent duplicate install.
- Define teardown path (
uninstallRPC export or equivalent).
Script policy:
- If script is more than 25 lines or writes hooks, save it to a file.
- If modifying existing behavior, include rollback logic in the script.
Phase 3: Execution
- Preflight checks before load/execute:
- session exists and is alive
- loaded scripts are listed
- target overlap is checked
- If overlap exists, unload/replace old script before loading new one.
- Do not attach multiple scripts to the same target unless explicitly intentional.
- Prefer one script per purpose (probe, hook, tracer).
Failure handling:
- On
Java is not defined, stop retries and re-check docs/runtime assumptions. - On attach/spawn failures, run diagnostics before retrying instrumentation.
- On oversized docs output, reduce query scope or paginate; do not guess.
Phase 4: Notes
- Persist notes to file after each execution cycle.
- Record:
- doc facts used
- script ledger (loaded/unloaded/current active)
- observed output and verification status
- errors and root cause
- cleanup status and next action
- Confirm teardown is complete when ending work.
Required Response Shape
For each task, output four sections in this order:
1. Idea 2. Scripting 3. Execution 4. Notes
Do not run tool calls in Execution before Idea and Scripting are present.
interface:
display_name: "Frida MCP Workflow"
short_description: "Run Frida MCP with docs-first, file-based scripts, and strict hook lifecycle discipline"
Frida MCP Workflow Checklist
Use this checklist every run.
Idea
- [ ] Target process/app is identified.
- [ ] Objective and success signal are explicit.
- [ ]
search_frida_docswas used for all non-trivial assumptions. - [ ] Doc facts are summarized.
- [ ] Frida 17-only assumptions confirmed.
Scripting
- [ ] Script will be saved to file (or inline is justified as tiny probe).
- [ ]
script_id, purpose, and targets are declared. - [ ] Idempotence guard exists.
- [ ] Teardown/uninstall path exists.
Execution
- [ ] Session liveness was verified.
- [ ] Existing scripts were listed.
- [ ] Overlapping targets were checked.
- [ ] Replaced scripts were unloaded before reload.
- [ ] Only intended hooks are active.
Notes
- [ ] Notes were persisted to file.
- [ ] Script ledger updated (loaded/unloaded/active).
- [ ] Results and validation recorded.
- [ ] Errors and root cause recorded.
- [ ] Cleanup confirmed.
Frida MCP Run Notes
Idea
- Target:
- Objective:
- Success signal:
Doc Facts Used
- -
Scripting
- Script path:
- Script ID:
- Purpose:
- Targets:
- Idempotence guard present: yes/no
- Uninstall path present: yes/no
Execution
- Session ID:
- Preflight checks:
- Actions run:
- Observed output:
- Verification status: pass/fail
Script Ledger
- Loaded:
- Unloaded:
- Active at end:
Errors and Root Cause
- Error:
- Root cause:
- Fix applied:
Cleanup and Next Action
- Cleanup done: yes/no
- Next action:
'use strict';
var SCRIPT_ID = 'replace-script-id';
var PURPOSE = 'replace-purpose';
var TARGETS = [
'replace-module-or-class.target'
];
var STATE_KEY = '__frida_mcp_script_registry__';
if (!globalThis[STATE_KEY]) {
globalThis[STATE_KEY] = {};
}
var registry = globalThis[STATE_KEY];
var installed = false;
function install() {
if (registry[SCRIPT_ID]) {
send({
type: 'warn',
script_id: SCRIPT_ID,
message: 'Script already installed; skipping duplicate install'
});
return false;
}
registry[SCRIPT_ID] = {
purpose: PURPOSE,
targets: TARGETS,
installed_at: Date.now()
};
installed = true;
// Install hooks here.
send({
type: 'info',
script_id: SCRIPT_ID,
message: 'Installed',
targets: TARGETS
});
return true;
}
function uninstall() {
if (!installed) {
return false;
}
// Detach hooks here.
installed = false;
delete registry[SCRIPT_ID];
send({
type: 'info',
script_id: SCRIPT_ID,
message: 'Uninstalled'
});
return true;
}
rpc.exports = {
health: function () {
return {
script_id: SCRIPT_ID,
purpose: PURPOSE,
targets: TARGETS,
installed: installed
};
},
uninstall: function () {
return uninstall();
}
};
install();
Related skills
Automation & Workflowsworkflow