Skip to main content
Glama

Move a project file

move_file
Destructive

Move one existing text or binary file to a project-relative folder in the same project, preserving its filename and contents. Use an empty destinationFolder for the project root. New implicit folders are allowed. Use rename_file or move_file only when the user requests a file rename or move. Both support existing text and binary files without reading or copying their contents. Call list_files first and pass the exact path and its revision as baseRevision. rename_file preserves the directory and extension; move_file preserves the filename within the same project. No overwrites, folder moves, cross-project transfers, or binary content changes are allowed. Path changes apply immediately, outside Review changes Keep/Revert. Text references are not automatically updated: check relevant LaTeX and bibliography references (including relative paths inside a moved text file), use guarded edit_file if needed, and report any incomplete reference updates separately. On a missing path or revision conflict, call list_files and confirm the target before retrying once.

Input Schema

NameRequiredDescriptionDefault
pathYesExact current project-relative file path from list_files.
projectIdYes
baseRevisionYesCurrent file revision from list_files. No read_file call or binary download is needed.
destinationFolderYesProject-relative destination directory, without a trailing slash; empty string means project root.

Output Schema

NameRequiredDescriptionDefault
fileYes
statusYes
messageYes
previousPathYes
referencesUpdatedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and openWorldHint=false, but the description adds material context beyond them: implicit folder creation is allowed, changes bypass the Review changes Keep/Revert flow, no read_file or binary download is needed, and text references (LaTeX/bibliography, relative paths) are NOT auto-updated. These are non-obvious consequences an agent would otherwise have to discover by trial.

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 purpose is front-loaded and every sentence carries information, but nine sentences is heavy for a four-parameter tool, and a few clauses repeat schema content (the empty-folder convention, revision sourcing). The reference-checking and retry-once guidance could be tightened without information loss.

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

Completeness5/5

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

With an output schema handling return values, annotations covering the safety profile, and 75% schema coverage, the description fills the remaining gaps: side effects on Review changes, the missing-reference-update risk, and the conflict-recovery procedure. Nothing an agent needs to call it correctly is absent.

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 75% and the schema already documents path, baseRevision and destinationFolder (including the empty-string-means-root convention), so the description largely reinforces rather than adds. It does add some value: 'New implicit folders are allowed' tells the agent that a non-existent destinationFolder is not an error, and it stresses passing the exact revision. Marginal gains, but real ones.

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?

Opens with a specific verb, resource and scope ('Move one existing text or binary file to a project-relative folder in the same project, preserving its filename and contents'). It also explicitly distinguishes itself from the closest sibling: 'rename_file preserves the directory and extension; move_file preserves the filename within the same project.' An agent can route between move_file and rename_file without opening either schema.

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

Usage Guidelines5/5

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

Gives explicit when-to-use ('move_file only when the user requests a file rename or move'), prerequisites ('Call list_files first and pass the exact path and its revision as baseRevision'), a follow-up requirement for references via edit_file, and a recovery path ('On a missing path or revision conflict, call list_files and confirm the target before retrying once'). It also names exclusions: no overwrites, folder moves, cross-project transfers or binary content changes.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources