Skip to main content
Glama

update_agent

Update part of an agent — fields you don't pass stay as they are.

⚠️ List-field semantics, don't mix them up: `tools=[...]` / `skills=[...]` /
`knowledge_bases=[...]` are **full-list replacement** — items you didn't read first get pushed
out. To "add one / remove one", use `add_tools` / `remove_tools` (and add_/remove_skills,
add_/remove_knowledge_bases): incremental, idempotent, leaves the rest untouched.
After the call, **read the response** to verify the final list — don't announce "enabled" just
because the call succeeded.

Also: tools can ride on a skill (the tools field of create_skill/update_skill) — once the skill
is attached to an agent, its bound tools join the chat-time whitelist automatically, but they
**do not appear in the agent's own tools list**.

`auto_suggest=True` makes the agent propose 1–3 clickable follow-up questions after every turn
(rendered above the composer; clicking one sends it). `suggest_prompt` is optional steering for
those questions ("always move toward booking a demo") — leave it empty and they are written
from the conversation alone. Costs one extra short LLM call per turn.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
soulNo
taskNo
modelNo
toolsNo
skillsNo
greetingNo
add_toolsNo
ask_formsNo
publishedNo
reasoningNo
add_skillsNo
auto_suggestNo
remove_toolsNo
auto_greetingNo
remove_skillsNo
suggest_promptNo
knowledge_basesNo
grounding_requiredNo
add_knowledge_basesNo
remove_knowledge_basesNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A4.7/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 behavioral burden. It discloses that list fields (tools, skills, knowledge_bases) are full-list replacements, that skill-bound tools don't appear in the agent's own tools list, and that auto_suggest incurs an extra LLM call per turn. It also warns against assuming success equals 'enabled,' which is a valuable non-obvious behavioral trait.

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 description is long but every section earns its place: list-field warning, verification guidance, skill-bound tools note, and auto_suggest behavior. It is front-loaded with the most critical partial-update semantics and uses formatting (bold, warning emoji) to draw attention. For a 21-parameter tool, this length is justified, though a slightly tightened version could be easier to scan.

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?

The tool has 21 parameters, no annotations, and no schema-level descriptions. The description covers the most error-prone areas (list-field replacement vs incremental, verification, skill-bound tools, auto_suggest cost). An output schema exists for return values, so the description need not explain those. Missing details on a few boolean fields are minor since their names imply their purpose.

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?

The schema has 0% description coverage, so the description must compensate. It thoroughly explains the nuanced semantics of tools/skills/knowledge_bases (full-list) versus add_/remove_ variants (incremental), and describes auto_suggest and suggest_prompt in detail. However, it does not cover every parameter (e.g., soul, task, model, published), though those are relatively self-explanatory from their names and types.

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 description opens with 'Update **part** of an agent — fields you don't pass stay as they are,' which clearly identifies the action (partial update) and resource (agent). This distinguishes it from siblings like create_agent, get_agent, and list_agents, and the partial-update semantics prevent confusion with full replacement.

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 explicitly instructs when to use alternatives: 'To "add one / remove one", use add_tools / remove_tools (and add_/remove_skills, add_/remove_knowledge_bases): incremental, idempotent, leaves the rest untouched.' It also advises reading the response after the call to verify the final list, giving concrete post-usage guidance.

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.

TDQS

A3.6/5.0
Disambiguation4/5

Tools are mostly distinct by domain and action. A few pairs like add_knowledge_file vs add_knowledge_text or build_knowledge_index vs patch_knowledge_index could cause confusion, but descriptions clearly differentiate them.

Naming Consistency4/5

The vast majority follow a consistent verb_noun snake_case pattern (create_*, list_*, get_*, update_*). A few outliers like tenant_info, usage_stats, and page_context_stats are noun-first, deviating slightly from the otherwise uniform scheme.

Tool Count1/5

With 50 tools, this is a very large surface that exceeds typical well-scoped server sizes. Even for a broad platform management API, the sheer number makes it heavy and potentially overwhelming, matching the '50+' extreme mismatch category.

Completeness2/5

The server covers creation, reading, updating, and listing for most resources but lacks any delete operations (no delete_agent, delete_knowledge_base, delete_skill, delete_share, delete_storyline, delete_page_context). This is a significant gap in lifecycle coverage that will force agents to work around missing functionality.

Resources