Skip to main content
Glama

Criora: climate & disaster risk for any place

Country climate and disaster risk profile

get_country_profile
Read-onlyIdempotent

One country's climate and disaster risk, of 194: overall score 0 to 100 (higher is riskier), class and world rank, and its climate, nature, social, governance and adaptation scores. response_format=detailed adds the INFORM, ND-GAIN and World Bank indicators behind them.

Use for one country in depth, ESG or investment screening, "how risky is Paraguay". Named countries side by side: compare_countries; the most or least at risk: rank_countries.

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": {
      "country": "<country>"
    },
    "name": "get_country_profile"
  }
}

Input Schema

NameRequiredDescriptionDefault
countryYesISO 3166-1 alpha-3 code (e.g. BGD) or country name
response_formatNoconcise (default) answers the question; detailed adds every field the sources giveconcise
indicators_limitNoWith response_format=detailed, how many indicators to list per dimension

Output Schema

NameRequiredDescriptionDefault
metaYes
creditYes
sourcesNo
truncatedNo
indicatorsNo
country_urlYes
country_codeYes
nature_levelYes
nature_scoreYes
social_levelYes
social_scoreYes
climate_levelYes
climate_scoreYes
overall_levelYes
overall_scoreYes
sources_updatedNo
adaptation_levelYes
adaptation_scoreYes
governance_levelYes
governance_scoreYes
rank_by_overall_riskYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed114 schema fields changed
    • removedOutput schema / $defs / CountryMeta / additionalProperties
      Removed value: -true
    • removedOutput schema / $defs / CountryMeta / properties / continent / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / CountryMeta / properties / continent / default
      Removed value: -null
    • removedOutput schema / $defs / CountryMeta / properties / continent / description
      Removed value: -"Detailed only"
    • addedOutput schema / $defs / CountryMeta / properties / continent / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / CountryMeta / properties / income_group / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / CountryMeta / properties / income_group / default
      Removed value: -null
    • removedOutput schema / $defs / CountryMeta / properties / income_group / description
      Removed value: -"Detailed only"
    • addedOutput schema / $defs / CountryMeta / properties / income_group / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / CountryMeta / properties / iso2 / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / CountryMeta / properties / iso2 / default
      Removed value: -null
    • removedOutput schema / $defs / CountryMeta / properties / iso2 / description
      Removed value: -"Detailed only"
    • addedOutput schema / $defs / CountryMeta / properties / iso2 / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / CountryMeta / properties / iso3 / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / CountryMeta / properties / iso3 / default
      Removed value: -null
    • removedOutput schema / $defs / CountryMeta / properties / iso3 / description
      Removed value: -"Detailed only"
    • addedOutput schema / $defs / CountryMeta / properties / iso3 / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / CountryMeta / properties / name_long / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / CountryMeta / properties / name_long / default
      Removed value: -null
    • removedOutput schema / $defs / CountryMeta / properties / name_long / description
      Removed value: -"Detailed only"
    • addedOutput schema / $defs / CountryMeta / properties / name_long / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / CountryMeta / properties / region / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / $defs / CountryMeta / properties / region / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / CountryMeta / properties / subregion / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / CountryMeta / properties / subregion / default
      Removed value: -null
    • removedOutput schema / $defs / CountryMeta / properties / subregion / description
      Removed value: -"Detailed only"
    • addedOutput schema / $defs / CountryMeta / properties / subregion / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / Credit / additionalProperties
      Removed value: -true
    • removedOutput schema / $defs / Credit / properties / attribution / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / Credit / properties / attribution / default
      Removed value: -null
    • removedOutput schema / $defs / Credit / properties / attribution / description
      Removed value: -"The credit the licence asks for when it is retold"
    • addedOutput schema / $defs / Credit / properties / attribution / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / Credit / properties / licence / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / Credit / properties / licence / default
      Removed value: -null
    • addedOutput schema / $defs / Credit / properties / licence / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / Credit / properties / name / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / Credit / properties / name / default
      Removed value: -null
    • removedOutput schema / $defs / Credit / properties / name / description
      Removed value: -"The feed's name as it is cited"
    • addedOutput schema / $defs / Credit / properties / name / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / DimensionIndicators / properties / indicators / description
      Removed value: -"The furthest from the world median first"
    • removedOutput schema / $defs / DimensionIndicators / properties / total / description
      Removed value: -"How many indicators the dimension has"
    • removedOutput schema / $defs / Indicator / properties / benchmark / description
      Removed value: -"The medians of the world and of the country's own region, subregion and income group"
    • removedOutput schema / $defs / Indicator / properties / data_year / anyOf
      Removed value: -[
      -  {
      -    "type": "integer"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / $defs / Indicator / properties / data_year / type
      Added value: +[
      +  "integer",
      +  "null"
      +]
    • removedOutput schema / $defs / Indicator / properties / raw_unit / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / $defs / Indicator / properties / raw_unit / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / Indicator / properties / raw_value / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / $defs / Indicator / properties / raw_value / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / $defs / Indicator / properties / score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / $defs / Indicator / properties / score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / $defs / Indicator / properties / source / description
      Removed value: -"A source of sources"
    • removedOutput schema / $defs / IndicatorSource / additionalProperties
      Removed value: -true
    • removedOutput schema / $defs / IndicatorSource / properties / country_url / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / IndicatorSource / properties / country_url / default
      Removed value: -null
    • addedOutput schema / $defs / IndicatorSource / properties / country_url / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / IndicatorSource / properties / homepage / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / IndicatorSource / properties / homepage / default
      Removed value: -null
    • addedOutput schema / $defs / IndicatorSource / properties / homepage / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / $defs / Median / properties / count / description
      Removed value: -"How many countries the median is of"
    • removedOutput schema / $defs / Median / properties / raw / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / $defs / Median / properties / raw / default
      Removed value: -null
    • addedOutput schema / $defs / Median / properties / raw / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / $defs / Truncated / description
      Removed value: -"Set when an answer was held under its size: the tail of its main list left out."
    • removedOutput schema / $defs / Truncated / properties / field / description
      Removed value: -"The answer's list that was cut"
    • removedOutput schema / $defs / Truncated / properties / left_out / description
      Removed value: -"How many of its entries, the least important, were left out"
    • removedOutput schema / $defs / Truncated / properties / left_out_names / default
      Removed value: -null
    • removedOutput schema / $defs / Truncated / properties / left_out_names / description
      Removed value: -"Each entry left out, where the list is not ordered by importance"
    • removedOutput schema / $defs / Truncated / properties / why / description
      Removed value: -"The limit, and how to ask for the rest"
    • removedOutput schema / additionalProperties
      Removed value: -true
    • removedOutput schema / properties / adaptation_level / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / adaptation_level / description
      Removed value: -"The score's risk class, very_low to critical"
    • addedOutput schema / properties / adaptation_level / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / adaptation_score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / adaptation_score / description
      Removed value: -"0 to 100; higher means more risk; null where there is no score"
    • addedOutput schema / properties / adaptation_score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / climate_level / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / climate_level / description
      Removed value: -"The score's risk class, very_low to critical"
    • addedOutput schema / properties / climate_level / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / climate_score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / climate_score / description
      Removed value: -"0 to 100; higher means more risk; null where there is no score"
    • addedOutput schema / properties / climate_score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / credit / description
      Removed value: -"How a retelling credits the answer: Source: Criora with a link to the page the answer is about, then each originator whose data it quotes in the words its licence asks for. Concise, each credit once; detailed, by source with its name and licence, criora first"
    • removedOutput schema / properties / governance_level / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / governance_level / description
      Removed value: -"The score's risk class, very_low to critical"
    • addedOutput schema / properties / governance_level / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / governance_score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / governance_score / description
      Removed value: -"0 to 100; higher means more risk; null where there is no score"
    • addedOutput schema / properties / governance_score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / indicators / default
      Removed value: -null
    • removedOutput schema / properties / indicators / description
      Removed value: -"Detailed only"
    • removedOutput schema / properties / nature_level / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / nature_level / description
      Removed value: -"The score's risk class, very_low to critical"
    • addedOutput schema / properties / nature_level / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / nature_score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / nature_score / description
      Removed value: -"0 to 100; higher means more risk; null where there is no score"
    • addedOutput schema / properties / nature_score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / overall_level / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / overall_level / description
      Removed value: -"The score's risk class, very_low to critical"
    • addedOutput schema / properties / overall_level / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / overall_score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / overall_score / description
      Removed value: -"0 to 100; higher means more risk; null where there is no score"
    • addedOutput schema / properties / overall_score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / social_level / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / social_level / description
      Removed value: -"The score's risk class, very_low to critical"
    • addedOutput schema / properties / social_level / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / social_score / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / social_score / description
      Removed value: -"0 to 100; higher means more risk; null where there is no score"
    • addedOutput schema / properties / social_score / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedOutput schema / properties / sources / default
      Removed value: -null
    • removedOutput schema / properties / sources / description
      Removed value: -"Detailed only"
    • removedOutput schema / properties / sources_updated / default
      Removed value: -null
    • removedOutput schema / properties / sources_updated / description
      Removed value: -"When each source's indicators were last updated. Detailed only"
    • removedOutput schema / properties / truncated / default
      Removed value: -null
    • removedOutput schema / properties / truncated / description
      Removed value: -"Absent unless the answer was cut to fit"
  2. Changed89 schema fields changed
    • changedInput schema / properties / country / description
      Previous value: -"ISO 3166-1 alpha-3 code (e.g. BGD) or English country name"New value: +"ISO 3166-1 alpha-3 code (e.g. BGD) or country name"
    • removedInput schema / properties / country / title
      Removed value: -"Country"
    • removedInput schema / properties / include_indicators
      Removed value: -{
      -  "default": false,
      -  "description": "Add the underlying indicators, the furthest from the world median first, each with its world and regional medians; the scores alone when false",
      -  "title": "Include Indicators",
      -  "type": "boolean"
      -}
    • changedInput schema / properties / indicators_limit / description
      Previous value: -"With include_indicators, how many indicators to list per dimension"New value: +"With response_format=detailed, how many indicators to list per dimension"
    • removedInput schema / properties / indicators_limit / title
      Removed value: -"Indicators Limit"
    • addedInput schema / properties / response_format
      Added value: +{
      +  "default": "concise",
      +  "description": "concise (default) answers the question; detailed adds every field the sources give",
      +  "enum": [
      +    "concise",
      +    "detailed"
      +  ],
      +  "type": "string"
      +}
    • removedInput schema / title
      Removed value: -"get_country_profileArguments"
    • addedOutput schema / $defs / CountryMeta / properties / continent / default
      Added value: +null
    • addedOutput schema / $defs / CountryMeta / properties / continent / description
      Added value: +"Detailed only"
    • removedOutput schema / $defs / CountryMeta / properties / continent / title
      Removed value: -"Continent"
    • addedOutput schema / $defs / CountryMeta / properties / income_group / default
      Added value: +null
    • addedOutput schema / $defs / CountryMeta / properties / income_group / description
      Added value: +"Detailed only"
    • removedOutput schema / $defs / CountryMeta / properties / income_group / title
      Removed value: -"Income Group"
    • addedOutput schema / $defs / CountryMeta / properties / iso2 / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / $defs / CountryMeta / properties / iso2 / default
      Added value: +null
    • addedOutput schema / $defs / CountryMeta / properties / iso2 / description
      Added value: +"Detailed only"
    • removedOutput schema / $defs / CountryMeta / properties / iso2 / title
      Removed value: -"Iso2"
    • removedOutput schema / $defs / CountryMeta / properties / iso2 / type
      Removed value: -"string"
    • addedOutput schema / $defs / CountryMeta / properties / iso3 / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / $defs / CountryMeta / properties / iso3 / default
      Added value: +null
    • addedOutput schema / $defs / CountryMeta / properties / iso3 / description
      Added value: +"Detailed only"
    • removedOutput schema / $defs / CountryMeta / properties / iso3 / title
      Removed value: -"Iso3"
    • removedOutput schema / $defs / CountryMeta / properties / iso3 / type
      Removed value: -"string"
    • removedOutput schema / $defs / CountryMeta / properties / name / title
      Removed value: -"Name"
    • addedOutput schema / $defs / CountryMeta / properties / name_long / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / $defs / CountryMeta / properties / name_long / default
      Added value: +null
    • addedOutput schema / $defs / CountryMeta / properties / name_long / description
      Added value: +"Detailed only"
    • removedOutput schema / $defs / CountryMeta / properties / name_long / title
      Removed value: -"Name Long"
    • removedOutput schema / $defs / CountryMeta / properties / name_long / type
      Removed value: -"string"
    • removedOutput schema / $defs / CountryMeta / properties / region / title
      Removed value: -"Region"
    • addedOutput schema / $defs / CountryMeta / properties / subregion / default
      Added value: +null
    • addedOutput schema / $defs / CountryMeta / properties / subregion / description
      Added value: +"Detailed only"
    • removedOutput schema / $defs / CountryMeta / properties / subregion / title
      Removed value: -"Subregion"
    • changedOutput schema / $defs / CountryMeta / required
      Previous value: -[
      -  "name",
      -  "name_long",
      -  "iso2",
      -  "iso3",
      -  "region",
      -  "subregion",
      -  "continent",
      -  "income_group"
      -]New value: +[
      +  "name",
      +  "region"
      +]
    • removedOutput schema / $defs / CountryMeta / title
      Removed value: -"CountryMeta"
    • addedOutput schema / $defs / Credit
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "attribution": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null,
      +      "description": "The credit the licence asks for when it is retold"
      +    },
      +    "licence": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "name": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null,
      +      "description": "The feed's name as it is cited"
      +    }
      +  },
      +  "type": "object"
      +}
    • removedOutput schema / $defs / DimensionIndicators / properties / indicators / title
      Removed value: -"Indicators"
    • removedOutput schema / $defs / DimensionIndicators / properties / total / title
      Removed value: -"Total"
    • removedOutput schema / $defs / DimensionIndicators / title
      Removed value: -"DimensionIndicators"
    • removedOutput schema / $defs / Indicator / properties / benchmark / title
      Removed value: -"Benchmark"
    • removedOutput schema / $defs / Indicator / properties / data_year / title
      Removed value: -"Data Year"
    • removedOutput schema / $defs / Indicator / properties / indicator_name / title
      Removed value: -"Indicator Name"
    • removedOutput schema / $defs / Indicator / properties / raw_unit / title
      Removed value: -"Raw Unit"
    • removedOutput schema / $defs / Indicator / properties / raw_value / title
      Removed value: -"Raw Value"
    • removedOutput schema / $defs / Indicator / properties / score / title
      Removed value: -"Score"
    • removedOutput schema / $defs / Indicator / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / Indicator / title
      Removed value: -"Indicator"
    • removedOutput schema / $defs / IndicatorSource / properties / country_url / title
      Removed value: -"Country Url"
    • removedOutput schema / $defs / IndicatorSource / properties / homepage / title
      Removed value: -"Homepage"
    • removedOutput schema / $defs / IndicatorSource / properties / label / title
      Removed value: -"Label"
    • removedOutput schema / $defs / IndicatorSource / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / IndicatorSource / title
      Removed value: -"IndicatorSource"
    • removedOutput schema / $defs / Median / properties / count / title
      Removed value: -"Count"
    • removedOutput schema / $defs / Median / properties / raw / title
      Removed value: -"Raw"
    • removedOutput schema / $defs / Median / properties / score / title
      Removed value: -"Score"
    • removedOutput schema / $defs / Median / title
      Removed value: -"Median"
    • removedOutput schema / $defs / Rank / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / Rank / properties / of / title
      Removed value: -"Of"
    • removedOutput schema / $defs / Rank / properties / rank / title
      Removed value: -"Rank"
    • removedOutput schema / $defs / Rank / title
      Removed value: -"Rank"
    • addedOutput schema / $defs / Truncated
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Set when an answer was held under its size: the tail of its main list left out.",
      +  "properties": {
      +    "field": {
      +      "description": "The answer's list that was cut",
      +      "type": "string"
      +    },
      +    "left_out": {
      +      "description": "How many of its entries, the least important, were left out",
      +      "type": "integer"
      +    },
      +    "left_out_names": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null,
      +      "description": "Each entry left out, where the list is not ordered by importance"
      +    },
      +    "why": {
      +      "description": "The limit, and how to ask for the rest",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "field",
      +    "left_out",
      +    "why"
      +  ],
      +  "type": "object"
      +}
    • removedOutput schema / properties / adaptation_level / title
      Removed value: -"Adaptation Level"
    • removedOutput schema / properties / adaptation_score / title
      Removed value: -"Adaptation Score"
    • removedOutput schema / properties / climate_level / title
      Removed value: -"Climate Level"
    • removedOutput schema / properties / climate_score / title
      Removed value: -"Climate Score"
    • removedOutput schema / properties / country_code / title
      Removed value: -"Country Code"
    • removedOutput schema / properties / country_url / title
      Removed value: -"Country Url"
    • addedOutput schema / properties / credit
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "additionalProperties": {
      +        "$ref": "#/$defs/Credit"
      +      },
      +      "type": "object"
      +    }
      +  ],
      +  "description": "How a retelling credits the answer: Source: Criora with a link to the page the answer is about, then each originator whose data it quotes in the words its licence asks for. Concise, each credit once; detailed, by source with its name and licence, criora first"
      +}
    • removedOutput schema / properties / governance_level / title
      Removed value: -"Governance Level"
    • removedOutput schema / properties / governance_score / title
      Removed value: -"Governance Score"
    • changedOutput schema / properties / indicators / description
      Previous value: -"With include_indicators"New value: +"Detailed only"
    • removedOutput schema / properties / indicators / title
      Removed value: -"Indicators"
    • removedOutput schema / properties / nature_level / title
      Removed value: -"Nature Level"
    • removedOutput schema / properties / nature_score / title
      Removed value: -"Nature Score"
    • removedOutput schema / properties / overall_level / title
      Removed value: -"Overall Level"
    • removedOutput schema / properties / overall_score / title
      Removed value: -"Overall Score"
    • removedOutput schema / properties / social_level / title
      Removed value: -"Social Level"
    • removedOutput schema / properties / social_score / title
      Removed value: -"Social Score"
    • changedOutput schema / properties / sources / description
      Previous value: -"With include_indicators"New value: +"Detailed only"
    • removedOutput schema / properties / sources / title
      Removed value: -"Sources"
    • removedOutput schema / properties / sources_updated / additionalProperties
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / sources_updated / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": {
      +      "type": "string"
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / sources_updated / default
      Added value: +null
    • addedOutput schema / properties / sources_updated / description
      Added value: +"When each source's indicators were last updated. Detailed only"
    • removedOutput schema / properties / sources_updated / title
      Removed value: -"Sources Updated"
    • removedOutput schema / properties / sources_updated / type
      Removed value: -"object"
    • addedOutput schema / properties / truncated
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/Truncated"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Absent unless the answer was cut to fit"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "country_code",
      -  "overall_score",
      -  "overall_level",
      -  "climate_score",
      -  "climate_level",
      -  "nature_score",
      -  "nature_level",
      -  "social_score",
      -  "social_level",
      -  "governance_score",
      -  "governance_level",
      -  "adaptation_score",
      -  "adaptation_level",
      -  "sources_updated",
      -  "meta",
      -  "rank_by_overall_risk",
      -  "country_url"
      -]New value: +[
      +  "country_code",
      +  "overall_score",
      +  "overall_level",
      +  "climate_score",
      +  "climate_level",
      +  "nature_score",
      +  "nature_level",
      +  "social_score",
      +  "social_level",
      +  "governance_score",
      +  "governance_level",
      +  "adaptation_score",
      +  "adaptation_level",
      +  "meta",
      +  "rank_by_overall_risk",
      +  "country_url",
      +  "credit"
      +]
    • removedOutput schema / title
      Removed value: -"CountryProfile"
  3. Changed6 schema fields changed
    • changedInput schema / properties / include_indicators / description
      Previous value: -"Add about 160 underlying indicators, each with its world and regional benchmark; the scores alone when false"New value: +"Add the underlying indicators, the furthest from the world median first, each with its world and regional medians; the scores alone when false"
    • addedInput schema / properties / indicators_limit
      Added value: +{
      +  "default": 8,
      +  "description": "With include_indicators, how many indicators to list per dimension",
      +  "maximum": 60,
      +  "minimum": 1,
      +  "title": "Indicators Limit",
      +  "type": "integer"
      +}
    • addedOutput schema / $defs
      Added value: +{
      +  "CountryMeta": {
      +    "additionalProperties": true,
      +    "properties": {
      +      "continent": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Continent"
      +      },
      +      "income_group": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Income Group"
      +      },
      +      "iso2": {
      +        "title": "Iso2",
      +        "type": "string"
      +      },
      +      "iso3": {
      +        "title": "Iso3",
      +        "type": "string"
      +      },
      +      "name": {
      +        "title": "Name",
      +        "type": "string"
      +      },
      +      "name_long": {
      +        "title": "Name Long",
      +        "type": "string"
      +      },
      +      "region": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Region"
      +      },
      +      "subregion": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Subregion"
      +      }
      +    },
      +    "required": [
      +      "name",
      +      "name_long",
      +      "iso2",
      +      "iso3",
      +      "region",
      +      "subregion",
      +      "continent",
      +      "income_group"
      +    ],
      +    "title": "CountryMeta",
      +    "type": "object"
      +  },
      +  "DimensionIndicators": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "indicators": {
      +        "description": "The furthest from the world median first",
      +        "items": {
      +          "$ref": "#/$defs/Indicator"
      +        },
      +        "title": "Indicators",
      +        "type": "array"
      +      },
      +      "total": {
      +        "description": "How many indicators the dimension has",
      +        "title": "Total",
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "total",
      +      "indicators"
      +    ],
      +    "title": "DimensionIndicators",
      +    "type": "object"
      +  },
      +  "Indicator": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "benchmark": {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/Median"
      +        },
      +        "description": "The medians of the world and of the country's own region, subregion and income group",
      +        "title": "Benchmark",
      +        "type": "object"
      +      },
      +      "data_year": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Data Year"
      +      },
      +      "indicator_name": {
      +        "title": "Indicator Name",
      +        "type": "string"
      +      },
      +      "raw_unit": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Raw Unit"
      +      },
      +      "raw_value": {
      +        "anyOf": [
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Raw Value"
      +      },
      +      "score": {
      +        "anyOf": [
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "title": "Score"
      +      },
      +      "source": {
      +        "description": "A source of sources",
      +        "title": "Source",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "indicator_name",
      +      "score",
      +      "raw_value",
      +      "raw_unit",
      +      "data_year",
      +      "source",
      +      "benchmark"
      +    ],
      +    "title": "Indicator",
      +    "type": "object"
      +  },
      +  "IndicatorSource": {
      +    "additionalProperties": true,
      +    "properties": {
      +      "country_url": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null,
      +        "title": "Country Url"
      +      },
      +      "homepage": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null,
      +        "title": "Homepage"
      +      },
      +      "label": {
      +        "title": "Label",
      +        "type": "string"
      +      },
      +      "source": {
      +        "title": "Source",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "source",
      +      "label"
      +    ],
      +    "title": "IndicatorSource",
      +    "type": "object"
      +  },
      +  "Median": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "count": {
      +        "description": "How many countries the median is of",
      +        "title": "Count",
      +        "type": "integer"
      +      },
      +      "raw": {
      +        "anyOf": [
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null,
      +        "title": "Raw"
      +      },
      +      "score": {
      +        "title": "Score",
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "score",
      +      "count"
      +    ],
      +    "title": "Median",
      +    "type": "object"
      +  },
      +  "Rank": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "note": {
      +        "title": "Note",
      +        "type": "string"
      +      },
      +      "of": {
      +        "title": "Of",
      +        "type": "integer"
      +      },
      +      "rank": {
      +        "title": "Rank",
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "rank",
      +      "of",
      +      "note"
      +    ],
      +    "title": "Rank",
      +    "type": "object"
      +  }
      +}
    • addedOutput schema / properties
      Added value: +{
      +  "adaptation_level": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "The score's risk class, very_low to critical",
      +    "title": "Adaptation Level"
      +  },
      +  "adaptation_score": {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "0 to 100; higher means more risk; null where there is no score",
      +    "title": "Adaptation Score"
      +  },
      +  "climate_level": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "The score's risk class, very_low to critical",
      +    "title": "Climate Level"
      +  },
      +  "climate_score": {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "0 to 100; higher means more risk; null where there is no score",
      +    "title": "Climate Score"
      +  },
      +  "country_code": {
      +    "title": "Country Code",
      +    "type": "string"
      +  },
      +  "country_url": {
      +    "title": "Country Url",
      +    "type": "string"
      +  },
      +  "governance_level": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "The score's risk class, very_low to critical",
      +    "title": "Governance Level"
      +  },
      +  "governance_score": {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "0 to 100; higher means more risk; null where there is no score",
      +    "title": "Governance Score"
      +  },
      +  "indicators": {
      +    "anyOf": [
      +      {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/DimensionIndicators"
      +        },
      +        "type": "object"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "default": null,
      +    "description": "With include_indicators",
      +    "title": "Indicators"
      +  },
      +  "meta": {
      +    "$ref": "#/$defs/CountryMeta"
      +  },
      +  "nature_level": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "The score's risk class, very_low to critical",
      +    "title": "Nature Level"
      +  },
      +  "nature_score": {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "0 to 100; higher means more risk; null where there is no score",
      +    "title": "Nature Score"
      +  },
      +  "overall_level": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "The score's risk class, very_low to critical",
      +    "title": "Overall Level"
      +  },
      +  "overall_score": {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "0 to 100; higher means more risk; null where there is no score",
      +    "title": "Overall Score"
      +  },
      +  "rank_by_overall_risk": {
      +    "$ref": "#/$defs/Rank"
      +  },
      +  "social_level": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "The score's risk class, very_low to critical",
      +    "title": "Social Level"
      +  },
      +  "social_score": {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "description": "0 to 100; higher means more risk; null where there is no score",
      +    "title": "Social Score"
      +  },
      +  "sources": {
      +    "anyOf": [
      +      {
      +        "items": {
      +          "$ref": "#/$defs/IndicatorSource"
      +        },
      +        "type": "array"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ],
      +    "default": null,
      +    "description": "With include_indicators",
      +    "title": "Sources"
      +  },
      +  "sources_updated": {
      +    "additionalProperties": {
      +      "type": "string"
      +    },
      +    "title": "Sources Updated",
      +    "type": "object"
      +  }
      +}
    • addedOutput schema / required
      Added value: +[
      +  "country_code",
      +  "overall_score",
      +  "overall_level",
      +  "climate_score",
      +  "climate_level",
      +  "nature_score",
      +  "nature_level",
      +  "social_score",
      +  "social_level",
      +  "governance_score",
      +  "governance_level",
      +  "adaptation_score",
      +  "adaptation_level",
      +  "sources_updated",
      +  "meta",
      +  "rank_by_overall_risk",
      +  "country_url"
      +]
    • changedOutput schema / title
      Previous value: -"get_country_profileDictOutput"New value: +"CountryProfile"
  4. Changed1 schema field changed
    • changedInput schema / properties / include_indicators / description
      Previous value: -"Add every underlying indicator with its world and regional benchmark"New value: +"Add about 160 underlying indicators, each with its world and regional benchmark; the scores alone when false"
  5. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds useful behavior beyond that: the score scale and direction (0-100, higher is riskier), the universe size (194), and that response_format=detailed surfaces the INFORM, ND-GAIN and World Bank indicators behind the scores. It does not discuss limits on the detailed payload beyond the indicators_limit parameter, which is already in the schema.

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-loaded with the resource and scope, then output mode, then routing guidance; every sentence carries information and there is no filler. It is slightly dense in the opening clause ('of 194', 'behind them'), but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter read tool with an output schema, full annotation coverage and fully described parameters, the description supplies everything an agent needs: what is returned, the score scale, what detailed mode adds, and which sibling to use instead. No gaps remain that the structured fields do not already close.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description earns extra credit by naming the actual indicator sources (INFORM, ND-GAIN, World Bank) that detailed mode exposes, which the schema does not say. indicators_limit is left to the schema, which documents it adequately.

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 resource (one country's climate and disaster risk profile) with concrete scope: 194 countries, 0-100 score, class, world rank, and the five dimension scores. It explicitly contrasts with compare_countries (side by side) and rank_countries (most/least at risk), so an agent can distinguish it from siblings without opening any schema.

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

Usage Guidelines5/5

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

Gives concrete when-to-use triggers (one country in depth, ESG or investment screening) plus a natural-language example query, and names the two alternative tools with the conditions that select them. Both the positive case and the routing-away cases are covered.

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.