Skip to main content
Glama

List covered countries

list_covered_countries
Read-onlyIdempotent

The countries we research, each with its ISO code and one sourced line, and the mapped countries with the institution that pays their old age pension.

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_covered_countries"
  }
}

Input Schema

NameRequiredDescriptionDefault
languageNoOptional. Language of our own sentences, default en: en, ar, da, de, es, fa, fr, hi, id, it, ja, ko, nb, nl, pl, pt, pt-BR, ro, ru, sv, th, tl, tr, zh, vi, uk, bg. Facts stay as stored.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / language / description
      Previous value: -"Optional. The language for our own sentences (notes, offer, labels, gap and register sentences), as an ISO 639-1 code: en, ar, da, de, es, fa, fr, hi, id, it, ja, ko, nb, nl, pl, pt, pt-BR, ro, ru, sv, th, tl, tr, zh, vi, uk, bg. Default en. pt is European Portuguese, pt-BR Brazilian, zh Simplified Chinese. Facts, numbers, dates, names and authority answers stay exactly as stored; a fact translation appears only from our committed table, marked translation: true. An unknown code is answered in English with a note."New value: +"Optional. Language of our own sentences, default en: en, ar, da, de, es, fa, fr, hi, id, it, ja, ko, nb, nl, pl, pt, pt-BR, ro, ru, sv, th, tl, tr, zh, vi, uk, bg. Facts stay as stored."
    • changedOutput schema / (root)
      Previous value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "countries": {
      -      "items": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "country": {
      -            "type": "string"
      -          },
      -          "iso2": {
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "localName": {
      -            "description": "The country name in the language served, from Unicode CLDR. Present only for a language other than English.",
      -            "type": "string"
      -          },
      -          "whatExists": {
      -            "additionalProperties": false,
      -            "description": "A stored fact with the source it came from and the date we read that source. Null when we hold no sourced line.",
      -            "properties": {
      -              "read": {
      -                "description": "The date we read the source, for example 7 October 2026.",
      -                "type": "string"
      -              },
      -              "source": {
      -                "description": "The publisher or document the fact comes from.",
      -                "type": "string"
      -              },
      -              "text": {
      -                "type": "string"
      -              },
      -              "translated": {
      -                "additionalProperties": false,
      -                "description": "A translation of the fact above, present only when our committed table holds one for that exact text. The original text stays in text.",
      -                "properties": {
      -                  "language": {
      -                    "enum": [
      -                      "en",
      -                      "ar",
      -                      "da",
      -                      "de",
      -                      "es",
      -                      "fa",
      -                      "fr",
      -                      "hi",
      -                      "id",
      -                      "it",
      -                      "ja",
      -                      "ko",
      -                      "nb",
      -                      "nl",
      -                      "pl",
      -                      "pt",
      -                      "pt-BR",
      -                      "ro",
      -                      "ru",
      -                      "sv",
      -                      "th",
      -                      "tl",
      -                      "tr",
      -                      "zh",
      -                      "vi",
      -                      "uk",
      -                      "bg"
      -                    ],
      -                    "type": "string"
      -                  },
      -                  "text": {
      -                    "type": "string"
      -                  },
      -                  "translation": {
      -                    "enum": [
      -                      true
      -                    ],
      -                    "type": "boolean"
      -                  }
      -                },
      -                "required": [
      -                  "language",
      -                  "text",
      -                  "translation"
      -                ],
      -                "type": "object"
      -              }
      -            },
      -            "required": [
      -              "text",
      -              "source",
      -              "read"
      -            ],
      -            "type": [
      -              "object",
      -              "null"
      -            ]
      -          }
      -        },
      -        "required": [
      -          "country",
      -          "iso2",
      -          "whatExists"
      -        ],
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "countryCount": {
      -      "type": "integer"
      -    },
      -    "language": {
      -      "additionalProperties": false,
      -      "description": "Present when language was sent: the language served, its own name, and labels for source, read date, translation and original in that language. Our sentences in this result are translations of our own wording, review recommended.",
      -      "properties": {
      -        "facts": {
      -          "description": "In the served language: facts, numbers and dates are served exactly as stored.",
      -          "type": "string"
      -        },
      -        "labels": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "original": {
      -              "type": "string"
      -            },
      -            "read": {
      -              "type": "string"
      -            },
      -            "source": {
      -              "type": "string"
      -            },
      -            "translation": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "source",
      -            "read",
      -            "translation",
      -            "original"
      -          ],
      -          "type": "object"
      -        },
      -        "name": {
      -          "type": "string"
      -        },
      -        "note": {
      -          "description": "Why the result is in English, when the language sent is not one we serve.",
      -          "type": [
      -            "string",
      -            "null"
      -          ]
      -        },
      -        "ourWording": {
      -          "description": "In the served language: these are translations of our own wording, review recommended.",
      -          "type": "string"
      -        },
      -        "requested": {
      -          "description": "The language as sent, when it reads as a language tag; empty otherwise.",
      -          "type": "string"
      -        },
      -        "served": {
      -          "enum": [
      -            "en",
      -            "ar",
      -            "da",
      -            "de",
      -            "es",
      -            "fa",
      -            "fr",
      -            "hi",
      -            "id",
      -            "it",
      -            "ja",
      -            "ko",
      -            "nb",
      -            "nl",
      -            "pl",
      -            "pt",
      -            "pt-BR",
      -            "ro",
      -            "ru",
      -            "sv",
      -            "th",
      -            "tl",
      -            "tr",
      -            "zh",
      -            "vi",
      -            "uk",
      -            "bg"
      -          ],
      -          "type": "string"
      -        },
      -        "supported": {
      -          "description": "False when the language sent is not one of ours; the result is then in English.",
      -          "type": "boolean"
      -        }
      -      },
      -      "required": [
      -        "requested",
      -        "served",
      -        "name",
      -        "supported",
      -        "note",
      -        "ourWording",
      -        "facts",
      -        "labels"
      -      ],
      -      "type": "object"
      -    },
      -    "mapped": {
      -      "description": "Countries we have mapped but not researched; not counted in countryCount. Mapped: we name the institution and the official route; we have not yet researched this country in depth.",
      -      "items": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "institution": {
      -            "description": "The English name of the institution that pays the old age pension.",
      -            "type": "string"
      -          },
      -          "iso2": {
      -            "type": "string"
      -          },
      -          "localName": {
      -            "description": "The country name in the language served, from Unicode CLDR. Present only for a language other than English.",
      -            "type": "string"
      -          },
      -          "name": {
      -            "type": "string"
      -          },
      -          "tier": {
      -            "enum": [
      -              "mapped"
      -            ],
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "iso2",
      -          "name",
      -          "tier",
      -          "institution"
      -        ],
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "sample_report": {
      -      "description": "Our sample report, to read what a report holds before ordering.",
      -      "format": "uri",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "countryCount",
      -    "countries",
      -    "mapped"
      -  ],
      -  "type": "object"
      -}New value: +null
  2. Changed1 schema field changed
    • addedOutput schema / properties / sample_report
      Added value: +{
      +  "description": "Our sample report, to read what a report holds before ordering.",
      +  "format": "uri",
      +  "type": "string"
      +}
  3. Changed3 schema fields changed
    • removedOutput schema / properties / offer
      Removed value: -{
      -  "description": "The report offer, with prices, delivery time and refund terms. Absent when the result names mapped countries and no researched one.",
      -  "type": "string"
      -}
    • removedOutput schema / properties / orderUrl
      Removed value: -{
      -  "description": "Order page for the countries in this result: tier=country&country=<ISO> for one covered country, tier=global for several. It never carries personal data. Absent when the result names mapped countries and no researched one.",
      -  "format": "uri",
      -  "type": "string"
      -}
    • changedOutput schema / required
      Previous value: -[
      -  "countryCount",
      -  "countries",
      -  "mapped",
      -  "offer",
      -  "orderUrl"
      -]New value: +[
      +  "countryCount",
      +  "countries",
      +  "mapped"
      +]
  4. Changed3 schema fields changed
    • changedInput schema / properties / language / description
      Previous value: -"Optional. The language for our own sentences (notes, offer, labels, gap and register sentences), as an ISO 639-1 code: en, ar, da, de, es, fa, fr, hi, id, it, ja, ko, nb, nl, pl, pt, pt-BR, ro, ru, sv, th, tl, tr, zh. Default en. pt is European Portuguese, pt-BR Brazilian, zh Simplified Chinese. Facts, numbers, dates, names and authority answers stay exactly as stored; a fact translation appears only from our committed table, marked translation: true. An unknown code is answered in English with a note."New value: +"Optional. The language for our own sentences (notes, offer, labels, gap and register sentences), as an ISO 639-1 code: en, ar, da, de, es, fa, fr, hi, id, it, ja, ko, nb, nl, pl, pt, pt-BR, ro, ru, sv, th, tl, tr, zh, vi, uk, bg. Default en. pt is European Portuguese, pt-BR Brazilian, zh Simplified Chinese. Facts, numbers, dates, names and authority answers stay exactly as stored; a fact translation appears only from our committed table, marked translation: true. An unknown code is answered in English with a note."
    • changedOutput schema / properties / countries / items / properties / whatExists / properties / translated / properties / language / enum
      Previous value: -[
      -  "en",
      -  "ar",
      -  "da",
      -  "de",
      -  "es",
      -  "fa",
      -  "fr",
      -  "hi",
      -  "id",
      -  "it",
      -  "ja",
      -  "ko",
      -  "nb",
      -  "nl",
      -  "pl",
      -  "pt",
      -  "pt-BR",
      -  "ro",
      -  "ru",
      -  "sv",
      -  "th",
      -  "tl",
      -  "tr",
      -  "zh"
      -]New value: +[
      +  "en",
      +  "ar",
      +  "da",
      +  "de",
      +  "es",
      +  "fa",
      +  "fr",
      +  "hi",
      +  "id",
      +  "it",
      +  "ja",
      +  "ko",
      +  "nb",
      +  "nl",
      +  "pl",
      +  "pt",
      +  "pt-BR",
      +  "ro",
      +  "ru",
      +  "sv",
      +  "th",
      +  "tl",
      +  "tr",
      +  "zh",
      +  "vi",
      +  "uk",
      +  "bg"
      +]
    • changedOutput schema / properties / language / properties / served / enum
      Previous value: -[
      -  "en",
      -  "ar",
      -  "da",
      -  "de",
      -  "es",
      -  "fa",
      -  "fr",
      -  "hi",
      -  "id",
      -  "it",
      -  "ja",
      -  "ko",
      -  "nb",
      -  "nl",
      -  "pl",
      -  "pt",
      -  "pt-BR",
      -  "ro",
      -  "ru",
      -  "sv",
      -  "th",
      -  "tl",
      -  "tr",
      -  "zh"
      -]New value: +[
      +  "en",
      +  "ar",
      +  "da",
      +  "de",
      +  "es",
      +  "fa",
      +  "fr",
      +  "hi",
      +  "id",
      +  "it",
      +  "ja",
      +  "ko",
      +  "nb",
      +  "nl",
      +  "pl",
      +  "pt",
      +  "pt-BR",
      +  "ro",
      +  "ru",
      +  "sv",
      +  "th",
      +  "tl",
      +  "tr",
      +  "zh",
      +  "vi",
      +  "uk",
      +  "bg"
      +]
  5. Changed5 schema fields changed
    • addedInput schema / properties / language
      Added value: +{
      +  "description": "Optional. The language for our own sentences (notes, offer, labels, gap and register sentences), as an ISO 639-1 code: en, ar, da, de, es, fa, fr, hi, id, it, ja, ko, nb, nl, pl, pt, pt-BR, ro, ru, sv, th, tl, tr, zh. Default en. pt is European Portuguese, pt-BR Brazilian, zh Simplified Chinese. Facts, numbers, dates, names and authority answers stay exactly as stored; a fact translation appears only from our committed table, marked translation: true. An unknown code is answered in English with a note.",
      +  "maxLength": 35,
      +  "minLength": 2,
      +  "type": "string"
      +}
    • addedOutput schema / properties / countries / items / properties / localName
      Added value: +{
      +  "description": "The country name in the language served, from Unicode CLDR. Present only for a language other than English.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / countries / items / properties / whatExists / properties / translated
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "A translation of the fact above, present only when our committed table holds one for that exact text. The original text stays in text.",
      +  "properties": {
      +    "language": {
      +      "enum": [
      +        "en",
      +        "ar",
      +        "da",
      +        "de",
      +        "es",
      +        "fa",
      +        "fr",
      +        "hi",
      +        "id",
      +        "it",
      +        "ja",
      +        "ko",
      +        "nb",
      +        "nl",
      +        "pl",
      +        "pt",
      +        "pt-BR",
      +        "ro",
      +        "ru",
      +        "sv",
      +        "th",
      +        "tl",
      +        "tr",
      +        "zh"
      +      ],
      +      "type": "string"
      +    },
      +    "text": {
      +      "type": "string"
      +    },
      +    "translation": {
      +      "enum": [
      +        true
      +      ],
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "language",
      +    "text",
      +    "translation"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / language
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Present when language was sent: the language served, its own name, and labels for source, read date, translation and original in that language. Our sentences in this result are translations of our own wording, review recommended.",
      +  "properties": {
      +    "facts": {
      +      "description": "In the served language: facts, numbers and dates are served exactly as stored.",
      +      "type": "string"
      +    },
      +    "labels": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "original": {
      +          "type": "string"
      +        },
      +        "read": {
      +          "type": "string"
      +        },
      +        "source": {
      +          "type": "string"
      +        },
      +        "translation": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "source",
      +        "read",
      +        "translation",
      +        "original"
      +      ],
      +      "type": "object"
      +    },
      +    "name": {
      +      "type": "string"
      +    },
      +    "note": {
      +      "description": "Why the result is in English, when the language sent is not one we serve.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "ourWording": {
      +      "description": "In the served language: these are translations of our own wording, review recommended.",
      +      "type": "string"
      +    },
      +    "requested": {
      +      "description": "The language as sent, when it reads as a language tag; empty otherwise.",
      +      "type": "string"
      +    },
      +    "served": {
      +      "enum": [
      +        "en",
      +        "ar",
      +        "da",
      +        "de",
      +        "es",
      +        "fa",
      +        "fr",
      +        "hi",
      +        "id",
      +        "it",
      +        "ja",
      +        "ko",
      +        "nb",
      +        "nl",
      +        "pl",
      +        "pt",
      +        "pt-BR",
      +        "ro",
      +        "ru",
      +        "sv",
      +        "th",
      +        "tl",
      +        "tr",
      +        "zh"
      +      ],
      +      "type": "string"
      +    },
      +    "supported": {
      +      "description": "False when the language sent is not one of ours; the result is then in English.",
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "requested",
      +    "served",
      +    "name",
      +    "supported",
      +    "note",
      +    "ourWording",
      +    "facts",
      +    "labels"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / mapped / items / properties / localName
      Added value: +{
      +  "description": "The country name in the language served, from Unicode CLDR. Present only for a language other than English.",
      +  "type": "string"
      +}
  6. Changed4 schema fields changed
    • addedOutput schema / properties / mapped
      Added value: +{
      +  "description": "Countries we have mapped but not researched; not counted in countryCount. Mapped: we name the institution and the official route; we have not yet researched this country in depth.",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "institution": {
      +        "description": "The English name of the institution that pays the old age pension.",
      +        "type": "string"
      +      },
      +      "iso2": {
      +        "type": "string"
      +      },
      +      "name": {
      +        "type": "string"
      +      },
      +      "tier": {
      +        "enum": [
      +          "mapped"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "iso2",
      +      "name",
      +      "tier",
      +      "institution"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / properties / offer / description
      Previous value: -"The report offer, with prices, delivery time and refund terms."New value: +"The report offer, with prices, delivery time and refund terms. Absent when the result names mapped countries and no researched one."
    • changedOutput schema / properties / orderUrl / description
      Previous value: -"Order page for the countries in this result: tier=country&country=<ISO> for one covered country, tier=global for several. It never carries personal data."New value: +"Order page for the countries in this result: tier=country&country=<ISO> for one covered country, tier=global for several. It never carries personal data. Absent when the result names mapped countries and no researched one."
    • changedOutput schema / required
      Previous value: -[
      -  "countryCount",
      -  "countries",
      -  "offer",
      -  "orderUrl"
      -]New value: +[
      +  "countryCount",
      +  "countries",
      +  "mapped",
      +  "offer",
      +  "orderUrl"
      +]
  7. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds value beyond that by describing the shape of the returned content (ISO codes, sourced lines, mapped countries and their pension institutions), which is meaningful since no output schema exists.

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?

One sentence, front-loaded with the primary content before the secondary 'mapped countries' clause. Slightly convoluted in the trailing phrase but nothing is wasted.

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 zero-required-parameter read-only listing with no output schema, the description conveys enough about the returned fields for an agent to decide relevance. It stops short of saying how large the list is or whether it is paginated, which is a minor gap.

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%, and the single optional 'language' parameter is fully documented in the schema including the enum-ish list of codes and the note that facts stay as stored. The description adds nothing about the parameter, so the baseline of 3 is correct.

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 names the resource (countries researched) and enumerates the payload fields: ISO code, one sourced line, and mapped countries with their pension-paying institution. An agent can tell this apart from country_pension_facts by content, though it never explicitly contrasts with that sibling.

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?

There is no statement of when to call this versus siblings like country_pension_facts or gpfr_info, and no prerequisites or ordering guidance. Usage must be inferred entirely from the resource name and content.

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.