Skip to main content
Glama

Update Agent

update_agent

An agent's recurring runs are steered by each trigger's prompt and code; the goal is shared context, not the run script. A goal edit that adds, removes, or changes a recurring step therefore doesn't reach the runs on its own: after updating the goal, read the agent's triggers and bring each affected trigger's prompt or code in line via update_trigger — or confirm the existing triggers already cover the change. Narrowing a live outreach campaign's ICP is the same shape with more surfaces: segment-bound triggers, per-segment templates, and queued-unsent sends stay wired to the dropped segment; follow your channel's outreach skill to reconcile them.

Set priority=True to push this whole campaign's queued sends — email and LinkedIn alike — ahead of your other campaigns'. It starves the others until it drains — that's intended. priority=False clears it. Dict with success status and updated agent details

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
goalNoNew goal/instructions. Name any outside resource a run reads (a Google Sheet, doc, file, URL) by the identifier its tool takes (the spreadsheet ID and tab, the URL), not only by its title — a later run doesn't see this chat.
titleNoNew title
statusNoSet to 'active' or 'paused'. Pausing stops the whole agent — every trigger on it.
agent_idYesID of the agent to update
priorityNoTrue to prioritize this campaign's queued sends (email and LinkedIn) over other campaigns; False to clear.
on_behalf_ofNoAn agency client's email, from list_agency_clients, to run this call in that client's account: their agents, settings, connected accounts, and credits. Omit it to act on your own account.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / on_behalf_of
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "An agency client's email, from list_agency_clients, to run this call in that client's account: their agents, settings, connected accounts, and credits. Omit it to act on your own account."
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / title / anyOf
      Previous value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 255,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  3. Changed1 schema field changed
    • changedInput schema / properties / goal / description
      Previous value: -"New goal/instructions"New value: +"New goal/instructions. Name any outside resource a run reads (a Google Sheet, doc, file, URL) by the identifier its tool takes (the spreadsheet ID and tab, the URL), not only by its title — a later run doesn't see this chat."
  4. Changed4 schema fields changed
    • addedInput schema / properties / agent_id
      Added value: +{
      +  "description": "ID of the agent to update",
      +  "type": "integer"
      +}
    • changedInput schema / properties / status / description
      Previous value: -"Set to 'active' or 'paused'. Pausing stops the whole task — every trigger on it."New value: +"Set to 'active' or 'paused'. Pausing stops the whole agent — every trigger on it."
    • removedInput schema / properties / task_id
      Removed value: -{
      -  "description": "ID of the task to update",
      -  "type": "integer"
      -}
    • changedInput schema / required
      Previous value: -[
      -  "task_id"
      -]New value: +[
      +  "agent_id"
      +]
  5. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare non-read-only/non-destructive, and the description adds substantial context beyond them: pausing stops every trigger on the agent, goal edits don't propagate to recurring runs on their own, and priority=True starves other campaigns until the queue drains. These are real behavioral consequences an agent needs.

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 first sentence front-loads the core action and fields, and each paragraph targets a distinct concern. The outreach-ICP reconciliation passage is somewhat long and campaign-specific for a general agent-update tool, but it earns its place as a warning about stale wired surfaces.

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 six-parameter mutation tool with no output schema, the description covers the mutation semantics, side effects, ordering constraints with update_trigger, and cross-account behavior. The <returns> block covers the return shape, so nothing essential is missing.

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 100%, so the baseline would be 3, but the description adds meaning the schema does not: the starvation effect of priority=True and its clearing via False, and the cross-account scope of on_behalf_of. The outreach-reconciliation note also clarifies what goal/segment edits leave stale.

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 opening sentence gives a specific verb (Update) plus the exact updatable fields (title, goal, active/paused status, priority) and adds 'Only provided fields are changed'. It also distinguishes this tool's role from background agent runs that refine trigger prompts instead of editing the goal.

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?

It states when to call (interactive edits, with a user confirmation step), when not to reach for this tool (background runs don't edit the goal), and the follow-up tool to use after a goal edit (update_trigger). It even routes the outreach-campaign variant to a channel skill.

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