frida_android_intercept
Intercept Android app traffic using Frida dynamic instrumentation to disable certificate pinning and analyze HTTP(S) communications through HTTP Toolkit.
Instructions
Intercept a specific Android app using Frida dynamic instrumentation. Automatically disables most certificate pinning. Requires a rooted device with Frida server running (use frida_android_setup and frida_android_launch first).
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| proxyPort | Yes | Proxy port to route traffic through | |
| hostId | Yes | Frida host ID | |
| targetId | Yes | Target app identifier. Use get_interceptor_metadata with id "android-frida" and subId set to the hostId to list available app targets. | |
| enableSocks | No | Enable SOCKS proxy support (default: false) |
Implementation Reference
- src/index.ts:253-269 (handler)Registration and handler implementation for the frida_android_intercept tool. It delegates to the client.activateInterceptor method.
server.registerTool( 'frida_android_intercept', { title: 'Intercept Android App via Frida', description: 'Intercept a specific Android app using Frida dynamic instrumentation. Automatically disables most certificate pinning. Requires a rooted device with Frida server running (use frida_android_setup and frida_android_launch first).', inputSchema: z.object({ proxyPort: z.number().describe('Proxy port to route traffic through'), hostId: z.string().describe('Frida host ID'), targetId: z.string().describe('Target app identifier. Use get_interceptor_metadata with id "android-frida" and subId set to the hostId to list available app targets.'), enableSocks: z.boolean().optional().describe('Enable SOCKS proxy support (default: false)'), }), }, async ({ proxyPort, hostId, targetId, enableSocks }) => jsonResult(await client.activateInterceptor('android-frida', proxyPort, { action: 'intercept', hostId, targetId, enableSocks })) );