Skip to main content
Glama

Server Quality Checklist

50%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool targets a distinct Frida operation: lifecycle (attach, detach, spawn, resume, kill), memory (read, write, scan, disassemble), hooking (add_hook, trace_api, eval_js), listing (modules, processes, sessions, notes), and utilities (resume_session, read_events). Even similar tools like add_hook and trace_api are differentiated by specificity: add_hook for exact addresses or exports, trace_api for glob patterns. No two tools share an overlapping purpose.

    Naming Consistency3/5

    Tools use snake_case consistently, but verb patterns vary: some are bare verbs (attach, detach, kill, resume, spawn), while others are verb_noun compounds (add_hook, read_memory, list_modules). This mix of single-word and compound names creates mild inconsistency, though each name is readable and descriptive. A more uniform verb_noun pattern would improve predictability.

    Tool Count4/5

    19 tools cover a broad Frida feature set (process control, memory, hooks, scripting, event logging, and notes) without feeling overwhelming. While slightly above the typical 3–15 range, each tool addresses a core capability, and no tool seems redundant. The count is justified by the domain's complexity.

    Completeness3/5

    The tool surface covers essential operations but has notable gaps: no way to list installed hooks, remove hooks, or enumerate memory regions for scanning (though scan_memory accepts ranges). Unhooking and hook introspection are missing, and while eval_js provides scripting, a dedicated 'list scripts' tool is absent. These omissions may force agents to use workarounds.

  • Average 2.9/5 across 19 of 19 tools scored. Lowest: 2.2/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 22 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    Discloses basic effect ('starts running'), but with no annotations, the description fails to mention side effects, idempotency, permission requirements, or behavior when the process is already running. Inadequate for a mutation operation.

    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?

    Single sentence is concise but critically underspecified. Efficiency is undermined by lack of useful information.

    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?

    Given one required parameter, no output schema, and sibling tools, the description is incomplete. Does not clarify how session_id relates to the process being resumed or differentiate from 'resume_session'.

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

    Parameters1/5

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

    Schema has 0% description coverage and only one parameter 'session_id'. The description does not explain what the session_id represents or its relationship to the process. No value added beyond the schema.

    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?

    Description states verb 'Resume' and resource 'gated/spawned process', but the parameter is 'session_id', creating ambiguity about what exactly is resumed. It does not distinguish from sibling tool 'resume_session', which presumably resumes an entire session.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like 'resume_session' or 'spawn'. Does not specify prerequisites or typical usage scenarios.

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

  • Behavior1/5

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

    With no annotations, the description must disclose behavioral traits. It only says 'evaluate JS' without mentioning side effects, destructive potential, permission requirements, or return value. This is insufficient for an agent to understand the tool's impact.

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

    Conciseness2/5

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

    The description is a single sentence, but it is under-specified. It lacks critical detail, making it not appropriately sized for the tool's complexity. Conciseness should not come at the expense of completeness.

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

    Completeness1/5

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

    Given the absence of output schema and parameter descriptions, the description is completely inadequate. It does not clarify what 'persistent context' means, how to use the parameters, or what the tool returns. The tool requires much more context for correct invocation.

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

    Parameters1/5

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

    The description adds no information about the two required parameters (session_id and code). Schema coverage is 0%, so the description should compensate, but it does not explain their purpose or constraints.

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

    Purpose5/5

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

    The description clearly states the specific action (evaluate JS) and context (resident agent's persistent context). It distinguishes from sibling tools like read_memory or write_memory, which operate on different resources.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, restrictions, or scenarios where eval_js is preferable to other tools like add_hook or scan_memory.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full burden. It only states the action and protection filter but omits behavioral traits such as whether the scan is read-only, if it modifies state, or any side effects. This is insufficient for a memory scanning tool.

    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?

    The description is a single sentence with no wasted words, but it prioritizes brevity over completeness. It misses critical details that could be added without significant length.

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

    Completeness1/5

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

    Given the complexity of memory scanning (three parameters, no schema descriptions, no annotations, and an output schema presumably present), the description is highly incomplete. It fails to explain return format, range selection, or error conditions.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds minimal meaning beyond param titles. 'pattern' is not explained (e.g., format like hex string or AOB byte sequence), 'protection' is described only as 'given protection' without clarifying possible values, and 'session_id' lacks context for identification.

    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 clearly states the action ('scan') and the resource ('ranges' in memory), and uses 'AOB/pattern' to indicate a specific type of scan. It distinguishes from sibling tools like read_memory or write_memory, as no other scanning tool is listed.

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

    Usage Guidelines2/5

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

    No guidance provided on when to use this tool versus alternatives (e.g., read_memory). The description does not mention prerequisites, preferred contexts, or scenarios where this tool is inappropriate.

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

  • Behavior1/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It does not mention side effects, error handling, permissions required, or what happens if the address is invalid. Extremely minimal.

    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?

    The description is one short sentence, which is concise but lacks necessary details about parameters and usage. It is not verbose but under-specified for a tool with three required params.

    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?

    Given the tool has 3 required parameters, no output schema, and no annotations, the description is highly incomplete. Missing context about session_id, address encoding, and return behavior (likely void).

    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%, so the description must compensate. It implies 'hex_bytes' is hex-encoded, but does not explain 'address' format or 'session_id' usage. Adds little value beyond the parameter names.

    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 clearly states the action (write) and the data type (hex-encoded bytes) and target (address). It distinguishes from read_memory and scan_memory by specifying writing, but lacks mention of session context, making it slightly less specific than ideal.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like read_memory, scan_memory, or other tools. There are no hints about prerequisites or conditions.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It only states 'Read captured events' which is read-only, but lacks details on effects (e.g., does reading affect the log?), permissions, or edge cases. Minimal transparency.

    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?

    The description is very concise (one sentence), but this comes at the cost of omitting useful details. It is not verbose, but could be more informative without being long.

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

    Completeness1/5

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

    Given 4 parameters with no descriptions, no annotations, and an output schema that is not visible, the description is too sparse. It fails to explain return structure, pagination behavior, or filtering options, making it incomplete for effective use.

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

    Parameters1/5

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

    Schema description coverage is 0% and the description adds nothing about parameters like 'limit', 'offset', 'session_id', or 'type_filter'. The agent must infer from names alone, which is insufficient, especially for 'type_filter' which lacks allowed values.

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

    Purpose5/5

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

    The description clearly states the verb 'Read', the resource 'captured events', and specifies subtypes 'hooks/repl/errors' from the 'trace log', making the purpose unambiguous and distinct from sibling tools.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. Usage is implied but not explicitly directed.

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

  • Behavior2/5

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

    No annotations provided, so description carries full burden. It mentions 'if the target is alive' indicating a condition, but lacks disclosure of side effects, auth needs, or error handling.

    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?

    Single sentence, front-loaded with verb and resource. It is concise with no waste, but could benefit from slight expansion for context.

    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?

    No annotations or output schema; description is minimal. Does not cover return values, side effects, prerequisites, or error conditions. Given sibling diversity, more completeness is needed.

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

    Parameters1/5

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

    Schema coverage is 0% for session_id, and description does not add meaning beyond 'prior session'. No details on format, constraints, or role of the parameter.

    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 clearly states it re-attaches a prior session and reinstall hooks if target is alive, using specific verbs and resource. However, it does not distinguish from sibling tools like 'attach' or 'resume', so differentiation is lacking.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use vs alternatives. The description implies usage for resuming sessions, but no when-not-to or alternatives mentioned.

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

  • Behavior2/5

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

    Without annotations, the description must disclose behavioral traits. It only says 'attach', implying a write operation, but does not clarify if the note append to existing notes, overwrites, or is separate. No info on side effects, idempotency, or required permissions.

    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?

    The description is a single sentence with no filler, achieving brevity. However, it sacrifices detail for conciseness, which is acceptable but not optimal.

    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?

    Given no output schema and no annotations, the description should compensate with more detail. It lacks information about return values, error handling, or behavioral constraints, making it incomplete for a tool with two required parameters.

    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 coverage is 0%, so the description needs to explain parameters. It does not elaborate on the 'text' or 'session_id' fields beyond their names. The description adds minimal semantic value beyond what the schema already provides via parameter titles.

    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 clearly states the verb 'attach' and the resource 'freeform note' to a session, making the action and target unambiguous. However, it does not differentiate from the sibling tool 'list_notes' beyond the action type, though the intent is clear.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives (e.g., list_notes). No mention of prerequisites, such as requiring an existing session, or context about session lifecycle.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It only states the action but does not reveal consequences (e.g., whether permissions are required, if the process is immediately terminated, or side effects).

    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?

    The description is a single, concise sentence, but it omits essential information. Conciseness is not beneficial when it comes at the cost of completeness.

    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 simple tool with one parameter and no output schema, the description should at least explain the parameter and expected behavior. It fails to provide context for successful invocation or error handling.

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

    Parameters1/5

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

    Schema coverage is 0%, yet the description does not explain the only parameter (session_id). The agent has no context on what value to provide or its format, relying solely on the schema title which is minimal.

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

    Purpose5/5

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

    The description clearly states the action (kill) and the resource (target process of a session). It is specific and distinguishes from siblings like list_processes or resume_session.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. Does not mention prerequisites, such as needing an active session or process, nor when to use other tools like resume or detach.

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

  • Behavior3/5

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

    The description implies a read-only listing operation, which is behaviorally accurate, but with no annotations provided, the description carries the full burden. It does not disclose any potential side effects or specifics about what constitutes 'loaded modules,' though the action is inherently non-destructive.

    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?

    The description is a single, concise sentence that efficiently conveys the tool's main function. However, it could be slightly expanded to include parameter context without sacrificing brevity.

    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?

    Although an output schema exists, the description still leaves gaps: it does not explain what constitutes 'loaded modules' or how to properly use the session_id parameter. For a tool with a single required parameter, this lack of explanation hinders correct invocation.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning the parameter session_id has no description in the schema. The tool description also fails to explain what session_id is or how to obtain it, providing no additional meaning beyond the schema.

    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 states 'List loaded modules in the target,' which clearly identifies the verb and resource. However, it does not distinguish from sibling tools like list_processes or list_sessions, slightly reducing clarity.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives (e.g., list_processes). There is no mention of prerequisites or context for using the session_id parameter.

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

  • Behavior2/5

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

    Despite no annotations, the description only mentions reading from a 'live process' and that the address is a hex string. It fails to disclose potential impacts (e.g., safety, error behavior, permission requirements) or the need for an active session.

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

    Conciseness2/5

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

    The description is concise (12 words) but at the expense of crucial information. It is under-informative rather than efficiently complete.

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

    Completeness1/5

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

    Given three required parameters and no output schema or annotations, the description is severely incomplete. It does not explain session context, address format (e.g., 0x prefix), size limits, return values, or error conditions.

    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?

    With 0% schema description coverage, the description adds minimal value: it notes 'address' as hex string and 'size' implicitly, but completely omits explanation of the required 'session_id' parameter.

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

    Purpose5/5

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

    The description clearly states 'Read `size` bytes at `address` (hex string) from the live process,' specifying the action (read), resource (memory of live process), and key parameters. This sufficiently distinguishes it from sibling tools like 'write_memory' or 'scan_memory'.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites (e.g., attaching to a session) or context for effective use.

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

  • Behavior2/5

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

    The description mentions the key behavioral trait 'process keeps running', but with no annotations provided, it fails to disclose other important details such as whether the session is invalidated, resources freed, or any side effects.

    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?

    The description is a single concise sentence, but it is front-loaded with the primary purpose. It is appropriately sized, though a bit more structure could improve readability.

    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?

    Given the low complexity (1 param, no output schema, no annotations), the description is incomplete. It lacks context about the session_id parameter and does not explain the effects of detaching (e.g., can it be reattached?).

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

    Parameters1/5

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

    The input schema has 0% description coverage for the sole parameter 'session_id', and the tool description adds no meaning about the parameter's format, constraints, or how to determine its value.

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

    Purpose5/5

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

    The description clearly states the action (Detach Frida from a session) and explicitly notes that the process keeps running, which distinguishes it from sibling tools like 'kill' that would terminate the process.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives. It implies detaching without killing, but does not specify prerequisites, when not to use, or compare with siblings like 'kill' or 'resume_session'.

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

  • Behavior2/5

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

    No annotations provided. The description does not disclose behavioral traits like whether the operation is read-only, returns all notes, or has pagination. The agent has no insight beyond the surface meaning of 'list'.

    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?

    The description is a single sentence, which is concise, but it lacks necessary details about parameters and behavior, making it under-informative for effective use.

    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?

    With an output schema present, some return value details are covered. However, the description omits information about ordering, pagination, and whether the tool has side effects, leaving gaps for a simple list tool.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the session_id parameter. The agent cannot infer valid values or constraints, making the parameter opaque.

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

    Purpose5/5

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

    The description clearly states the action (list), resource (notes), and scope (for a session). It distinguishes from sibling tools like add_note (create) and list_sessions (different resource).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives such as add_note or list_sessions. Lacks context on prerequisites or scenarios.

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

  • Behavior2/5

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

    The phrase 'calls stream to disk' suggests side effects, but no details on mutability, persistence, or reversibility. With no annotations, the description fails to adequately disclose behavioral traits.

    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?

    The description is a single sentence, concise and front-loaded. It could slightly expand on key points without becoming verbose.

    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 an operation like hooking a function, the description omits critical details: return values, side effects, prerequisites (e.g., valid session), and cleanup. With no output schema, completeness is lacking.

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

    Parameters3/5

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

    The parameter 'target' is explained with format hints (module!export or hex address), adding value beyond the schema. However, 'session_id' is left undefined, and with 0% schema description coverage, more detail is expected.

    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 specifies the action 'Hook a function' with acceptable target formats (module!export or hex address), clearly indicating the tool's purpose. It stands out from siblings like attach or detach, but lacks explicit differentiation.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool over alternatives, no prerequisites or context for invocation. The description only states what it does, not when it's appropriate.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It only states the basic action without disclosing whether the tool is destructive, requires authentication, returns synchronous results, or what side effects occur. For a hooking tool, this is insufficient.

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

    Conciseness5/5

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

    The description is a single concise sentence (11 words) that efficiently conveys the core functionality. It is front-loaded with the 'frida-trace style' qualifier, setting context immediately.

    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?

    Despite low schema coverage and no annotations or output schema, the description omits critical context: what the tool returns (likely events?), how to interpret results, and the purpose of session_id. For a tool that modifies execution state, this is incomplete.

    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%. The description only explains the 'pattern' parameter with a format example. It completely fails to mention the required 'session_id' parameter, leaving its purpose and usage unclear.

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

    Purpose5/5

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

    The description clearly states the action ('hook all exports') and the resource ('matching module!glob pattern'), with a concrete example. It distinguishes from siblings like 'add_hook' which likely hooks a single function, but the purpose is unambiguous.

    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 description implies usage for tracing exports via a glob pattern but provides no explicit guidance on when not to use it or alternatives. Among siblings like 'add_hook', the differentiation is only implicit.

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

  • Behavior2/5

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

    No annotations provided, so description must disclose behavioral traits. It only states the basic action without mentioning side effects, required permissions, or whether the process is paused. Minimal behavioral disclosure.

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

    Conciseness5/5

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

    Single sentence with no wasted words, front-loaded with verb and resource. Efficient.

    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?

    Lacks information about return value (e.g., does it return a session ID?), side effects (does it pause the process?), and prerequisites. Incomplete for a tool that likely has significant runtime impact.

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

    Parameters4/5

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

    Schema coverage is 0%, but description clarifies that 'target' accepts process name or numeric pid as string, adding meaning beyond the schema's type definition. Could specify format for name.

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

    Purpose5/5

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

    The description clearly states the verb 'attach' and the resource 'running process', and specifies the target can be a name or numeric pid. This distinguishes it from sibling tools like 'spawn' (create process) and 'detach' (disconnect).

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like 'spawn' or 'list_processes'. The description only states what it does, leaving the agent to infer usage context.

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

  • Behavior2/5

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

    No annotations are provided (e.g., readOnlyHint), and the description only states the basic action. It does not disclose whether the tool is read-only, modifies state, or has side effects. Given no annotations, the description should compensate but fails to provide behavioral context.

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

    Conciseness5/5

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

    A single sentence with no filler. It uses backticks for parameters, making it easy to parse. Every word is necessary and contributes to understanding.

    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?

    While the tool has a simple signature and an output schema exists, the description lacks behavioral transparency and usage guidance. For a tool with no annotations, more behavioral context (e.g., safety, output format) would be needed for completeness.

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

    Parameters3/5

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

    Schema description coverage is 0%, so the description must add meaning. It explains 'count' as number of instructions and 'address' as memory location, but does not mention 'session_id' or its purpose. This partial explanation provides some value but is incomplete.

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

    Purpose5/5

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

    The description clearly states the verb 'disassemble' and the resource 'instructions at address from live memory', with parameters 'count' and 'address' explicitly mentioned. It distinguishes from sibling tools like read_memory, write_memory, and scan_memory by focusing on instruction disassembly.

    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?

    No explicit guidance on when to use this tool versus alternatives. The context of a debugger toolset implies usage for instruction-level analysis, but there is no when-to-use or when-not-to-use advice, nor mention of prerequisites like needing a live session.

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

  • Behavior2/5

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

    No annotations provided, so description carries full burden. It only states it lists processes visible to local Frida device, but does not disclose behavioral traits like permissions, rate limits, or whether it's a snapshot or real-time.

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

    Conciseness5/5

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

    Single sentence, front-loaded, no waste. Perfectly concise for a tool with no parameters.

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

    Completeness4/5

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

    Given zero parameters and an output schema, the description is mostly complete. Could add context like 'snapshot at call time', but adequate for a simple list tool.

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

    Parameters4/5

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

    No parameters, schema coverage 100%. Baseline 4 as per rules. Description adds nothing beyond schema, but no parameters need explanation.

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

    Purpose5/5

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

    Description clearly states 'List processes visible to the local Frida device', using a specific verb and resource, and distinguishes from sibling tools that handle other entities like modules or sessions.

    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?

    No explicit guidance on when to use vs alternatives, but the purpose is clear and the tool is for listing processes, which is distinct from other siblings like add_hook or disassemble.

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

  • Behavior3/5

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

    The description does not explicitly confirm that the tool is read-only or non-destructive, and no annotations are provided. However, the word 'list' implies a safe operation, and specifying 'alive and dead' adds some context about the data scope.

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

    Conciseness5/5

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

    Single sentence, no wasted words. The verb 'List' is front-loaded, making the purpose immediately clear.

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

    Completeness4/5

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

    Given the simplicity of the tool (no parameters, list operation), the description is largely complete. It specifies the scope and that both alive and dead sessions are included. However, it lacks details about output format or behavior when no sessions exist.

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

    Parameters4/5

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

    There are zero parameters, so the baseline is 4. The description adds value by clarifying the scope ('alive and dead') beyond the empty schema, though it doesn't need to explain parameters.

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

    Purpose5/5

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

    The description clearly states the tool lists all sessions (both alive and dead) in the project. The verb 'list' and resource 'sessions' are explicit, and it differentiates from sibling tools like 'list_modules' or 'list_notes'.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives (e.g., 'resume_session' or other listing tools). There is no mention of context, prerequisites, 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.

  • Behavior4/5

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

    With no annotations, the description properly discloses the key behavioral trait: the program is spawned in a suspended state (gated) for hook installation. It does not mention side effects, permissions, or return values, but the core behavior is transparent.

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

    Conciseness5/5

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

    A single sentence with no unnecessary words. It front-loads the key action and purpose, making it easy to scan.

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

    Completeness4/5

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

    For a simple spawn tool with 2 parameters and no output schema, the description covers the essential purpose. However, it lacks information about return values or process identification, which could be needed for subsequent actions like adding hooks.

    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%, so the description must compensate. However, it does not explain the 'program' parameter (e.g., path format) or the 'gated' boolean beyond implying suspension. Parameter meanings are left to inference from names and context.

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

    Purpose5/5

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

    The description clearly states the action ('spawn a program'), the state ('suspended/gated'), and the purpose ('so hooks can be installed first'). It differentiates from sibling tools like 'attach' (attach to existing process) and 'resume' (resume suspended process).

    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 description implies usage before installing hooks, but does not explicitly state when not to use the tool or provide alternatives. The 'suspended' keyword hints that a 'resume' call is needed later, but this is not explicit.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

frida-mcp MCP server

Copy to your README.md:

Score Badge

frida-mcp MCP server

Copy to your README.md:

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/neeetman/frida-mcp'

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