Skip to main content
Glama

Language learning: Answer a question

language_answer
Destructive

Record the caller's answer to one question and fold it into their profile. Pass the literal string 'dont_know' when they say they do not know — that is a first-class answer, not a wrong one, and must not be sent as a guess. Returns the updated session so you can ask the next question. Auto-approved: confirming every answer would make a lesson unusable. CONFIRMATION: this tool runs immediately when the caller asks for it — it writes only their own record, and they can undo it from this same surface, so the request is taken as the instruction. You get an ordinary result, not a plan_token. Everything destructive, outbound or financial still proposes and waits.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "session_id": "<session_id>",
      "question_id": "<question_id>",
      "answer": "<answer>"
    },
    "name": "language_answer"
  }
}

Input Schema

NameRequiredDescriptionDefault
answerYes
session_idYes
question_idYes
response_time_msNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Goes well beyond the annotations: it discloses that the write is limited to the caller's own record, that it is undoable from the same surface, that it is auto-approved rather than proposed, and that it returns the updated session. One tension: the description frames this as non-destructive ('everything destructive... still proposes and waits') while destructiveHint=true, though that hint plausibly reflects overwriting a prior answer, so it reads as a soft mismatch rather than a direct contradiction.

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?

Front-loads the core action and the sentinel rule before the confirmation-policy block. The confirmation paragraph is longer than strictly necessary for tool selection, but it is clearly delineated and each sentence carries distinct information.

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?

With no output schema, the description usefully states the return value ('the updated session so you can ask the next question'). Combined with the sentinel rule and write-scope disclosure, an agent has enough to invoke it correctly; only the non-answer parameters remain underspecified.

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 0%, so the description must carry the load. It does add real meaning for 'answer' via the '__dont_know__' sentinel, but session_id, question_id, and response_time_ms are left entirely to the bare schema types with no explanation of format or expected values.

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?

States a specific verb and resource: 'Record the caller's answer to one question and fold it into their profile.' This is clearly distinguishable from siblings like language_start_check and language_finish_check, which bracket the question flow rather than recording a single answer.

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?

Gives concrete when-to-use guidance ('one question' at a time) and a critical edge-case rule: pass '__dont_know__' rather than guessing. It does not explicitly name an alternative tool for other cases, but the scope is unambiguous for the answer-recording step.

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