Skip to main content
Glama

Get Country

get_country
Read-onlyIdempotent

Get country information by name or ISO code (e.g., 'US', 'FR'). Returns capital, population, currency, languages, and neighboring countries. Use for regional context or facts.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
code_or_nameYesCountry name or ISO 3166-1 alpha-2/alpha-3 code

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesCommon country name
codesYesISO country codes
regionYesGeographic region
capitalYesCapital city or 'N/A'
area_km2YesLand area in square kilometers
languagesYesList of official languages
subregionYesGeographic subregion
timezonesYesList of timezones used in country
currenciesYesList of currencies with symbols
populationYesTotal population
official_nameYesOfficial country name

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "code_or_name": "US"
      +  },
      +  {
      +    "code_or_name": "France"
      +  }
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "area_km2": {
      +      "description": "Land area in square kilometers",
      +      "type": "number"
      +    },
      +    "capital": {
      +      "description": "Capital city or 'N/A'",
      +      "type": "string"
      +    },
      +    "codes": {
      +      "description": "ISO country codes",
      +      "properties": {
      +        "alpha2": {
      +          "description": "ISO 3166-1 alpha-2 code",
      +          "type": "string"
      +        },
      +        "alpha3": {
      +          "description": "ISO 3166-1 alpha-3 code",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "alpha2",
      +        "alpha3"
      +      ],
      +      "type": "object"
      +    },
      +    "currencies": {
      +      "description": "List of currencies with symbols",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "languages": {
      +      "description": "List of official languages",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "name": {
      +      "description": "Common country name",
      +      "type": "string"
      +    },
      +    "official_name": {
      +      "description": "Official country name",
      +      "type": "string"
      +    },
      +    "population": {
      +      "description": "Total population",
      +      "type": "number"
      +    },
      +    "region": {
      +      "description": "Geographic region",
      +      "type": "string"
      +    },
      +    "subregion": {
      +      "description": "Geographic subregion",
      +      "type": "string"
      +    },
      +    "timezones": {
      +      "description": "List of timezones used in country",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "name",
      +    "official_name",
      +    "codes",
      +    "capital",
      +    "population",
      +    "area_km2",
      +    "region",
      +    "subregion",
      +    "languages",
      +    "currencies",
      +    "timezones"
      +  ],
      +  "type": "object"
      +}
  2. Changed2 schema fields changed
    • removedInput schema / examples
      Removed value: -[
      -  {
      -    "country_code": "US"
      -  },
      -  {
      -    "country_code": "GBR"
      -  }
      -]
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "admin_region": {
      -      "description": "Administrative region name",
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "capital": {
      -      "description": "Capital city name",
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "id": {
      -      "description": "World Bank country ID",
      -      "type": "string"
      -    },
      -    "income_level": {
      -      "description": "Income level classification",
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "iso2": {
      -      "description": "ISO 3166-1 alpha-2 country code",
      -      "type": "string"
      -    },
      -    "latitude": {
      -      "description": "Capital city latitude coordinate",
      -      "type": [
      -        "number",
      -        "null"
      -      ]
      -    },
      -    "lending_type": {
      -      "description": "World Bank lending type",
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "longitude": {
      -      "description": "Capital city longitude coordinate",
      -      "type": [
      -        "number",
      -        "null"
      -      ]
      -    },
      -    "name": {
      -      "description": "Full country name",
      -      "type": "string"
      -    },
      -    "region": {
      -      "description": "World region name",
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    }
      -  },
      -  "required": [
      -    "id",
      -    "iso2",
      -    "name",
      -    "region",
      -    "admin_region",
      -    "income_level",
      -    "lending_type",
      -    "capital",
      -    "longitude",
      -    "latitude"
      -  ],
      -  "type": "object"
      -}New value: +null
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "admin_region": {
      +      "description": "Administrative region name",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "capital": {
      +      "description": "Capital city name",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "id": {
      +      "description": "World Bank country ID",
      +      "type": "string"
      +    },
      +    "income_level": {
      +      "description": "Income level classification",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "iso2": {
      +      "description": "ISO 3166-1 alpha-2 country code",
      +      "type": "string"
      +    },
      +    "latitude": {
      +      "description": "Capital city latitude coordinate",
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "lending_type": {
      +      "description": "World Bank lending type",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "longitude": {
      +      "description": "Capital city longitude coordinate",
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "name": {
      +      "description": "Full country name",
      +      "type": "string"
      +    },
      +    "region": {
      +      "description": "World region name",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "id",
      +    "iso2",
      +    "name",
      +    "region",
      +    "admin_region",
      +    "income_level",
      +    "lending_type",
      +    "capital",
      +    "longitude",
      +    "latitude"
      +  ],
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "country_code": "US"
      +  },
      +  {
      +    "country_code": "GBR"
      +  }
      +]
  5. First observed

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare read-only and non-destructive; the description adds the list of returned fields and input flexibility, but does not add deeper behavioral details like error handling or rate limits.

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, front-loaded with the action, then examples, return values, and usage—every sentence earns its place.

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 simple one-parameter read-only lookup with an output schema, the description covers purpose, input, output, and usage context sufficiently.

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 is 100% complete for the single parameter, and the description's examples ('US', 'France') mirror the schema examples, so it adds no additional semantic value.

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?

The description clearly states the tool retrieves country information by name or ISO code, listing specific return fields. This distinguishes it from sibling tools like geocode or get_timezone.

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

Usage Guidelines4/5

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

It provides a clear usage context ('Use for regional context or facts') but does not explicitly mention when not to use it or alternative tools.

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.