Skip to main content
Glama

Read selected Joe Speaking source

get_coach_selection
Read-onlyIdempotent

Component helper that reads the exact source selected inside the Joe Speaking coach. includeHome provides the full component chooser after a compact result. Read-only, with app-only visibility and the same account-scoped selection checks. Speaking practice, recording, scoring and mock tests take place in Joe Speaking.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "get_coach_selection"
  }
}

Input Schema

NameRequiredDescriptionDefault
refNoExact returned question, recording-practice or live-conversation URI to review.
examNoExam explicitly named by the learner in this conversation. With no value, the selected source or saved Joe Speaking goal applies; chat memory is not an exam input.
modeNoPlanning/review view: voice_teacher is the general coach entry, part2_outline plans IELTS topics. Neither starts practice or Voice.
taskNoCELPIP task for planning or review, matching the selected question.
localeNoRequested conversation language for the coach interface; it may differ from the host language.
marketNoRegional IELTS bank selection, when available.
seasonIdNoExisting IELTS question-bank season identifier.
includeHomeNoTrue includes the complete component-only home and chooser after a compact result; absent values keep exact-source reads compact.
recordingIdNoExact saved attempt ID within the referenced recording-practice session.
feedbackScopeNoWhole-session saved feedback rather than a single attempt; mutually exclusive with recordingId.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • changedInput schema / properties / exam / description
      Previous value: -"Only when the learner names an exam in this conversation; never infer it from memory or earlier chats. Omit it so the saved Joe Speaking goal (IELTS or CELPIP) or the selected source applies."New value: +"Exam explicitly named by the learner in this conversation. With no value, the selected source or saved Joe Speaking goal applies; chat memory is not an exam input."
    • changedInput schema / properties / feedbackScope / description
      Previous value: -"Read whole-session feedback instead of a single saved attempt; cannot combine with recordingId."New value: +"Whole-session saved feedback rather than a single attempt; mutually exclusive with recordingId."
    • changedInput schema / properties / includeHome / description
      Previous value: -"Hydrate the complete component-only home and chooser after a compact result; omit for exact-source reads."New value: +"True includes the complete component-only home and chooser after a compact result; absent values keep exact-source reads compact."
    • changedInput schema / properties / locale / description
      Previous value: -"Use the learner’s requested conversation language for the coach interface; it can differ from the host language."New value: +"Requested conversation language for the coach interface; it may differ from the host language."
    • changedInput schema / properties / task / description
      Previous value: -"CELPIP task to plan or review; must agree with the selected question."New value: +"CELPIP task for planning or review, matching the selected question."
  2. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already cover readOnly, idempotent, non-destructive and closed-world, so the bar is lower, and the description still adds genuine context: app-only visibility, the fact that the same account-scoped selection checks apply, and that includeHome returns a full chooser after a compact result. It does not describe the shape of the returned source object, but that is modest given the safety profile is already declared.

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?

Four short sentences, front-loaded with the core purpose and the includeHome behavior immediately after. The final sentence about practice and mock tests living in Joe Speaking is slightly oblique in its framing but earns its place as a scope boundary.

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?

With ten optional parameters, five enums, no output schema and no required fields, the description covers the read semantics and the compact/full toggle but leaves the overall selection model opaque — how ref, mode, task, recordingId and feedbackScope interact in choosing 'the exact source' is only documented in the schema. It is workable but thin for a tool of this complexity.

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 100%, so the baseline is 3. The description only reinforces includeHome (compact result vs. full chooser) and does not add meaning for ref, exam, mode, task, market, seasonId, recordingId or feedbackScope beyond what the schema already states, including the mutual exclusivity of recordingId and feedbackScope.

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 gives a specific verb and resource: it reads the source currently selected inside the Joe Speaking coach. It also distinguishes itself from the interactive sibling by noting that practice, recording, scoring and mock tests happen in Joe Speaking rather than here. What a 'source' actually is (question, recording session, live conversation) is only implied, and the sibling open_joe_speaking is never named as the alternative.

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 rather than stated: the reader is told this is a component helper with app-only visibility and that real practice lives elsewhere, which hints at when it applies. There is no explicit 'use this when X, use fetch/search instead when Y', and no guidance on whether to call it before or after open_joe_speaking.

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