Skip to main content
Glama

Skysay

Create an AI agent

create_agent
Destructive

Create a first-class Skysay agent in external_audio, external_text, or hosted mode. Hosted agents can choose a shared stack and selected languages; locale overrides remain draft data until the explicit voice-stack publish command. An engine whose agent-catalog row says has_language_axis false (a voice-to-voice engine) refuses languages, language_profiles and follow_caller with a 400 naming the field and the engine.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeYes
nameYes
modelNo
voiceNo
languageNo
languagesNo
project_idYes
transcriberNo
webhook_urlNo
begin_messageNo
first_messageNo
system_promptNo
voice_frontendNoOptional conversation engine. Omit or cascade keeps STT/LLM/TTS. gpt_live selects GPT-Live-1. Each engine declares whether it has a language axis as has_language_axis in get_agent_catalog.
organization_idNoOptional. Defaults to the authenticated workspace; when supplied it must be that workspace's id.
audio_stream_urlNo
language_profilesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare destructive=true, idempotent=false and readOnly=false, so the write profile is covered. The description adds real value beyond that: it discloses that locale overrides stay draft data until an explicit voice-stack publish command, and that language-axis-less engines reject languages/language_profiles/follow_caller with a 400 naming the offending field. Auth requirements and the create-return value remain unstated.

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?

Three sentences, front-loaded with the core action and modes before the finer behavioral caveats. Dense and slightly jargon-heavy ('has_language_axis false'), but every sentence carries information an agent needs; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 16-parameter create tool with no output schema and very low schema coverage, the description covers the trickiest semantics (modes, language axis, draft vs publish) but omits what the call returns (e.g. the new agent id) and leaves most optional parameters undocumented. Adequate but with clear gaps.

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 only 13% across 16 parameters (with nested objects), so the description is expected to compensate. It supplies meaning for mode, languages, language_profiles, and voice_frontend-adjacent engine constraints, but leaves model, voice, transcriber, webhook_url, and the message/prompt fields entirely unexplained. Partial compensation only.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Create a first-class Skysay agent') and enumerates the three valid modes (external_audio, external_text, hosted), so the agent knows exactly what operation this is. It does not name update_agent or connect_external_agent explicitly, but the mode enumeration and 'first-class' framing distinguish creation from the sibling update/connect tools implicitly.

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

Usage Guidelines3/5

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

Usage is implied through the mode descriptions and the hosted-vs-external distinction, but there is no explicit 'use this when X, use update_agent when Y' guidance versus the many sibling agent tools. The engine/language-axis constraint is the closest thing to a precondition, but prerequisites and alternatives are largely left to inference.

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.