Skip to main content
Glama

zas_replace_file

Replace a file this agent sent with a new one, keeping its id, channel placement, and pin. Refuses others, notes, and public shares; returns item id or job id.

Instructions

Replace the bytes of a file this agent sent with a file from this machine, keeping the item id, its place in the channel and its pin. Refuses items sent by anyone else, notes, and an item with a public share. Returns the item id, or a job id when the upload takes longer than a minute. Sends any file this process can read; confirm with the owner before sending secrets, keys or credentials. The owner sees every item this agent sends with the >_ agent mark and this agent's name, on every device.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesItem id, as `zas_list_items` reports it.
pathYesAbsolute or relative path of the new file.
titleNoNew label. Defaults to the label the item has.
channelNoChannel name or id. Optional when the agent holds exactly one channel.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.10.0

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so richly: refusals (foreign items, notes, publicly shared items), the dual return shape (item id, or job id for uploads over a minute), and the owner-visible agent mark across devices. These are exactly the operational facts an agent needs before invoking a mutation tool.

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?

Four sentences, each front-loaded with a distinct fact: what it does, what it refuses, what it returns, and the visibility/safety caveat. No filler and nothing repeated.

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?

For a 4-parameter mutation tool with no annotations and no output schema, the description supplies the missing pieces an agent needs: refusal conditions, return value semantics including the async job-id case, and a safety warning. Nothing material is left unstated.

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 100%, so id, path, title, and channel are already documented in the schema. The description reinforces that the item id must match an item the agent itself sent and that channel is optional only with a single channel, but adds no syntax or format detail beyond the schema. Baseline 3 applies.

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?

States a precise verb+resource: replacing the bytes of a file the agent previously sent, from a local path. It also names the preserved attributes (item id, channel position, pin), which distinguishes it from zas_edit_item (metadata edits) and zas_send_file (new item). An agent can differentiate it from siblings without opening any schema.

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

Usage Guidelines4/5

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

Clearly delineates when this tool refuses to act: items sent by anyone else, notes, and items with a public share, plus a pre-send caution about secrets/keys/credentials. It does not, however, explicitly name the alternative tools (e.g. zas_edit_item for metadata, zas_send_file for new uploads), leaving the agent to infer the boundary from the refusal list.

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