Skip to main content
Glama

List supported languages

list_languages
Read-onlyIdempotent

[Admin] List supported platform (mojito) languages: the code to pass as mojito_language_code, English/local names, SVG flag URL, per-interface enablement flags, and Azure speech accents.

Every argument in full, with examples: get_tool_reference.

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": "list_languages"
  }
}

Input Schema

NameRequiredDescriptionDefault
llm_modelNoYour model id, e.g. "claude-opus-4-8"; "unknown" if unsure. For analytics.
conversation_idNoThe conversation_id this server returned earlier in this conversation, unchanged, including after later user messages. Omit it if you have none. Recorded for the server developer's analytics.

Output Schema

NameRequiredDescriptionDefault
languagesYes
_mcp_instructionsNoServer-issued metadata for this conversation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed25 schema fields changed
    • addedInput schema / properties / llm_model
      Added value: +{
      +  "description": "Your model id, e.g. \"claude-opus-4-8\"; \"unknown\" if unsure. For analytics.",
      +  "type": "string"
      +}
    • removedOutput schema / properties / languages / description
      Removed value: -"Supported platform languages, sorted by English name."
    • removedOutput schema / properties / languages / items / properties / accents / description
      Removed value: -"Azure speech regional accents / variants available for this language, each with its locale `code` and `name`."
    • removedOutput schema / properties / languages / items / properties / accents / items / properties / code / description
      Removed value: -"Azure speech locale code for the accent/regional variant."
    • removedOutput schema / properties / languages / items / properties / accents / items / properties / code / example
      Removed value: -"en-US"
    • removedOutput schema / properties / languages / items / properties / accents / items / properties / name / description
      Removed value: -"Human-readable accent name."
    • removedOutput schema / properties / languages / items / properties / accents / items / properties / name / example
      Removed value: -"English (United States)"
    • removedOutput schema / properties / languages / items / properties / admin_interface / description
      Removed value: -"Whether this language is enabled on the admin interface."
    • removedOutput schema / properties / languages / items / properties / admin_interface / example
      Removed value: -true
    • removedOutput schema / properties / languages / items / properties / coaching_interface / description
      Removed value: -"Whether this language is enabled on the coaching (consumer) interface."
    • removedOutput schema / properties / languages / items / properties / coaching_interface / example
      Removed value: -true
    • removedOutput schema / properties / languages / items / properties / code / description
      Removed value: -"Mojito platform language code. Pass this as `mojito_language_code` when creating interviews / personas."
    • removedOutput schema / properties / languages / items / properties / code / example
      Removed value: -"en"
    • removedOutput schema / properties / languages / items / properties / flag_emoji / description
      Removed value: -"Flag emoji for the language."
    • removedOutput schema / properties / languages / items / properties / flag_emoji / example
      Removed value: -"🇺🇸"
    • removedOutput schema / properties / languages / items / properties / flag_image / description
      Removed value: -"URL to an SVG flag image for the language (same source the app UI renders)."
    • removedOutput schema / properties / languages / items / properties / flag_image / example
      Removed value: -"https://cdn.jsdelivr.net/npm/country-flag-emoji-json@2.0.0/dist/images/US.svg"
    • removedOutput schema / properties / languages / items / properties / flag_unicode / description
      Removed value: -"Unicode code points for the flag emoji."
    • removedOutput schema / properties / languages / items / properties / flag_unicode / example
      Removed value: -"U+1F1FA U+1F1F8"
    • removedOutput schema / properties / languages / items / properties / interview_interface / description
      Removed value: -"Whether this language is enabled on the interview interface."
    • removedOutput schema / properties / languages / items / properties / interview_interface / example
      Removed value: -true
    • removedOutput schema / properties / languages / items / properties / name_english / description
      Removed value: -"Language name in English."
    • removedOutput schema / properties / languages / items / properties / name_english / example
      Removed value: -"English"
    • removedOutput schema / properties / languages / items / properties / name_local / description
      Removed value: -"Language name written in the language itself."
    • removedOutput schema / properties / languages / items / properties / name_local / example
      Removed value: -"English"
  2. Changed1 schema field changed
    • changedInput schema / properties / conversation_id / description
      Previous value: -"Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request."New value: +"The conversation_id this server returned earlier in this conversation, unchanged, including after later user messages. Omit it if you have none. Recorded for the server developer's analytics."
  3. Changed1 schema field changed
    • changedInput schema / properties / conversation_id / description
      Previous value: -"Echo the conversation_id from the server's previous response. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it."New value: +"Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request."
  4. Changed2 schema fields changed
    • addedInput schema / properties / conversation_id
      Added value: +{
      +  "description": "Echo the conversation_id from the server's previous response. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / _mcp_instructions
      Added value: +{
      +  "description": "Server-issued metadata for this conversation.",
      +  "properties": {
      +    "conversation_id": {
      +      "description": "The server-issued conversation identifier.",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  5. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover readOnlyHint, idempotentHint, openWorldHint and destructiveHint, so the safety profile is free. The description adds a behavioral trait not in the annotations: admin-level access scoping, plus disclosure that results include externally sourced data (SVG flag URLs, Azure speech accents), which explains the openWorldHint. It does not discuss pagination or result size, but for a small reference table that is a minor omission.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero preamble: the resource and its payload are front-loaded in the first sentence, and the escalation path (get_tool_reference) comes second. Every clause carries information an agent would use when selecting or calling the tool.

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 rich annotations, 100% schema coverage, and an output schema, the description only needs to establish purpose and scope, which it does. The admin marker, the enumeration of returned fields, and the reference pointer together are sufficient to call it correctly; only result ordering/size behavior is unaddressed.

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?

Both parameters (llm_model, conversation_id) are fully described in the schema at 100% coverage, so the baseline of 3 applies. The description adds nothing about them beyond pointing to get_tool_reference for "every argument in full," which is a pointer rather than added meaning.

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 pairs a specific verb and resource ("List supported platform (mojito) languages") and enumerates exactly what each entry contains: code, English/local names, SVG flag URL, per-interface enablement flags, and Azure speech accents. An agent can tell this is a lookup/reference tool rather than a filtered list like the sibling list_* tools. It does not explicitly name a sibling it differs from, which keeps it out of 5 territory.

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 "[Admin]" prefix signals a privileged scope, and "the `code` to pass as `mojito_language_code`" hints at the downstream use case (resolving language codes for other tools). There is no explicit when-not guidance or named alternative, so an agent must infer the trigger condition.

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.