Skip to main content
Glama
android-reserve-mcp

android-reserve-mcp

by lonnnnnng

native

Destructive

Open an exclusive analysis backend to inspect ELF, JNI, Go, and Rust binaries; query functions, references, callers, callees, and status, then close the task.

Instructions

ELF/JNI/Go/Rust;open独占后端并返回任务,结果含targetId。随后functions/function/references/callers/callees/status,最后close;providers检查引擎。

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "action": "<action>"
    },
    "name": "native"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathNo
actionYes
providerNo
targetIdNo
classNameNo
directionNo
procedureNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.5.2

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations it usefully discloses that open takes an exclusive lock on the backend, that the returned targetId is required for follow-up calls, and that the session must be closed. However, with destructiveHint=true it never explains what is destroyed or what happens if close is skipped, and there is no mention of permissions or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and front-loads the action families, and the open-to-close ordering is stated in sequence. But the semicolon-chained, compressed phrasing is cryptic and hard to parse, and the ordering information would be clearer as a structured lifecycle statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a seven-parameter, destructive, multi-action dispatcher with no output schema, the description is too thin: it omits how parameters pair with actions and gives no return-value detail for any action other than targetId. An agent would have to guess which parameters apply to which action.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across seven parameters, so the description carries the full burden and does not meet it. Only targetId is explained (returned by open); path, className, procedure, direction, and the ghidra/ida provider choice are never described, and the action list merely restates the schema enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the artifact families (ELF/JNI/Go/Rust) and the actions (open, functions, references, close, providers), which hints at native binary analysis via a backend engine. But it never states the tool's purpose in a verb+resource sentence, and it is written as a telegraphic action list rather than a description of what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It does give a real workflow order: open first (exclusive backend lock, returns targetId), then the query actions, then close, with providers to check the engine. What is missing is any guidance on when to choose this tool over siblings such as apk, dex, framework, or frida, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.