Skip to main content
Glama
imjdl

ghidra-fleet

by imjdl

Rename Function

rename_function

Rename a function in a binary and immediately save the change to the Ghidra project so it is visible in the GUI.

Instructions

重命名函数(立即保存到项目,GUI 打开同一项目可见)。

Input Schema

NameRequiredDescriptionDefault
binaryYes
new_nameYes
old_nameYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description must carry the behavioral burden, and it does disclose two useful traits: the change is persisted immediately to the project and is visible to a GUI opened on the same project. It says nothing about whether xrefs/callers are updated, whether the rename can be undone, or what happens if old_name is not found.

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?

A single compact parenthetical sentence, front-loaded with the action. Nothing is wasted, though the brevity is partly under-specification rather than pure efficiency.

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?

An output schema exists, so return values need not be explained, and the persistence note covers the main side-effect question. Gaps remain for a mutation tool with no annotations: parameter meaning and failure modes are undocumented.

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 three required parameters, so the description is the only source of meaning and it adds none: binary, old_name and new_name are only inferable from their names. In particular it does not say whether 'binary' is a path, an index, or a name from list_binaries.

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?

States a specific verb (重命名/rename) and resource (函数/function), which cleanly distinguishes it from rename_data, rename_variable and set_function_prototype among the siblings. It stops short of saying which function lookup key is used, but the action itself 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?

Usage is only implied: an agent can infer this is the tool for changing a function's name in a loaded binary. It never says when to prefer it over rename_variable or set_function_prototype, nor what preconditions must hold (e.g. the function must already exist in the listed binary).

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