Skip to main content
Glama
android-reserve-mcp

android-reserve-mcp

by lonnnnnng

managed

Destructive

Inspect or extract verified .NET assembly stores and XALZ/XAZS compressed assemblies offline, including ELF wrappers with _assembly_store symbols, without executing the target.

Instructions

离线inspect/extract已核验的.NET assembly store或XALZ/XAZS压缩程序集;支持有_assembly_store符号的ELF封装,不执行目标。提取后用framework.ilspy分析PE/CLI。

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>",
      "path": "<path>"
    },
    "name": "managed"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathYes
actionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.5.2

TDQS

B3.2/5.0
Behavior3/5

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

Annotations declare destructiveHint=true and readOnlyHint=false, yet the description never says that extract writes files to disk or where those outputs land — the main destructive risk. It does add genuinely non-annotated behavior: processing is offline and the target is never executed, which is meaningful for a managed-code analysis tool. That partial disclosure earns a 3 rather than a 2.

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

Conciseness4/5

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

Two compact clauses with the target scope front-loaded and the follow-up analysis sentence last; little waste. The mixed Chinese/English phrasing and dense symbol names slightly reduce scannability but do not bloat the text.

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

Completeness3/5

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

For a two-parameter tool with no output schema, the definition covers target types and a downstream workflow, which is enough to start. It stops short of describing extract's outputs or path semantics, which matters given the destructive annotation and the fact that no output schema exists to fill the gap.

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 both parameters, so the description carries full burden. It mentions the inspect/extract verbs but never distinguishes what each action produces, and it gives no hint about what 'path' accepts (a file, a directory, an ELF wrapper?). The agent is left to guess the argument shape.

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

Purpose4/5

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

The description gives a specific verb pair (inspect/extract) and a well-scoped resource set: verified .NET assembly stores, XALZ/XAZS compressed assemblies, and ELF wrappers carrying an _assembly_store symbol. It also names the follow-up analysis step (framework.ilspy), which separates this tool from generic artifact/decode siblings, though it never names an alternative tool directly.

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?

The 'offline' and 'does not execute the target' framing implicitly tells the agent this is a static, safe-to-run-locally operation, and the trailing sentence prescribes framework.ilspy as the next step after extraction. There is no explicit when-not guidance (e.g. what to use for non-.NET binaries or raw APK/DEX inputs), so the agent must infer routing from sibling knowledge.

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