Skip to main content
Glama

live_message_send

Send a structured teaching move to a live session, enforcing the required FRAME opener and validating move types, response kinds, and content length.

Instructions

追加一条 Teaching Move (Live Teaching 结构化教学). 会话第一条 move (seq=1) 必须 move_type="FRAME"——否则结构化拒绝, 不接受其他类型开场. FRAME content 须覆盖三要素: 本场做什么/多久/怎么算完. ASK/PROBE/CHALLENGE 必须 response_kind="text". REFLECT 必须 "none". content 控制在 300 中文字以内 (EXPLAIN). 一个 move 只做一件事. 自由对话/答疑请用 adhoc_message_send.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
contentYes
payloadNo
move_typeYesFRAME|ASK|EXPLAIN|PROBE|HINT|CHALLENGE|REFLECT
source_idNo
session_idYes
source_typeNo
response_kindYesnone|text|continue — none 不交轮(轮次留在老师), text/continue 交轮等学习者
idempotency_keyNo可选。幂等键 (建议 uuid) —— 同一 key 重放此调用返回首次结果, 不重复写入. 网络重试/断线重连时带上同一个 key, 而不是猜"上次到底写没写".
Behavior4/5

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

No annotations are provided, so the description carries the burden. It discloses that non-FRAME openings are structurally rejected, enforces first-move sequencing, and defines response_kind/content rules. It stops short of describing return/error format or session lifecycle, but it gives substantial behavioral context.

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 and front-loaded, with each sentence covering a useful rule. It is slightly long due to multiple conditional constraints, and the parenthetical '(EXPLAIN)' is ambiguous, but there is no wasted wording.

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 an 8-parameter tool with no annotations and no output schema, the description misses key aspects: payload is an object but its purpose is never explained, source_id/source_type are unmentioned, and error/return behavior is vague ('结构化拒绝' not elaborated). The main Teaching Move flow is well covered, but the overall contract is incomplete.

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 description coverage is only 38%, but the description compensates by constraining move_type (FRAME-first), response_kind (text/none rules), and content (300-char limit, single responsibility). It does not explain payload, source_id, or source_type, so it is not fully comprehensive, but key parameters gain significant meaning.

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?

Description opens with '追加一条 Teaching Move (Live Teaching 结构化教学)', clearly identifying the verb (append) and resource (structured Teaching Move). It also implicitly distinguishes itself from adhoc_message_send, and the closing sentence explicitly names the sibling for free-form chat.

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?

Provides detailed usage rules: first message must be FRAME, alternatives for free conversation/Q&A are explicitly delegated to adhoc_message_send. It also states constraints (ASK/PROBE/CHALLENGE require text response_kind; REFLECT requires none; content <=300; one move = one thing).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sf-shenfeng/learn-shell'

If you have feedback or need assistance with the MCP directory API, please join our Discord server