Skip to main content
Glama

Which country fits me — ranked by your own weights

find_country_fit
Read-onlyIdempotent

Ranks countries by a fit score that blends the livability composite (internet speed, safety, healthcare access, air quality, English — measured, each with its own source year) with how far a monthly budget in USD goes against modelled essentials, using 0–10 weights per dimension (cost, internet, safety, healthcare, air, english; default 5 each). Region, budget and visa are FILTERS, never weights: region (a World Bank region name), withinBudget (default true; false keeps countries the budget does not cover), needsVisa (an eligible digital nomad visa on the budget). Each row carries the fit, quality and cost scores, modelled essentials, budget ratio and the nomad visa matched. A ranking of published figures against the weights given, not a recommendation; every response says so first.

Input Schema

NameRequiredDescriptionDefault
airNoWeight 0–10 for air (default 5).
costNoWeight 0–10 for cost (default 5).
limitNoMaximum rows (default 10).
budgetNoMonthly budget in USD.
regionNoKeep only countries in this World Bank region.
safetyNoWeight 0–10 for safety (default 5).
englishNoWeight 0–10 for english (default 5).
internetNoWeight 0–10 for internet (default 5).
needsVisaNoKeep only countries with a digital nomad visa the budget meets.
healthcareNoWeight 0–10 for healthcare (default 5).
withinBudgetNoKeep only countries whose modelled essentials fit inside the budget.

Output Schema

NameRequiredDescriptionDefault
okNo
rowsNo
inputsNo
caveatsNo
excludedNo
attributionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/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 real value beyond that: measured indicators carry their own source years, the output rows include fit/quality/cost scores and a budget ratio, and every response opens with a non-recommendation disclaimer.

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 core ranking behaviour, then filters, then output shape; every clause carries information. It is dense enough that some of the weight defaults restate schema descriptions, costing a little efficiency.

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 an 11-parameter tool with full schema descriptions, an output schema and complete annotations, nothing material is missing — weighting model, filter semantics, output contents and the disclaimer behaviour are all covered.

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 already 100%, so the baseline is 3. The description still earns more by framing the weight-versus-filter distinction conceptually and clarifying that withinBudget=false is an inversion (not a no-op) and that requirements are evaluated against the budget — nuance the per-parameter strings only partly convey.

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 verb+resource (ranks countries by a blended fit score) and pins down exactly which inputs are weights versus filters, which separates it from siblings like rank_livability, compare_countries and find_nomad_visas. An agent can tell what this tool returns without opening the schema.

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?

Gives clear invocation context — weights default to 5 each, region/budget/visa are FILTERS, withinBudget=false keeps over-budget countries, needsVisa requires an eligible nomad visa the budget meets. It stops short of naming which sibling to use instead, so the routing guidance is implicit rather than explicit.

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