Skip to main content
Glama

Get languages

get_languages
Read-onlyIdempotent

Return languages detected for a product version on a platform (from languages.json, with path-prefix fallback).

Input Schema

NameRequiredDescriptionDefault
productYesProduct key, for example finance-ozon-ru
versionYesExact capture version returned by list_versions. Pin the same version across related calls; do not use latest as an alias.
platformYesPlatform type ID from list_platforms.options.platforms[].id (backend CatalogPlatform.view). Use backend IDs verbatim; desktop/mobile are current examples. Environment is selected separately.
environmentNoEnvironment ID from the selected backend platform type in list_platforms.options.platforms[].environments[].id (backend implementation). Omit only when the version has one captured environment. Use captured pairs from list_platforms/list_versions for actual availability.

Output Schema

NameRequiredDescriptionDefault
resultYesDetected locales and evidence sources

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / version / description
      Added value: +"Exact capture version returned by list_versions. Pin the same version across related calls; do not use latest as an alias."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": false,
      +  "description": "Structured result. Existing text or image content remains available in content.",
      +  "properties": {
      +    "result": {
      +      "additionalProperties": true,
      +      "description": "Detected locales and evidence sources",
      +      "properties": {
      +        "environment": {
      +          "description": "environment",
      +          "type": "string"
      +        },
      +        "languages": {
      +          "description": "Result entries",
      +          "items": {
      +            "additionalProperties": true,
      +            "description": "Detected language",
      +            "properties": {
      +              "code": {
      +                "description": "Text value",
      +                "type": "string"
      +              },
      +              "sources": {
      +                "description": "Result entries",
      +                "items": {
      +                  "description": "Text value",
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "urls": {
      +                "description": "Result entries",
      +                "items": {
      +                  "description": "Text value",
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "code",
      +              "sources",
      +              "urls"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "platform": {
      +          "description": "platform",
      +          "type": "string"
      +        },
      +        "primary": {
      +          "anyOf": [
      +            {
      +              "description": "Text value",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "product": {
      +          "description": "product",
      +          "type": "string"
      +        },
      +        "version": {
      +          "description": "version",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "product",
      +        "platform",
      +        "environment",
      +        "version",
      +        "primary",
      +        "languages"
      +      ],
      +      "type": "object"
      +    }
      +  },
      +  "required": [
      +    "result"
      +  ],
      +  "type": "object"
      +}
  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 the safety profile (readOnlyHint, idempotentHint, destructiveHint=false), so the bar is lower. The description still adds meaningful context beyond them: the data is read from languages.json and there is a path-prefix fallback, which tells the agent results may be derived rather than absolute. No fallback failure semantics are described, hence not a 5.

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?

One sentence, front-loaded with the outcome ('Return languages detected'), with the provenance detail tucked into a compact parenthetical. No filler and nothing redundant with the schema.

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?

For a simple read tool with full annotation coverage, a complete schema, and an output schema, the description need not explain return values or pagination. It covers purpose and data origin, though a brief note on what an empty result versus fallback-derived result means would make it fully self-sufficient.

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 schema already documents product, version, platform, and environment in detail, including cross-references to list_versions and list_platforms. The description adds no extra meaning about parameter format or constraints, making the baseline 3 appropriate.

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?

States a specific verb and resource plus its scoping dimensions: languages detected for a product version on a platform. An agent knows exactly what comes back. It does not differentiate itself from siblings (nor does it need to, since no other language tool exists), so it falls short of a 5.

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

Usage Guidelines2/5

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

No when-to-use, when-not-to-use, or alternative is named. The statement of required inputs implies context but gives no criterion for choosing this tool over, say, get_version_metadata or get_technology_stack, which plausibly overlap in locale/stack discovery.

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