Skip to main content
Glama

Update saved place

well_update_saved_place
Destructive

Change one of the asking person's saved places: its name, its point or its radius.

Use this tool when the person asks to rename a saved place, move it to a new shared location, or widen or narrow it. Find the saved_place_id first with well_list_saved_places.

REQUIRED: saved_place_id, and at least one field to change. OPTIONAL (only the fields the person wants changed): label, latitude with longitude (always both, as the new shared location states them), radius_meters.

The person confirms the change on a card before anything is written.

Returns { success: true, saved_place } on success, or { success: false, error } on failure.

Input Schema

NameRequiredDescriptionDefault
labelNoThe new name of the place.
latitudeNoThe new latitude; give it with longitude.
longitudeNoThe new longitude; give it with latitude.
workspace_idNoTarget workspace. Omit when the token authorizes one workspace. Required when it authorizes several — a write lands in exactly one workspace and this call would not say which.
radius_metersNoThe new geofence, in meters, from 150 to 5000.
saved_place_idYesThe saved place to change, from well_list_saved_places.
conversation_idNoThe conversation id returned by the previous Well result, in its meta under well/conversation_id, in its structuredContent, or in its JSON text block. Pass it back on every call in the same conversation, including a call a card makes, so the chosen workspace and the earlier answers still apply. It decides the conversation on its own: nothing the host states about the session replaces it. Omit it only on the first call of a conversation.
idempotency_keyNoOptional client-supplied key. A retried write with the same key returns the original result instead of re-applying the operation.
workspace_scopeNoRestrict this call to the family: the token's primary workspace plus the company workspaces under it that you are a member of. Unrelated authorized workspaces drop out of the read; row reads merge across the family, while a per-workspace figure still reports exactly one workspace.

Output Schema

NameRequiredDescriptionDefault
codeNo
errorNo
successYes
reply_linesNo
saved_placeNo
conversation_idNoThe conversation this result belongs to. Pass it back as the conversation_id argument on every later Well call in the same conversation.
near_candidatesNo
newly_connectedNoTools that connected to this workspace since the last result and that no session was told about yet, oldest first. Present only when at least one tool is new. The connected-line rule says when to tell an entry; when it does, one line per entry, in the person's language: "<name> is connected.". Never fold several entries into one sentence. Each entry comes back once, on one result only: never repeat its line later.
conversation_id_noteNoPresent only when the server opened a fresh lane, stating that no choice recorded earlier was read.
conversation_id_sourceNoWhere the conversation id came from: the host's own request meta, the caller's argument, or a fresh lane the server opened.
near_candidates_truncatedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedOutput schema / properties / code
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / near_candidates
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "company_id": {
      +        "type": "string"
      +      },
      +      "name": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "company_id",
      +      "name"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / near_candidates_truncated
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / reply_lines
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  2. Added

TDQS

A4.3/5.0
Behavior4/5

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

Adds real context beyond the annotations: a confirmation card gates the write ('the person confirms the change before anything is written') and it names the return shape ({success, saved_place} / {success, error}). It does not explain why destructiveHint=true, e.g. that moving a place discards the old geofence or that any replaced values are not recoverable, so it stops short of a 5.

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?

Front-loaded purpose sentence, then when-to-use, then REQUIRED/OPTIONAL blocks and return shape. Efficient overall, though the confirmation-card sentence sits above the parameter list where it interrupts the operational flow.

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?

Covers purpose, sequencing, minimum-field constraint, the write-confirmation gate and both success and failure returns, with an output schema also present. The only real gap is that it never addresses workspace_id or idempotency_key, which are workspace-safety and retry concerns an agent must handle on a write.

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 coverage is 100%, including the latitude/longitude pairing rule, radius bounds and the workspace_id/conversation_id explanations, so the schema does the heavy lifting. The description contributes the at-least-one-field requirement and the 'always give lat with lng' reminder, but these largely restate 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 specific verb and resource ('Change one of the asking person's saved places') and enumerates the three mutable facets: name, point, radius. This distinguishes it from siblings well_create_saved_place, well_delete_saved_place and well_get_saved_place without ambiguity.

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?

Explicit when-to-use clause ('when the person asks to rename a saved place, move it to a new shared location, or widen or narrow it') plus a prerequisite routing instruction: find the saved_place_id first via well_list_saved_places. Nothing left to inference about sequencing.

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