Skip to main content
Glama

create_agent

Create an agent.

`name` is lower-cased on save — it is a key, not a display name.

soul = persona/identity; task = duties and boundaries; tools = tool-name whitelist (check
list_tools first; the system tools time/geo/weather **and `compute_chart`** are
**auto-enabled by default**, no need to list them — but note that passing `tools` at all
replaces that default list, so include them yourself if you pass any);
knowledge_bases = attached knowledge base names (once attached, retrieval is injected
automatically every turn).

`ask_forms` (**on by default**) lets the agent reply with a tappable single/multi-choice form
instead of a paragraph of questions — the natural move when it needs two or three facts before
it can answer. `compute_chart`, on by default too, is what lets it draw a chart; it computes
shares / growth / running totals / projections in code from numbers already in the material,
so the model never does the arithmetic. Pass `ask_forms=False` for an agent that should only
ever answer in prose.

alias = the **public human-readable slug** — strongly recommended: it becomes the memorable URL
segment for this agent (`{public_base}/t/<tenant>/<alias>`), the link you hand to people. Use a
URL-safe lowercase-hyphen name (`booking`, `suchka-venue`); it is normalised automatically.
Collisions / invalid names are reported in alias_result.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
soulNo
taskNo
aliasNo
modelNo
toolsNo
skillsNo
ask_formsNo
publishedNo
knowledge_basesNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / ask_forms
      Added value: +{
      +  "default": true,
      +  "title": "Ask Forms",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / alias
      Added value: +{
      +  "default": "",
      +  "title": "Alias",
      +  "type": "string"
      +}
  3. First observed

TDQS

A4.7/5.0
Behavior5/5

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

No annotations are provided, so the description carries full burden — and it delivers thoroughly. It discloses name lower-casing, auto-enabled tools (time/geo/weather, compute_chart) that get replaced when tools is passed, ask_forms default-on behavior, compute_chart's arithmetic responsibilities, alias normalization and collision reporting via alias_result, and knowledge base retrieval injection. This is exemplary behavioral disclosure.

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 dense but well-organized with clear paragraph breaks for distinct semantic clusters (name/soul/task/tools, ask_forms/compute_chart, alias). Each sentence earns its place — no filler. It's lengthy, but given the 10-parameter surface with 0% schema coverage, the length is justified. Slightly front-loaded with the core 'create an agent' statement.

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 10-parameter create tool with zero annotations, zero schema coverage, no enums, and significant behavioral quirks, the description delivers complete coverage. It covers every parameter, warns about the tools default-replacement trap, explains return-adjacent metadata (alias_result), and clarifies the published/share mechanics. With an output schema present and this level of description, nothing material is left unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate entirely — and it does comprehensively. Every parameter gets semantic depth: name (key not display, lower-cased), soul/task (persona vs duties), tools (whitelist with default-replacement caveat), knowledge_bases (auto-injection), ask_forms (default and when to disable), alias (public slug, URL segment, normalization). This far exceeds compensating for the 0% coverage gap.

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 clearly states 'Create an agent' with a specific verb+resource. It provides extensive detail distinguishing this from the many sibling tools (e.g., list_agents, update_agent, get_agent) by explaining the full parameter space and behavioral nuances of creation specifically.

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?

The description gives substantial contextual guidance — it tells the agent to check list_tools first, explains when ask_forms is the natural move ('when it needs two or three facts before it can answer'), and advises passing ask_forms=False for prose-only agents. It doesn't explicitly name alternative tools for edge cases, but the guidance is strong and contextual.

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