Skip to main content
Glama

Server Details

Citizenship & golden-visa (CBI/RBI) data, costs & mobility — by Mirabello Consultancy

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.1/5 across 35 of 35 tools scored. Lowest: 2.9/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose, from booking consultations to building evidence packs, comparing programmes, and checking eligibility. Even closely related tools like compare_programmes, recommend_programmes, and list_programmes are differentiated by their descriptions, eliminating ambiguity.

Naming Consistency4/5

Most names follow a verb_noun pattern (e.g., book_consultation, compare_programmes, estimate_timeline), but there are minor deviations like forced_heirship_risk (noun_verb) and some tools starting with get_, find_, or flag_. Overall, the convention is readable and mostly consistent.

Tool Count3/5

35 tools is on the higher end for a single server, covering a broad domain of investment migration, tax, legal, and wealth protection. While each tool seems justified, the count may feel heavy for agents, bordering on excessive but not extreme.

Completeness4/5

The tool set covers the entire client journey: initial consultation, eligibility, programme details, cost/timeline, comparison, compliance, tax, legal, wealth structuring, and updates. Minor gaps exist (e.g., no direct application submission), but the overall coverage is thorough.

Available Tools

43 tools
book_consultationAInspect

Book a free consultation with Mirabello Consultancy. Requires email + programme interest/message and explicit consent. Delivers the enquiry to Mirabello and returns a tracked booking URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNowhy / use-case (e.g. second passport, EU residency, tax, mobility, family relocation)
nameNofull name
emailYes
phoneNophone / WhatsApp (with country code)
budgetNoinvestment budget or band (e.g. "$250k", "up to $500k")
sourceNoorigin surface of this lead for attribution, e.g. "plan_path" when booking follows a plan_path result
consentNoUser consents to share details with Mirabello Consultancy (GDPR). Must be true to deliver.
messageNoshort comment / interest description
websiteNoleave blank (spam honeypot)
timelineNodesired timeline (e.g. "ASAP", "6 months", "within a year")
lead_heatNooptional pre-assessed lead heat (e.g. carry the plan_path conversion.lead_heat through) — escalates routing for qualified HNWIs
salutationNosalutation / honorific
family_sizeNowho is included (e.g. "single", "couple", "family of 4") — optional summary; prefer number_of_children + childrens_ages
nationalityNocurrent nationality (country name)
childrens_agesNochildren ages, comma-separated (e.g. 5, 12, 17)
marital_statusNomarried? Yes/No
preferred_channelNohow the client prefers to be contacted
residence_countryNocurrent country of residence (if different from nationality)
number_of_childrenNohow many children to include
programme_interestNoprogramme or shortlist of interest (e.g. "st-kitts-cbi" or "CBI Caribbean", or service category: "Citizenship by Investment", "Residency by Investment", "Citizenship by Marriage", "Citizenship by Descent", "Passport Renewal", "Government Advisory")
Behavior4/5

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

The description clarifies that the tool delivers the enquiry to Mirabello and returns a tracked booking URL, adding behavioral context beyond the annotations (readOnlyHint=false implies write, confirmed here). It does not detail error states, rate limits, or side effects, but the core behavior is transparent.

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?

The description is three concise sentences: purpose, requirements, outcome. No unnecessary words, and the most important information (purpose and required fields) appears first.

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?

Given 20 parameters and no output schema, the description covers the essential input (email, programme interest, consent) and output (tracked URL). It lacks details on error handling or asynchronous behavior, but it is fairly complete for a booking tool.

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 95%, high, so the baseline is 3. The description does not add new parameter meaning beyond what the schema already provides, merely restating requirements. No improvement over schema.

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 action (book a consultation), target (Mirabello Consultancy), and key outcomes (deliver enquiry, return tracked URL). It distinguishes itself from sibling tools, which focus on eligibility, comparisons, and estimates.

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?

The description lists prerequisites (email, programme interest/message, consent), providing clear context for when to use the tool. However, it does not explicitly state when not to use it or suggest alternative tools, though the sibling list makes the intended use unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

build_sow_packA
Read-only
Inspect

Source-of-Wealth / Source-of-Funds evidence pack: given a wealth-origin type (e.g. business_sale, inheritance, ipo_liquidity_event, real_estate_sale, employment_income, crypto_asset_gains) and an optional destination context (a CBI/RBI programme, generic private-bank onboarding, trustee acceptance, or EU AML account-opening), returns the documentary evidence typically required — core + corroborating documents, the context overlay (programme SoF requirements + extra due-diligence), and common red flags. Grounded in FATF/Wolfsberg standards + programme due-diligence rules. INFORMATION ONLY — lists the evidence usually required, never asserts a case is compliant. Call with no args to list available origins and contexts.

ParametersJSON Schema
NameRequiredDescriptionDefault
originNo
contextNo
Behavior4/5

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

Annotations set readOnlyHint=true, and the description reinforces this with 'never asserts a case is compliant'. It adds behavioral details: grounded in FATF/Wolfsberg standards, returns core+collateral documents, context overlay, and red flags.

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?

The description is a focused paragraph with the main purpose upfront, examples, and a clear informational note. It is efficient and contains no redundancy, though bullet points could marginally improve readability.

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?

Given no output schema and low parameter coverage, the description effectively covers the tool's purpose, input suggestions, output components, standards basis, and limitation. It is sufficiently complete for an agent to use correctly.

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 coverage is 0% (no descriptions for parameters), but the description provides concrete examples for 'origin' and 'context', and instructs calling with no args for full list. This adds meaning beyond the bare schema types, though lacks complete enumeration.

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 returns documentary evidence for Source-of-Wealth/ Source-of-Funds based on origin type and optional context. It distinguishes itself from siblings by being specific about SoW/SoF compliance documentation.

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?

The description explains the informational nature ('INFORMATION ONLY') and advises calling with no args to list options. It implicitly guides usage for selecting origin and context, but doesn't explicitly exclude alternative tools or conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_eligibilityA
Read-only
Inspect

Check which programmes a given nationality can realistically apply to: published nationality restrictions/suspensions (e.g. Russia/Belarus/Iran policies), EU-citizen applicability, minimum age and core requirements. Factual published policies only — final acceptance always rests with government due diligence.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNooptional filter
nationalityYesapplicant nationality (country name, e.g. "Iran", "India")
programme_idNooptional: check one programme in detail
Behavior4/5

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

Annotations already declare readOnlyHint=true. Description adds that it only reflects published policies and that final acceptance rests with government due diligence, providing important limitations about the tool's scope and non-definitive nature.

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 with no wasted words. The key action and scope are in the first sentence, with an important caveat in the second. Highly efficient.

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?

Given no output schema, the description explains the tool's purpose and limitations well. It could be improved by hinting at the output format (e.g., list of programmes), but the core context for decision-making is present.

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 covers all 3 parameters with descriptions (100% coverage). The description mentions nationality and programmes but does not add significant detail beyond the schema. Baseline 3 is appropriate.

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?

Description explicitly states the tool 'checks which programmes a given nationality can realistically apply to', listing specific aspects like nationality restrictions, EU-citizen applicability, and age requirements. It clearly distinguishes from sibling tools like check_visa_free or recommend_programmes by focusing on eligibility filtering.

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

Usage Guidelines3/5

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

The description implies when to use (for eligibility based on nationality) but does not explicitly state alternatives or when not to use. The context about factual policies and final government due diligence sets expectations, but no direct comparison to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_visa_freeA
Read-only
Inspect

Mobility for a programme passport: visa-free count, Henley rank, and access to key destinations (Schengen, UK, USA, China).

ParametersJSON Schema
NameRequiredDescriptionDefault
destinationNooptional: check access to a specific destination (e.g. Schengen, UK, USA, China)
programme_idYes
Behavior4/5

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

Annotations already declare readOnlyHint=true. The description adds context on specific outputs (visa-free count, Henley rank, key destinations) without contradicting annotations. It sufficiently discloses behavioral traits beyond annotations.

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?

The description is a single, efficient sentence that front-loads the main purpose with zero waste. Every word earns its place.

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

Completeness4/5

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

For a simple query tool with 2 parameters, no output schema, and read-only annotations, the description covers purpose and key outputs. It does not detail return format but is reasonably complete.

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 coverage is 50% (only destination has description). The description mentions key destinations (Schengen, UK, USA, China), adding meaning to the destination parameter, but does not explain programme_id. It partially compensates for missing schema descriptions.

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 provides visa-free count, Henley rank, and access to key destinations for a programme passport. It uses a specific verb ('check') and resource, effectively distinguishing it from siblings like check_eligibility or get_programme.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives. The description implies its use for checking visa-free access details but lacks when-not or direct comparisons to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_programmesA
Read-only
Inspect

Compare 2–4 programmes side by side: cost, processing, mobility, family inclusion, tax, path to citizenship.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYes
Behavior3/5

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

Annotations declare readOnlyHint=true, indicating a safe read operation. The description adds the specific comparison attributes but does not disclose any other behavioral traits (e.g., data source, performance, error handling). With annotations covering safety, a 3 is appropriate.

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?

The description is a single sentence, front-loaded with the key action and resource, and lists specific comparison dimensions. No wasted words.

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

Completeness4/5

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

For a simple tool with one parameter and no output schema, the description covers the essential functionality and scope. It does not mention return format or error handling, but given the simplicity, it is sufficiently complete.

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?

The only parameter 'ids' is described implicitly as '2–4 programmes'. Schema description coverage is 0%, so the description must compensate. It adds meaning (what the array represents) but lacks details on format (e.g., programme IDs vs names). This is adequate but not thorough.

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's purpose: compare 2–4 programmes side by side, listing specific attributes (cost, processing, mobility, family inclusion, tax, path to citizenship). This differentiates it from siblings like list_programmes (listing only) or recommend_programmes (recommendation).

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?

The description implies when to use this tool: when a side-by-side comparison of multiple programmes is needed. It does not explicitly state when not to use or mention alternatives, but the listed attributes and sibling names provide enough context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_scenariosA
Read-only
Inspect

Side-by-side comparison of 2-8 jurisdictions across every wealth-protection dimension at once: tax (income/CGT/inheritance/wealth top rates + territorial-vs-worldwide + special regimes), crypto-asset treatment, tax-residence day-count, trust/foundation structure availability, reporting (CRS/EU-list/DAC6) and succession/forced-heirship. The synthesis view over the tax, residence, structure, reporting and succession layers. Pass scenarios as an array of {cc,pathway} or cc as a comma list (e.g. AE,PT,SG). Informational only, not advice; pair with get_country/find_pathways for the immigration route and compare_treaty_position for a specific corridor.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
scenariosNo
Behavior4/5

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

Annotations set readOnlyHint=true, and description reinforces it as 'Informational only, not advice.' Adds context about the synthesis view across layers (tax, residence, structure, reporting, succession) and the scope of the comparison.

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?

The description is well-structured and front-loaded with the core purpose, but slightly verbose with detailed enumeration of dimensions. Every sentence adds value, but could be trimmed slightly.

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?

Given the complexity of the tool and no output schema, the description covers purpose, parameters, usage tips, and relationships to siblings. Lacks details on output format, but the synthesis nature is implied.

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

Parameters5/5

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

Schema has 0% description coverage, but the description fully explains both parameters: cc as a comma list and scenarios as an array with cc and pathway. Provides examples of acceptable formats and clarifies that no parameters are required.

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 it performs a side-by-side comparison of jurisdictions across multiple wealth-protection dimensions. It differentiates from sibling tools like compare_treaty_position and compare_programmes.

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?

Explicitly tells when to use (comparing up to 8 jurisdictions) and what not to use (informational only, not advice). Prescribes pairing with get_country/find_pathways and compare_treaty_position for specific needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_treaty_positionA
Read-only
Inspect

Double-tax-treaty position for a relocation corridor (from→to): is a DTA in force, the residence tie-breaker test, treaty withholding rates (dividends/interest/royalties), and any limitation-on-benefits/principal-purpose test. Use ISO alpha-2 codes. Indicative, not advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYes
fromYes
Behavior5/5

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

The description complements the readOnlyHint annotation by disclosing that the tool is 'indicative, not advice' and lists the specific checks performed. No contradiction with annotations.

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?

The description is a single, well-structured sentence that front-loads the main purpose, followed by a brief usage note. No redundant information.

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?

With no output schema, the description fully explains what the tool returns: DTA status, tie-breaker, withholding rates, and limitation-of-benefits tests. The input requirements are clear.

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

Parameters5/5

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

Despite 0% schema description coverage, the description explicitly states that 'from' and 'to' are ISO alpha-2 codes for the relocation corridor, adding crucial meaning beyond the raw schema.

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's purpose: providing double-tax-treaty position for a relocation corridor, including DTA in force, residence tie-breaker, withholding rates, and limitation-on-benefits tests. It specifies ISO alpha-2 codes, distinguishing it from siblings like 'withholding_map' or 'get_country_tax'.

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?

The description instructs to use ISO alpha-2 codes and notes the output is indicative, not advice. While it does not explicitly mention when to use this tool over siblings, the detailed output description implies its use case for treaty analysis between two countries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compliance_checklistA
Read-only
Inspect

Lists the reporting/compliance obligations a stated profile may trigger — FATCA (US persons), CRS, CARF/DAC8 (crypto), DAC6 (EU cross-border arrangements), PEP enhanced due diligence, investment-migration due diligence, trust/beneficial-ownership reporting and source-of-wealth evidence. Pass boolean flags (us_person, crs_reportable, crypto_holder, dac6, pep, cbi_applicant, trust_settlor, large_cash_or_sow). STATELESS — pass only non-identifying flags, never personal data. Informational only, not legal/tax advice, not exhaustive.

ParametersJSON Schema
NameRequiredDescriptionDefault
pepNo
dac6No
us_personNo
cbi_applicantNo
crypto_holderNo
rbi_applicantNo
trust_settlorNo
crs_reportableNo
large_cash_or_sowNo
eu_cross_border_arrangementNo
Behavior5/5

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

Beyond the readOnlyHint annotation, the description adds valuable context: the tool is stateless, accepts only non-identifying flags, and is informational with a disclaimer. This fully discloses behavior and limitations.

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?

The description is concise: two sentences cover purpose, flags, statelessness, and legal disclaimer. No redundant information; every sentence earns its place.

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?

Given the tool's complexity (10 boolean flags, no output schema), the description adequately covers purpose, parameter usage, and limitations. It could mention the output format (list of obligations) but is otherwise complete for an informational tool.

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?

The input schema has 10 boolean parameters with 0% description coverage. The description lists 8 of them by name, grouping them as relevant flags. Although it doesn't define each individually, the names are self-explanatory and the listing provides context. Some parameters (rbi_applicant, eu_cross_border_arrangement) are missing, but overall adds meaning.

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's purpose: 'Lists the reporting/compliance obligations a stated profile may trigger' and enumerates specific regulations (FATCA, CRS, etc.). It distinguishes from siblings like check_eligibility by focusing on compliance obligations triggered by boolean flags.

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?

The description provides clear context: it is informational, not legal/tax advice, and not exhaustive. It also instructs to pass only non-identifying flags and never personal data. However, it does not explicitly mention when to use this tool over alternatives like check_eligibility.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_enquiryAInspect

Route a qualified buyer enquiry about a specific property to Mirabello Consultancy (the broker of record and licensed advisor). Requires property_id (slug) + a valid email + explicit consent:true (GDPR). Delivers the enquiry to Mirabello and returns the next step. This is the correct hand-off: CBI/RBI purchases must go through a licensed advisor and a government-approved project — Mirabello manages the property purchase AND the citizenship/residency application end to end.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
emailYes
phoneNo
budgetNo
consentYesmust be true (GDPR consent to share details with Mirabello)
messageNo
timelineNo
nationalityNo
property_idYeslisting slug from search_properties/get_property
preferred_channelNo
residence_countryNo
Behavior4/5

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

Annotations indicate a non-read-only operation, and the description confirms it delivers the enquiry and returns a next step. It adds GDPR context and consent requirement, providing behavioral clarity beyond the annotations.

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?

Three sentences, front-loaded with purpose, followed by key requirements and context. No wasteful words, each sentence contributes essential information.

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

Completeness3/5

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

The description covers core functionality and required parameters but omits details on return values ('next step' is vague) and does not explain optional parameters. For a tool with 11 parameters, more context is needed.

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

Parameters2/5

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

Schema description coverage is only 18%; the description adds meaning to property_id (slug) and consent (GDPR) but fails to clarify the other 8 optional parameters (e.g., name, phone, budget). With low coverage, the description should supply more parameter guidance.

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 identifies the action (route a qualified buyer enquiry), the resource (a specific property), and the recipient (Mirabello Consultancy). It distinguishes itself from sibling tools like book_consultation by explicitly stating this is the correct hand-off for CBI/RBI purchases.

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?

The description states required inputs (property_id, email, consent) and when to use (qualified buyer enquiry for property purchase). It does not explicitly list when not to use, but implies this is the specific tool for hand-off to a licensed advisor.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estimate_timelineC
Read-only
Inspect

Step-by-step expected timeline for a programme: published processing time plus the stage breakdown where available.

ParametersJSON Schema
NameRequiredDescriptionDefault
programme_idYes
Behavior3/5

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

Annotations confirm read-only behavior. The description adds context about stage breakdown availability, but does not disclose potential error states or data source limitations.

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?

Concise single sentence that front-loads key information. However, the colon usage makes the second part slightly ambiguous.

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

Completeness2/5

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

For a single-parameter tool with no output schema, the description fails to describe return format, error handling, or the nature of the timeline. Agents lack sufficient context to interpret results.

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

Parameters2/5

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

With 0% schema coverage, the description does not explain the required programme_id parameter beyond implicit context. No format, examples, or source guidance provided.

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 clearly states the tool provides a step-by-step timeline including processing time and stage breakdown. It effectively communicates the primary function.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus siblings like get_processing_times. The description lacks differentiation and context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estimate_total_costA
Read-only
Inspect

Estimate the total cost of a programme for a given family: investment + government & due-diligence fees + family add-ons. Indicative; excludes professional/property/legal fees.

ParametersJSON Schema
NameRequiredDescriptionDefault
adultsNomain + spouse/adult applicants (default 1)
programme_idYes
children_16plusNo
children_under16No
Behavior4/5

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

Annotations already declare readOnlyHint=true. The description adds value by specifying what is included and excluded in the estimate, which is beyond what annotations provide. No contradictions.

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, no wasted words. The first sentence states the core purpose, the second adds essential caveats. Front-loaded and concise.

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

Completeness3/5

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

The tool has 4 parameters and no output schema. The description covers purpose and exclusions but omits return format or behavior when optional parameters are omitted. Adequate but incomplete.

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

Parameters2/5

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

Schema description coverage is only 25% (only adults documented). The description hints at family composition but does not explicitly explain each parameter's meaning or relationship to the cost calculation. More detail needed to compensate for low coverage.

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 estimates total cost of a programme for a family, listing components (investment, fees, add-ons) and exclusions. It distinguishes from siblings like get_programme or compare_programmes.

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

Usage Guidelines3/5

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

The description implies usage for cost estimation by family composition but does not explicitly state when to use this tool versus alternatives. The caveat 'Indicative; excludes professional/property/legal fees' provides context but no direct comparison to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_charity_jurisdictionsA
Read-only
Inspect

Find jurisdictions for setting up a CHARITABLE/PHILANTHROPIC structure — charitable foundations (e.g. the Liechtenstein gemeinnützige Stiftung), donor-advised funds (US 501(c)(3) ecosystem), charitable trusts, waqf — with donor tax relief, the entity tax status, cross-border granting and the standout vehicle. The philanthropy/legacy complement to the residence/citizenship + tax + trust layers.

ParametersJSON Schema
NameRequiredDescriptionDefault
vehicleNoe.g. foundation, donor-advised fund, charitable trust, waqf
donor_reliefNoonly jurisdictions giving donors a tax deduction/credit
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the description does not need to restate that. The description adds context about the tool's focus on philanthropic structures, but does not disclose any additional behavioral traits beyond what annotations provide.

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?

The description is two sentences long, with the first sentence front-loading the key action and providing rich context. It could be slightly more concise, but it effectively packs information without unnecessary verbosity.

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?

Given the tool has two parameters, no output schema, and annotations present, the description adequately explains the tool's purpose and results. It provides enough context for an agent to understand what kind of jurisdictions will be returned and the scope of the tool.

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?

The input schema has 100% coverage with clear descriptions for both parameters. The description adds some contextual value by mentioning 'donor tax relief' and 'standout vehicle', but does not provide additional semantic meaning beyond what the schema already offers.

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's purpose: to find jurisdictions for setting up charitable/philanthropic structures, with specific examples (foundations, donor-advised funds, etc.). It distinguishes itself from sibling tool 'find_trust_jurisdictions' by focusing on charity/philanthropy rather than general trusts.

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

Usage Guidelines3/5

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

The description implies the tool is for philanthropic planning, calling it a 'philanthropy/legacy complement' but does not explicitly state when to use it vs alternatives like 'find_trust_jurisdictions' or other tools. No exclusion or cross-reference is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_low_taxA
Read-only
Inspect

Find countries by wealth-protection tax criteria — no personal income tax, no inheritance tax, no wealth tax, no capital gains tax, territorial taxation, non-CRS (no automatic financial-account exchange), not on the EU tax black/grey list, or crypto-friendly (favourable crypto-asset tax regime). Returns matching countries with their HNWI tax + CRS + EU-list (+ crypto) snapshot. Pair with get_country/find_pathways to combine tax + a residence/citizenship route.

ParametersJSON Schema
NameRequiredDescriptionDefault
non_crsNo
territorialNo
no_income_taxNo
no_wealth_taxNo
not_eu_listedNo
crypto_friendlyNo
no_inheritance_taxNo
no_capital_gains_taxNo
Behavior4/5

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

Annotations already declare read-only. The description confirms that the tool returns a 'snapshot' of tax/CRS/EU-list/crypto data, adding behavioral context beyond the annotation without contradiction.

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?

A single, front-loaded paragraph that packs all necessary information (criteria, output, pairing advice) without filler or repetition.

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 boolean-filter list tool with 8 optional params and no output schema, the description covers what the tool returns, usage context, and integration with siblings, leaving little ambiguity.

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 description coverage is 0%, but the description fully explains each boolean parameter's meaning (e.g., 'no personal income tax', 'non-CRS') in plain English, compensating for the schema gap.

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 begins with a specific verb-resource pair ('Find countries by wealth-protection tax criteria') and enumerates distinct tax filters. It also suggests pairing with sibling tools (get_country/find_pathways), differentiating its role.

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?

The description gives explicit pairing advice for combining tax criteria with residence/citizenship routes, but does not state when to avoid this tool versus alternatives like get_country_tax or compare_programmes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_pathwaysA
Read-only
Inspect

Find which countries offer a given immigration pathway (e.g. digital-nomad, skilled-work, ancestry-descent, retirement-passive). Returns the screened countries that have it.

ParametersJSON Schema
NameRequiredDescriptionDefault
regionNo
pathwayYes
Behavior3/5

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

The description is consistent with the readOnlyHint annotation. It adds 'screened' to describe the output, but does not elaborate on data freshness, authentication needs, or other behavioral traits. With annotations already indicating read-only, the description provides marginal additional transparency.

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?

The description is two sentences, front-loading the core purpose and using a parenthetical list for examples. Every word contributes value, and there is no redundancy or unnecessary detail.

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

Completeness3/5

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

Given the tool has 2 parameters (one required) and no output schema, the description is somewhat incomplete. It does not explain the return format or what 'screened' entails. It also lacks context about supported pathway values or the tool's placement among 18 siblings.

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

Parameters2/5

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

The input schema has 0% description coverage. The description explains the 'pathway' parameter with examples, but the optional 'region' parameter is not mentioned at all. This leaves a significant gap for agents to understand the full parameter set.

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's action ('Find which countries offer a given immigration pathway') and specifies the resource (countries, pathway). Examples of pathway types (digital-nomad, skilled-work) provide concrete context. It distinguishes itself from siblings like check_eligibility or list_programmes by focusing on country-pathway association.

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

Usage Guidelines3/5

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

The description implies usage when one wants to know which countries have a specific immigration pathway, but lacks explicit guidance on when not to use it or how it relates to alternatives like check_eligibility or get_country. No prerequisites or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_trust_jurisdictionsA
Read-only
Inspect

Find trust & foundation jurisdictions for asset protection and succession planning (e.g. Cook Islands, Nevis, Cayman, Jersey, Liechtenstein), ranked by asset-protection strength, each with its statute, CRS status and EU-list status. Filter by vehicle (trust/foundation) or strong_protection. The wealth-structuring complement to the residence/citizenship pathways.

ParametersJSON Schema
NameRequiredDescriptionDefault
vehicleNotrust or foundation
strong_protectionNo
Behavior5/5

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

The description discloses the tool's read-only nature (consistent with readOnlyHint: true) and details what the output includes: ranked jurisdictions with statute, CRS status, and EU-list status. No contradictions with annotations.

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?

The description is three sentences, front-loaded with the main purpose, examples, and filter options. Every sentence is meaningful, with no redundancy or wasted words.

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 tool with two optional parameters and no output schema, the description covers the purpose, filters, return content, and contextual positioning among siblings. It is sufficiently complete.

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?

With only 50% schema description coverage, the description compensates by explaining the 'vehicle' and 'strong_protection' filters. It clarifies that 'vehicle' accepts 'trust or foundation' and that 'strong_protection' is a boolean filter, adding value beyond the schema.

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's purpose: 'Find trust & foundation jurisdictions for asset protection and succession planning', with examples of jurisdictions and filters. It distinguishes from siblings like find_charity_jurisdictions and find_low_tax by focusing on asset protection and wealth structuring.

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 guidance on when to use the tool (asset protection and succession planning) and mentions filtering options. It contrasts with residence/citizenship pathways, but does not explicitly exclude alternative tools like find_charity_jurisdictions or find_low_tax.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

flag_cfc_poe_riskA
Read-only
Inspect

Anti-avoidance & relocation-tax flags for a jurisdiction: CFC (controlled foreign company), GAAR, POEM/corporate-residence, economic substance, exit-tax detail and step-up-in-basis on becoming resident. The depth behind headline rates. Use ISO alpha-2. Indicative, not advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYes
Behavior4/5

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

Annotations declare readOnlyHint=true, consistent with a non-destructive query. The description adds context about the output being 'indicative, not advice' and explains the depth of information provided. No contradictions.

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?

Three concise sentences: first lists the flags, second explains the depth, third provides usage and disclaimer. No wasted words, front-loaded with key information.

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?

With a simple string input and no output schema, the description sufficiently covers what the tool does, the input format, and the nature of the output. Some details about return structure are missing but acceptable.

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?

The single parameter 'cc' lacks schema description, but the description clarifies it expects an ISO alpha-2 country code, providing essential semantic meaning beyond the schema.

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 clearly states it provides anti-avoidance and relocation-tax flags for a jurisdiction, listing specific items (CFC, GAAR, POEM, etc.) and indicating it goes beyond headline rates. This distinguishes it from sibling tools like get_country_tax or find_low_tax.

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

Usage Guidelines3/5

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

The description instructs to use ISO alpha-2 country codes and warns that output is indicative, not advice. However, it does not explicitly state when to use this tool versus alternatives, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

forced_heirship_riskA
Read-only
Inspect

Forced-heirship / testamentary-freedom position for a jurisdiction: whether forced heirship exists, the reserved shares (e.g. France réserve héréditaire, Germany Pflichtteil, Switzerland reform), the freely-disposable portion, whether a spouse/children can be disinherited, and how trusts/foundations interact with reserved shares. States the default legal rules — NOT how any estate will devolve. Use ISO alpha-2.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYes
Behavior4/5

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

The description adds behavioral context beyond the readOnlyHint annotation by clarifying that the tool states default legal rules and does not predict estate outcomes. It also mentions interactions with trusts/foundations, providing useful transparency about the tool's scope.

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?

The description is a single, well-structured sentence that front-loads the key information and lists specifics without unnecessary words. It is concise and efficient.

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?

Given the simplicity of the tool (one parameter, no output schema), the description provides a comprehensive overview of what the tool returns, including forced heirship existence, reserved shares, free portion, disinheritance, and trust interaction. It is complete for the agent to understand the tool's output.

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?

The input schema has 0% description coverage, but the description fills this gap by specifying that the parameter 'cc' should be an ISO alpha-2 country code, giving the agent essential semantic information beyond the schema.

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 provides the forced heirship and testamentary freedom position for a jurisdiction, listing specific elements like reserved shares, free portion, disinheritance, and trust interaction. It also distinguishes itself by emphasizing it gives default rules, not how an estate will devolve, differentiating it from siblings like succession_conflict_map.

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?

The description gives clear context on what the tool does and what it does not (default rules, not estate devolution). It also instructs to use ISO alpha-2 for the country code. However, it does not explicitly contrast with sibling tools or provide when-not-to-use guidance, though the differentiation is implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_briefingAInspect

Generate a personalised Mirabello briefing: given a client profile (nationality, budget, family, goals), returns a ranked shortlist with full family cost math AND a shareable branded briefing page URL (valid 90 days). Optionally registers the client for specialist follow-up (email + consent).

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNoprimary goal in own words
typeNocitizenship or residency preference (omit for both)
emailNooptional — to register for specialist follow-up
adultsNoadult applicants incl. spouse (default 1)
consentNorequired true if email given (GDPR)
websiteNoleave blank (spam honeypot)
tax_goalNo
budget_maxNomaximum investment budget in USD
nationalityNoclient nationality (country name)
programme_idsNooptional: specific programmes to brief on (max 3) instead of auto-shortlist
children_16plusNo
children_under16No
mobility_priorityNo
timeline_max_monthsNo
Behavior4/5

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

Annotations indicate readOnlyHint=false and openWorldHint=true, and the description adds valuable transparency by disclosing optional registration (email + consent) and the 90-day URL validity. This provides behavioral details beyond the annotations, though it could further explain what registration entails (e.g., data storage or email sending).

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?

The description is a single, dense sentence that efficiently conveys the main purpose, key outputs, and optional registration. It is front-loaded and contains no fluff, though it could be slightly restructured for readability.

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

Completeness3/5

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

Given 14 parameters, no output schema, and annotations indicating side effects, the description provides a reasonable overview but lacks detail on the exact structure of the returned briefing (e.g., fields in the shortlist, cost math format). The URL expiry and registration are covered, but the output shape is left to inference.

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 coverage is 64%, so the description partially compensates by mentioning key parameters like nationality, budget, family, and goals. However, it does not cover all 14 parameters, leaving out tax_goal, mobility_priority, timeline_max_months, programme_ids, and the honeypot website field. The description adds some meaning but not enough to fully compensate for the missing schema descriptions.

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 generates a personalised Mirabello briefing with specific outputs: ranked shortlist, full family cost math, and a shareable branded URL valid 90 days. The verb 'generate' and resource 'briefing' are specific, and the inclusion of optional registration distinguishes it from siblings like recommend_programmes or compare_programmes.

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

Usage Guidelines3/5

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

The description implies the tool is for generating a briefing when a client profile is available, but it does not explicitly state when to use it versus alternatives like check_eligibility or book_consultation. No when-not or alternative guidance is provided, leaving the agent to infer from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_aboutA
Read-only
Inspect

About Mirabello Consultancy: track record (cases, approval rate), credentials (IMC, ACAMS), offices, languages, services. Use for "who is Mirabello / why use them / are they reputable" questions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds no behavioral traits beyond listing content, but since annotations cover the safety profile, no further disclosure is needed.

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?

The description is a single sentence that front-loads key information and ends with usage examples. Every word earns its place with no redundancy.

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 tool with no parameters and a simple information retrieval function, the description is complete. It covers content and usage context sufficiently.

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?

There are no parameters, so schema coverage is 100% trivially. The description does not need to add param semantics, as none exist.

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 returns information about Mirabello Consultancy, including track record, credentials, offices, languages, and services. It distinguishes from sibling tools like list_programmes by focusing on company reputation rather than specific programmes.

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?

The description explicitly specifies when to use the tool: for questions like 'who is Mirabello / why use them / are they reputable'. This provides clear guidance and implies alternatives for other queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_availability_updatesA
Read-only
Inspect

Recently re-verified listings (price / availability / sale status), optionally since an ISO date. For agents keeping an inventory view fresh.

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNoISO date, e.g. 2026-06-01
Behavior4/5

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

Annotations already declare readOnlyHint=true. The description adds valuable behavioral context: the tool returns listings that have been re-verified (price/availability/sale status) and optionally filters by ISO date, clarifying the nature of the data beyond a simple read operation.

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?

The description is efficient: two sentences, no fluff. The first sentence states what the tool returns and the parameter, the second provides a usage context. Every word earns its place.

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

Completeness4/5

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

For a simple tool with one optional parameter and no output schema, the description adequately covers what it returns and when to use it. Minor gaps: it does not specify the return format or any limits, but these are not critical for a refresh tool.

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?

The schema already describes the 'since' parameter as an ISO date with high coverage. The description adds the word 'optionally' and repeats the purpose, which adds marginal value but does not significantly enhance understanding beyond the schema.

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 clearly indicates the tool returns recently re-verified listings with optional date filtering. It distinguishes from siblings like 'get_recent_changes' by focusing on availability updates, but lacks a specific verb like 'Retrieve' or 'Get'.

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

Usage Guidelines3/5

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

The description provides a clear use case: 'for agents keeping an inventory view fresh.' However, it does not specify when not to use this tool or mention alternative tools for similar purposes, leaving some guidance gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_countryA
Read-only
Inspect

Country immigration profile (beyond investment migration): ALL screened pathways for a country — skilled-work, digital-nomad, retirement, citizenship-by-descent, naturalisation, study, family etc. — each with requirements, cost, processing, rights, path to PR/citizenship and the official source. Use the ISO-3166 alpha-2 code (e.g. CA, GB, DE, PT).

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYesISO alpha-2 country code
pathwayNooptional: one pathway id to return
Behavior4/5

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

Annotations indicate readOnlyHint=true, and the description adds valuable behavioral context by detailing the return content (requirements, cost, processing, rights, path to PR/citizenship, source). No contradictions with annotations.

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?

The description is two concise sentences. The first sentence front-loads the tool's purpose and content, and the second provides a usage hint. No wasted words.

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?

Given no output schema, the description adequately details the types of information returned. With 2 well-documented parameters and clear usage instruction, the description is sufficiently complete for an AI agent to understand the tool's behavior.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description reinforces the 'cc' parameter with examples and clarifies the scope ('beyond investment migration'), but does not significantly add meaning beyond the schema for the 'pathway' parameter.

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 a country's immigration profile with all screened pathways, listing specific types (skilled-work, digital-nomad, etc.). It distinguishes itself from sibling tools like get_programme or list_programmes which focus on individual programmes.

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?

The description provides explicit guidance on how to specify the country using ISO-3166 alpha-2 code with examples. It implies when to use this tool (full profile) vs siblings (specific programmes), but does not explicitly list alternatives or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_country_taxA
Read-only
Inspect

HNWI tax profile for a country (wealth-protection view): personal income tax (worldwide vs territorial), capital gains, inheritance/estate, wealth tax, exit tax, CRS/AEOI status and special regimes (non-dom, lump-sum, NHR/IFICI, flat-tax). From official/Tier-A sources. Informational only — not tax advice. Use the ISO alpha-2 code.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYesISO alpha-2 country code
Behavior4/5

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

Annotations set readOnlyHint=true, and the description adds 'Informational only' and 'From official/Tier-A sources,' which aligns and provides additional context about data reliability. No contradictions or missing behavioral info.

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?

The description is concise (three sentences) and front-loaded with the main purpose. Every sentence adds value: purpose, specific taxes, source, usage instruction, and disclaimer. No wasted words.

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

Completeness4/5

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

For a simple read-only tool with one parameter and no output schema, the description covers its purpose, data sources, usage, and limitations. It could mention that it's a summary view, but completeness is high.

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?

The input schema has one parameter 'cc' with description 'ISO alpha-2 country code.' Schema coverage is 100%, so the description adds no extra semantics beyond reiterating the code usage. Baseline score 3 is appropriate.

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 it provides an HNWI tax profile for a country, listing specific tax types and data sources. It uses a specific verb ('get') and resource ('country_tax'), and the context of 'wealth-protection view' differentiates it from sibling tools like get_country or get_index.

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?

The description instructs to 'Use the ISO alpha-2 code,' which is a clear usage hint. It also notes 'Informational only — not tax advice.' However, it does not explicitly provide when-not-to-use or alternatives. Given the lack of closely related sibling tools, this omission is minor.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_digital_gov_progressA
Read-only
Inspect

Per-country digital-money & identity progress relevant to wealth planning: (1) CBDC status (none/researching/exploring/pilot/launched) + type (retail/wholesale) and issuer; (2) government-issued or government-sanctioned STABLECOIN status + regulatory framework (e.g. MiCA, MAS, GENIUS Act); (3) national DIGITAL ID status (planned/piloting/operational/mandatory), legal framework, biometric/mobile, cross-border interoperability (eIDAS/EUDI) and privacy law. Each block carries provenance (confidence, verified_date, official sources); low-confidence detail is withheld as CHECK-OFFICIAL-SOURCE. Pass cc for one jurisdiction, omit for all. INFORMATION, NOT ADVICE — government status/timelines change frequently; verify the cited source.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
Behavior4/5

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

The description discloses the read-only nature (consistent with readOnlyHint annotation), cautions that information is not advice and timeliness changes, and explains provenance and low-confidence handling. It adds behavioral context beyond annotations, though could mention rate limits or refresh policies.

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?

The description is structured with numbered blocks and front-loaded purpose. It is detailed but not overly verbose; every sentence adds value. Minor redundancy in repeating 'government' in stablecoin item, but overall efficient.

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?

The description covers the tool's output comprehensively, including data categories, statuses, regulatory frameworks, provenance, and caveats about low-confidence details. Without an output schema, it provides enough context for an agent to understand what to expect, though pagination or error handling are absent.

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?

The schema coverage is 0%, but the description explains the 'cc' parameter: pass for a specific jurisdiction, omit for all. This adds meaning to the otherwise undocumented string parameter, but lacks format details (e.g., ISO alpha-2).

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 provides per-country digital money and identity progress for wealth planning, listing specific data categories (CBDC, stablecoin, digital ID) with statuses and details. It is distinct from sibling tools like get_country or get_country_tax, which cover different domains.

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

Usage Guidelines3/5

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

The description indicates usage by passing a country code ('cc') or omitting for all, but does not explicitly state when to use this tool over alternatives or provide exclusions. It gives basic usage context but lacks clear when-not or alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_document_checklistA
Read-only
Inspect

Standard document checklist for a programme application (per programme type, plus programme-specific items where published). Final list always confirmed by a specialist — varies by family composition and nationality.

ParametersJSON Schema
NameRequiredDescriptionDefault
programme_idYes
Behavior4/5

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

Beyond the readOnlyHint annotation, the description adds that the final list is confirmed by a specialist and varies by family composition and nationality, providing useful behavioral context.

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 concise sentences fully convey the tool's purpose and key nuances without redundancy or unnecessary detail.

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

Completeness3/5

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

The description explains what the tool returns (checklist, programme-specific items, variation factors) but lacks output structure details. Since no output schema exists, more specificity about the return format would improve completeness.

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

Parameters2/5

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

Schema has one parameter (programme_id) with 0% description coverage. The description hints at programme type dependency but does not explain the parameter meaning or expected format, failing to compensate for missing schema descriptions.

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 it provides a 'Standard document checklist for a programme application', specifies it varies by programme type, family composition, and nationality, and distinctly differs from sibling tools like check_eligibility or estimate_timeline.

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

Usage Guidelines3/5

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

Usage is implied by describing what the tool does ('document checklist for a programme application') but lacks explicit when-to-use, when-not-to-use, or alternative tool references despite many siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_indexA
Read-only
Inspect

The Mirabello Investment Migration Index — a composite 0–100 ranking of CBI/RBI programmes across cost, mobility, speed, path-to-citizenship, stability, family and tax, with transparent published methodology. Filter by type (CBI/RBI) and limit. Programmes with insufficient verified data are flagged provisional and excluded from the headline ranking.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo
limitNo
Behavior4/5

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

The description adds value beyond the annotations by detailing the ranking methodology, provisional flagging, and exclusion from headline ranking. No contradictions with readOnlyHint=true.

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?

The description is concise, with two sentences that front-load the purpose and then provide additional details. Every sentence is informative and efficiently written.

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?

Given no output schema, the description covers key aspects like the ranking nature, filtering options, and handling of provisional programmes. It is sufficiently complete for understanding the tool's function.

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?

The description mentions filtering by type (CBI/RBI) and limit, adding some semantic context to the input schema. However, it does not specify defaults or whether parameters are required, and with 0% schema coverage, more detail would be beneficial.

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 defines the tool as a composite ranking index for CBI/RBI programmes, specifying the criteria and filtering options. This effectively distinguishes it from sibling tools like list_programmes and compare_programmes.

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

Usage Guidelines3/5

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

The description does not explicitly state when to use this tool versus alternatives. While it mentions filtering by type and limit, it lacks guidance on scenarios where get_index is preferred over other similar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_mobility_optionalityA
Read-only
Inspect

Strategic mobility optionality for a jurisdiction: the lawful residence/citizenship ROUTES it offers (investment programmes) with minimum physical presence, family inclusion, path to permanence, processing time and regulator — the planning view of mobility, not passport strength. Passport reach (visa-free count) is included as context only. Pass cc for one jurisdiction, omit for all. INFORMATION, NOT ADVICE; pair with get_country/find_pathways + a Mirabello consultation.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
Behavior4/5

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

Annotations declare readOnlyHint=true, so no safety concerns. The description adds context about the nature of the information (routes, passport reach) and includes disclaimers ('INFORMATION, NOT ADVICE'), going beyond annotations without contradiction.

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?

The description is moderately lengthy but every sentence contributes valuable information. It front-loads the core purpose and structures details logically, though some redundancy could be trimmed.

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?

Given no output schema, the description thoroughly explains what is returned (routes with attributes, passport context) and how to use it alongside sibling tools. It covers all necessary aspects for effective tool invocation.

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

Parameters5/5

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

The single parameter 'cc' has no description in the schema (0% coverage), but the description fully explains its meaning: 'Pass cc for one jurisdiction, omit for all.' This adds essential 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 it provides 'strategic mobility optionality' for a jurisdiction, detailing investment programmes with specific attributes like minimum physical presence, family inclusion, and processing time. It distinguishes itself from passport strength and mentions sibling tools like get_country and find_pathways.

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?

Explicitly instructs when to use: 'the planning view of mobility, not passport strength' and how: 'Pass cc for one jurisdiction, omit for all.' Also advises pairing with other tools and a consultation, providing clear usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_processing_timesB
Read-only
Inspect

Processing-time estimate for one programme (by id) or all.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNo
Behavior3/5

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

Annotations provide readOnlyHint: true, which the description does not contradict. The description adds that it can return estimates for one or all, but lacks details on behavior (e.g., caching, accuracy, response format).

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?

Single sentence with no redundancy. Slightly more could be added about the 'all' case, but it is sufficiently concise.

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

Completeness3/5

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

For a simple tool with one optional parameter and no output schema, the description covers the main usage. However, it lacks details on the response structure, which would be helpful given the lack of output schema.

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?

With 0% schema description coverage, the description adds meaning by indicating that 'id' selects a specific programme, and omitting it returns estimates for all. However, no format or constraints are given.

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 clearly states it returns processing-time estimates for one programme (by id) or all programmes. This distinguishes from siblings like get_programme (programme details) and list_programmes (listing all programmes), but does not explicitly differentiate.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives like get_programme or list_programmes. No exclusions or prerequisites mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_programmeA
Read-only
Inspect

Full detail for one programme by id (e.g. "dominica-cbi","greece-gv"): routes, fees, processing, mobility, tax, path to citizenship, its Mirabello Index composite score + rank (mirabello_index), and the Mirabello programme page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, indicating safe read operation. The description adds behavioral context by listing the data returned (routes, fees, etc.) but does not mention error handling, id format sensitivity, or rate limits. Adequate but not beyond annotations.

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?

A single sentence that front-loads the purpose and lists specific content items. Every phrase earns its place; no redundancy or trivial details.

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?

With one parameter, no output schema, and readOnly annotation, the description sufficiently covers what the tool returns. It lists major output components. Could be slightly improved by noting the output structure, but overall complete for a retrieval tool.

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

Parameters5/5

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

Schema has 0% description coverage, but the description fully compensates by providing examples ('dominica-cbi','greece-gv') and explaining the parameter is a programme id. This adds significant meaning beyond the schema's type string.

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 'Full detail for one programme by id', which is a specific verb+resource. It distinguishes from sibling tools like list_programmes and compare_programmes by emphasizing it's for a single programme with comprehensive information.

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?

The description implicitly guides use when full detail of a specific programme is needed, but it does not explicitly state when not to use or mention alternatives like check_eligibility or get_processing_times. The purpose is clear enough to infer appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_propertyA
Read-only
Inspect

Full detail for one investment property by slug: price, specs, location, qualifying programme + holding period, project/developer (where disclosed), availability and freshness. Mirabello Consultancy is broker of record; brochure, floor plan and due-diligence pack are available on enquiry (create_enquiry). Indicative; verify with Mirabello.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes
Behavior4/5

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

Annotations declare readOnlyHint=true, and the description adds context: 'Indicative; verify with Mirabello' and notes the broker of record. This provides behavioral nuance beyond the annotation, though no mention of caching or staleness.

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 core purpose and return fields. Every sentence adds value; no fluff. Perfectly concise.

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?

The description covers the tool's return content, the indicative nature, and the alias for further enquiry. Without an output schema, it provides sufficient context for an agent to understand what to expect, though it could mention pagination or error states.

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?

The single parameter 'slug' has no schema description (0% coverage). The description mentions it's the identifier for the property but adds no further detail on format, source, or how to obtain it. The tool is simple, so baseline 3 is adequate.

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 full details for one investment property by slug, listing specific attributes (price, specs, location, etc.). This distinguishes it from sibling tools like search_properties which likely return multiple properties.

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?

The description implies usage requires a slug and mentions that brochures and packs are available via create_enquiry, but does not explicitly state when to use this vs siblings (e.g., search_properties). However, the contrast is clear enough for an agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_provenanceA
Read-only
Inspect

CITATION-FIRST provenance for a country's pathway facts (W3C PROV-O + Schema.org). For each fact returns: the cited official source_url + source_class + verbatim quote (evidence), how it was derived (extraction model + ensemble + independent corroboration), confidence, first_seen/last_changed, and a per-data-class FRESHNESS block (as_of, governing_class, sla_days, status fresh|aging|stale|CHECK-OFFICIAL-SOURCE, recheck_by). Use this to CITE Mirabello data with a source + as-of date and to know when to re-verify. Pass cc (+ optional pathway).

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYesISO alpha-2 country code
pathwayNooptional: one pathway id
Behavior5/5

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

The description details the return structure comprehensively, including source info, derivation, confidence, temporal fields, and freshness block. This goes well beyond the readOnlyHint annotation, providing full behavioral transparency.

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?

The description is a single paragraph that is front-loaded with the core purpose. While dense, it efficiently conveys all necessary information without redundancy.

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?

Given the tool has only 2 parameters and no output schema, the description compensates by fully explaining the return fields and their semantics, making the tool's behavior completely predictable.

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 coverage is 100% with clear descriptions for both parameters (cc and pathway). The description adds only minimal context ('country's pathway facts') and does not significantly enhance understanding beyond the schema.

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 provenance data for a country's pathway facts, specifying it uses W3C PROV-O and Schema.org standards. It distinguishes itself from siblings by focusing on citation-first source verification, which none of the sibling tool names imply.

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?

The description explicitly advises to use this tool for citing Mirabello data with a source and as-of date, and to know when to re-verify. It does not mention when not to use it or provide alternatives, but the purpose is clear and contextually sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_recent_changesA
Read-only
Inspect

Recent material changes across investment-migration programmes (launches, closures, threshold/mobility/regulatory changes) + current status counts, PLUS pathway_field_changes (official-source field-level diffs per country x pathway, from->to + cited source) and official_legislation_changes (changes detected directly on official government/gazette sources). The freshest, primary-source-verified record — use for "what changed recently / latest" questions. Pass cc to filter to one country.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
limitNo
Behavior4/5

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

Annotations already declare readOnlyHint=true (safe read) and openWorldHint=false (complete data). The description adds value by specifying the types of changes included and claiming 'primary-source-verified', which augments the safety profile without contradiction.

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?

Description is moderately concise; two sentences. The first sentence front-loads the main purpose and types, followed by usage guidance. Could be slightly tighter by combining clauses, but no fluff.

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

Completeness3/5

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

Given no output schema, the description should clarify the return format (e.g., list of objects with fields, counts). It mentions 'current status counts' and change types but not the structure. Adequate but incomplete for a complex query tool.

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 has 2 parameters with 0% description coverage. Description explains 'cc' as a country filter but does not mention 'limit', leaving its purpose (likely pagination) unexplained. Partial compensation for low coverage.

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?

Description clearly states the tool retrieves recent material changes across investment-migration programmes, listing three specific types (launches/closures, pathway_field_changes, official_legislation_changes). It distinguishes from sibling tools by emphasizing 'freshest, primary-source-verified record' and targeting 'what changed recently / latest' questions.

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?

Explicitly says 'use for "what changed recently / latest" questions' and notes the optional cc filter for a single country. Lacks explicit when-not-to-use or alternatives, but the purpose is narrow enough that usage context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_wealth_atlasA
Read-only
Inspect

The Mirabello Wealth-Protection Atlas — OBJECTIVE per-pillar sub-indices (0-100) for each jurisdiction: tax efficiency, structure strength, residence clarity, crypto clarity, succession certainty, regulatory transparency (international compliance alignment — NOT a secrecy score) and institutional stability (World Bank WGI, where sourced). No composite ranking — weightings depend on client facts; use get_wealth_index for a client-weighted composite. Pass cc for one jurisdiction, omit for all. Includes methodology + a de-risk note. INFORMATION, NOT ADVICE.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
Behavior5/5

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

The description adds significant behavioral context beyond the readOnlyHint annotation: it emphasizes that the output is 'INFORMATION, NOT ADVICE', includes methodology and a de-risk note, and clarifies there is no composite ranking (weightings depend on client facts). No contradiction with annotations.

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?

The description is front-loaded with the core purpose and key differentiators. While it is relatively long, every sentence adds value. Minor redundancy ('international compliance alignment — NOT a secrecy score') but overall efficient.

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?

Given no output schema, the description thoroughly covers return value content (sub-indices, methodology, de-risk note). Parameter usage is fully explained. The tool's role among siblings (distinct from get_wealth_index) is clear. No gaps for agent decision-making.

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?

With 0% schema description coverage, the description compensates well by explaining the single parameter cc: 'Pass cc for one jurisdiction, omit for all.' This adds meaning beyond the raw schema (which only shows type: string). It could optionally mention the format of cc (e.g., ISO country code), but the usage is clear.

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 provides per-pillar sub-indices (0-100) for jurisdictions, enumerates the pillars (tax efficiency, structure strength, etc.), and explicitly distinguishes it from the client-weighted composite provided by get_wealth_index. The verb 'get' plus the specific resource 'Wealth-Protection Atlas' makes the purpose unambiguous.

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?

The description provides explicit guidance: when to use this tool (for objective sub-indices) versus get_wealth_index (for client-weighted composite). It also specifies parameter usage: 'Pass cc for one jurisdiction, omit for all.' This clearly tells the agent how and when to invoke the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_wealth_indexA
Read-only
Inspect

CLIENT-WEIGHTED wealth-protection composite over the Atlas pillars. Pass your own weights (any of tax_efficiency, structure_strength, residence_clarity, crypto_clarity, succession_certainty, regulatory_transparency, institutional_stability) to score jurisdictions for a SPECIFIC client profile — there is no single public "best" ranking because the right weighting depends on the client. Omit weights for an illustrative default composite. Pass cc for one jurisdiction, or limit for the top N. Pure projection over Mirabello-verified data; illustrative comparative score, NOT advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
limitNo
weightsNo
Behavior4/5

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

Annotations indicate readOnlyHint=true, and the description adds value by stating that the projection is 'pure' over verified data and that the score is 'illustrative' and 'not advice.' This goes beyond the annotation and provides important caveats about the output's nature.

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?

The description is well-structured with key information upfront, but it is slightly lengthy. Each sentence adds value, though a minor reduction could improve conciseness without loss.

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?

Given the tool's complexity (3 params, no output schema), the description adequately covers purpose, parameters, and output nature. However, the lack of explicit return format details leaves a small gap, though the description implies a comparative score.

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

Parameters5/5

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

The input schema has 0% description coverage, but the description compensates by explaining the meaning of all three parameters: 'cc' for one jurisdiction, 'limit' for top N, and 'weights' as a customizable object with listed keys. It also clarifies behavior when parameters are omitted.

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's purpose: computing a client-weighted wealth-protection composite over Atlas pillars through custom weights. It distinguishes the tool from siblings like get_index by emphasizing that there is no single 'best' ranking, and it specifies the verb 'score jurisdictions.'

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?

The description provides clear guidance on when to use the tool: to score jurisdictions for a specific client profile with custom weights, or omit weights for a default composite. It covers the usage of each parameter but does not explicitly state when not to use it or name alternatives, though the context and sibling list imply differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_programmesA
Read-only
Inspect

List Mirabello-advised citizenship- (CBI) and residency-by-investment (RBI/golden visa) programmes, optionally filtered by type, budget, region, or max processing time.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo
regionNo
budget_maxNo
max_processing_monthsNo
Behavior3/5

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

Annotations indicate read-only, which description supports. Description adds filtering context but not details like pagination or data freshness. No contradictions.

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?

Single sentence, front-loaded with action, then filter options. No unnecessary words.

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?

Covers essential usage with optional filters. Does not mention pagination, sorting, or response format, but for a list tool with no required params and no output schema, it is adequate.

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 has 0% parameter descriptions; the description maps filter criteria to properties (type, budget to budget_max, etc.), adding meaning. However, it omits specifics like allowed region values.

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 lists programmes with specific filtering options (type, budget, region, max processing time). It uses a specific verb 'List' and identifies the resource as 'programmes', distinguishing it from siblings like get_programme.

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

Usage Guidelines3/5

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

The description hints at when to use filters but does not explicitly compare to alternatives or state when not to use this tool. It implies listing use case but lacks explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

matrimonial_regime_screenA
Read-only
Inspect

Default matrimonial-property regime for a jurisdiction (e.g. community of acquisitions vs separation of property), whether prenuptial/marital agreements can vary it, and how property splits on divorce or death. Informational — confirm with local counsel. Use ISO alpha-2.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYes
Behavior3/5

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

The description adds context that the tool is informational and covers default regimes, but does not expand beyond the readOnlyHint annotation. No contradictions found.

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?

The description is two sentences with no fluff. It front-loads the key purpose and includes critical usage guidance (ISO alpha-2) and a disclaimer.

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

Completeness4/5

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

For a simple informational tool with one parameter and no output schema, the description covers the essential aspects. It could mention what is returned, but the context is adequate.

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?

The schema has no parameter descriptions (0% coverage), but the description explains that the 'cc' parameter should be an ISO alpha-2 country code, adding essential meaning beyond the schema.

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 it covers default matrimonial-property regimes, including types, variation by agreements, and splits on divorce or death. It distinguishes itself from sibling tools by being informational and jurisdiction-specific.

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?

The description advises to confirm with local counsel and to use ISO alpha-2 codes, providing clear usage context. However, it does not explicitly differentiate from sibling tools or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

plan_pathA
Read-only
Inspect

The Mirabello Freedom Compass — ORIGIN-AWARE migration path planner. Given the client's STARTING POINT — current citizenship(s) + tax residence — plus their goal, returns ranked end-to-end options. The origin is the constraint: it sets the MOBILITY DELTA (what a passport actually ADDS over the one they hold — a Caribbean passport adds little to a US/EU citizen, lots to others), eligibility/restrictions, and tax-exit/reporting considerations (e.g. US citizenship-based tax & §877A, German AStG §6 — generic, sourced, CHECK-OFFICIAL-SOURCE). Each path carries fit_score + rationale, mobility_delta, eligibility, min_investment, processing_time. Informational only, not advice. Use for "I am a [nationality], I want [goal] — what should I do?". Pass from_citizenship (ISO alpha-2 array) + goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNo
familyNo
budget_usdNo
timeline_monthsNo
from_citizenshipYescurrent citizenship(s), ISO alpha-2 e.g. ["US"]
from_tax_residenceNoISO alpha-2 tax residence (defaults to first citizenship)
physical_presence_toleranceNo
Behavior4/5

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

Annotations already set readOnlyHint=true. The description reinforces this by stating 'Informational only, not advice.' It adds context about the types of considerations included (tax-exit, mobility delta) and that it is generic and sourced, which goes beyond the annotation.

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?

The description is informative but somewhat verbose, including marketing language like 'Mirabello Freedom Compass'. However, it front-loads the core function and provides key details. Nearly every sentence adds value, but it could be trimmed slightly.

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

Completeness3/5

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

Given the tool's complexity (7 params, nested object, no output schema), the description explains the tool's purpose and output fields (fit_score, mobility_delta, etc.) but lacks explanation of several input parameters and the exact structure of the response. It covers the core use case but misses details needed for full automation.

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 coverage is only 29% (2 of 7 params have descriptions). The description clarifies from_citizenship as ISO alpha-2 array and mentions goal, but does not explain family, budget_usd, timeline_months, or physical_presence_tolerance. It partially compensates for the main parameters but leaves others undefined.

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 it is an 'origin-aware migration path planner' that takes citizenship(s), tax residence, and a goal to return ranked options. It specifies the output fields and the usage pattern. This distinguishes it from sibling tools like find_pathways or recommend_programmes by emphasizing origin-awareness and mobility delta.

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?

The description provides a concrete usage example: 'Use for 'I am a [nationality], I want [goal] — what should I do?''. It implies when this tool is appropriate but does not explicitly mention when not to use it or compare to alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_graphA
Read-only
Inspect

RELATIONAL query over the investment-migration KNOWLEDGE GRAPH (programme entities · countries · blocs · investment thresholds · authorities · legal sources). Two modes: (1) pass id to get a single entity + its neighbours (e.g. id:"programme:dominica-cbi" or "country:GR" or "bloc:EU"); (2) pass filters to find PROGRAMMES matching constraints — type (CBI|RBI), cc, status (e.g. operational), leads_to (citizenship|residence), bloc (EU|GCC|CARICOM), max_investment_usd / min_investment_usd (FX-normalised, best-effort) — each returned with its country, options, authority and official legal source. Answers queries the flat tools cannot, e.g. "open CBI programmes leading to citizenship under $200k with their governing source". Investment figures are best-effort USD; cite the programme official_source for the authoritative amount. Information, not advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
idNoentity id for neighbours mode (programme:<id> | country:<CC> | bloc:<NAME> | authority:<slug> | source:<host>)
blocNo
typeNoCBI or RBI
limitNo
statusNo
leads_toNo
max_investment_usdNo
min_investment_usdNo
Behavior4/5

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

Annotations declare readOnlyHint=true, and the description adds valuable context: it is a read operation over a knowledge graph, investment figures are best-effort USD, and it notes 'Information, not advice.' No contradiction.

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?

Description is comprehensive but front-loaded with purpose. Each sentence adds value, though could be slightly more concise. No wasted words.

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?

Given 9 parameters and no output schema, the description adequately explains modes, expected results (single entity with neighbours or programmes with country/options/authority/source), and caveats. Missing some details about output structure but sufficient for an agent.

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?

Despite only 22% schema coverage, the description explains the two modes and defines each filter parameter (type, cc, status, leads_to, bloc, min/max investment) in context. Adds meaning beyond the minimal schema.

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?

Description starts with 'RELATIONAL query over the investment-migration KNOWLEDGE GRAPH' and specifies two modes: by id for single entity+neighbours or by filters for programmes. Clearly distinguishes itself from 'flat tools' by stating it answers complex relational queries.

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?

Provides explicit usage context: 'Answers queries the flat tools cannot' with an example (open CBI programmes under $200k). Does not explicitly say when not to use, but the sibling tools list suggests simpler alternatives exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommend_programmesA
Read-only
Inspect

Recommend a ranked shortlist of programmes for a client profile (budget, family size, mobility priority, timeline, tax goal) with reasoning. Respects closed/paused programmes.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo
tax_goalNo
budget_maxNo
family_sizeNo
mobility_priorityNo
timeline_max_monthsNo
Behavior4/5

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

Annotations already indicate readOnlyHint=true, and the description adds the behavior 'respects closed/paused programmes', which is beyond annotations. This provides useful context but could mention more about response format or error handling.

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 concise sentences: first explains action and inputs, second adds a behavioral caveat. No fluff, every word earns its place.

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

Completeness3/5

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

For a tool with 6 parameters and no output schema, the description is adequate but incomplete. It doesn't explain the return format (e.g., how reasoning is presented) or edge cases like no matching programmes.

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 0%, but the description lists most parameters (budget, family size, mobility priority, timeline, tax goal) with context, compensating well. However, the 'type' parameter is not described, and boolean meanings are implied but not explicit.

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's purpose: recommend a ranked shortlist of programmes based on client profile inputs. It distinguishes itself from siblings like list_programmes (which merely lists) and compare_programmes (which may not rank for a profile) by emphasizing personalized ranking and reasoning.

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

Usage Guidelines3/5

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

The description implies usage for personalized recommendations but does not explicitly state when to use this tool versus alternatives like check_visa_free or list_programmes. No direct exclusions or when-not instructions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

residence_evidence_checklistA
Read-only
Inspect

Tax-residence TESTS + evidence factors for a jurisdiction: day-count thresholds, statutory test (e.g. UK SRT), connecting/ties factors (permanent home, centre of vital interests, habitual abode, family, accommodation, economic links), how residence ceases, and the documentary evidence that proves residence start/cease. Tests and factors only — NOT a residence determination. Use ISO alpha-2.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYes
Behavior4/5

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

Annotations already indicate readOnlyHint=true, so no destructive actions. The description adds behavioral context by detailing the content returned (tests, factors, documentary evidence) and clarifying the scope (not a residence determination). This goes beyond the annotation.

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: first describes content thoroughly, second clarifies scope. No redundant words, information is front-loaded and every sentence is essential.

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?

Given the tool has one parameter, no output schema, and read-only annotation, the description adequately explains what the tool returns. It could be slightly improved by indicating the output format (e.g., list or structured data), but it is sufficient for an agent to understand the tool's purpose.

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

Parameters5/5

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

Schema parameter 'cc' has no description and 0% coverage. The description adds the critical detail 'Use ISO alpha-2', specifying the format and purpose of the parameter. It fully compensates for the lack of schema description.

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 returns tax-residence tests and evidence factors for a jurisdiction, listing specific content like day-count thresholds and connecting factors. It distinguishes from siblings by explicitly stating it is NOT a residence determination, and specifies input as ISO alpha-2 country code.

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?

The description provides clear context on when to use the tool by stating 'Tests and factors only — NOT a residence determination', which helps exclude use for determination tasks. However, it does not explicitly name alternative tools for determination, so guidance on when not to use is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_propertiesA
Read-only
Inspect

Search Mirabello-advised investment real estate that QUALIFIES for a citizenship- or residency-by-investment programme. Filter by country, programme (e.g. "grenada-citizenship-by-investment", "greece-golden-visa"), type (CBI|RBI), budget_max (USD, FX-normalised best-effort), beds_min, listing_type (villa|apartment|residence|plot), sale_status. Returns priced listings with the qualifying programme, availability, and the Mirabello enquiry route. Mirabello Consultancy is broker of record on every listing — there is no direct developer contact; route buyers via create_enquiry. Indicative figures; book a consultation to confirm.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo
limitNo
countryNo
beds_minNo
programmeNo
budget_maxNomax price in USD (best-effort FX)
sale_statusNo
listing_typeNo
Behavior5/5

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

Beyond readOnlyHint, the description reveals that returns include pricing, programme, availability, and enquiry route; also notes no direct developer contact, indicative figures, and broker role. Adds significant context.

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?

Three information-dense sentences: purpose, filters, return content. No wasted words, good front-loading.

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?

Covers purpose, inputs, outputs, and business context (Mirabello as broker). Without output schema, description still gives clear return expectations.

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?

With only 13% schema coverage, the description adds meaning for many parameters: lists filters, example values (programmes, listing types, sale_status), and explains budget_max as best-effort FX. Misses limit parameter.

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 that the tool searches for Mirabello-advised investment real estate qualifying for citizenship/residency programmes, with specific filters. It distinguishes from siblings like get_property by focusing on qualifying properties and listing filters.

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 implies when to use: to find qualifying properties and mentions that after finding, route buyers via create_enquiry. It does not explicitly list alternatives or when not to use, but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

subscribe_changesAInspect

Subscribe to verified programme-change alerts (price changes, launches, corrections — each linked to the official source). Agents: provide webhook_url (HTTPS POST on each change). Humans: provide email (explicit consent required). Optional programme_ids filter. Returns a subscription id + unsubscribe URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoemail for change alerts (requires consent:true)
consentNorequired true when email is given (GDPR)
websiteNoleave blank (spam honeypot)
webhook_urlNoHTTPS endpoint to POST change entries to (for agents/systems)
programme_idsNooptional filter — only these programmes
Behavior4/5

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

The description adds significant behavioral context beyond readOnlyHint=false and openWorldHint=true: it mentions that alerts are verified, that consent is required (GDPR), that website is a spam honeypot, and that it returns a subscription id and unsubscribe URL. This is valuable for a mutation tool.

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 that are information-dense and well-structured. The most important info (what it does and key parameters) comes first, and every phrase 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?

The description covers all 5 parameters, explains return values (subscription id and unsubscribe URL), and mentions consent and spam protection. No apparent gaps for a tool with no output schema.

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

Parameters5/5

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

With 100% schema coverage, the description still adds crucial meaning: it explains the email vs webhook_url choice, that consent must be true when email is provided, and that website is a honeypot to leave blank. This goes beyond the schema's basic descriptions.

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 'Subscribe to verified programme-change alerts' with specific change types (price changes, launches, corrections) and distinguishes it from sibling tools like get_recent_changes. The verb 'subscribe' with resource 'programme-change alerts' is specific and unambiguous.

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?

The description provides explicit guidance for both agent and human users: agents should provide webhook_url, humans must provide email with explicit consent, and the optional programme_ids filter is mentioned. It clearly differentiates between two usage modes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

succession_conflict_mapA
Read-only
Inspect

Cross-border succession conflict-of-laws position for a jurisdiction: which law governs succession (habitual residence / nationality / situs of assets), EU Succession Regulation 650/2012 (Brussels IV) applicability and whether a professio juris (choice of national law in a will) is available, any clawback of lifetime gifts into reserved shares or renvoi, plus trust/foundation interaction and the headline cross-border planning point. Informational, not advice. Use ISO alpha-2.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccYes
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description adds 'Informational, not advice' to clarify no advisory output. This is relevant context beyond annotations, though no further behavioral traits (e.g., error behavior, data sources) are disclosed.

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?

The description is a single sentence that front-loads the purpose and lists covered topics. While informative, it is somewhat dense with multiple clauses; a slight restructuring could improve readability, but it remains efficient.

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 complex tool with no output schema, the description covers key aspects of what the tool returns (governing law, regulation, professio juris, clawback, trust interaction, planning point). It is sufficiently complete for the tool's scope, though output format is not described.

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

Parameters5/5

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

The sole parameter 'cc' has 0% schema description coverage, but the description adds critical instruction: 'Use ISO alpha-2.' This tells the agent the expected format, which is essential for correct invocation.

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 specifies the exact purpose: mapping cross-border succession conflict-of-laws for a jurisdiction. It lists specific topics covered (governing law, EU regulation, professio juris, clawback, trust interaction, planning points), distinguishing it from sibling tools like forced_heirship_risk or matrimonial_regime_screen.

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

Usage Guidelines3/5

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

The description implies use for obtaining conflict-of-laws positions but does not explicitly state when to use or avoid this tool versus alternatives. It mentions 'Informational, not advice' but lacks guidance on prerequisites or comparisons to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

withholding_mapC
Read-only
Inspect

Treaty withholding-tax rates (dividends/interest/royalties) for a from→to corridor.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYes
fromYes
Behavior3/5

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

Annotations declare readOnlyHint: true; the description does not contradict this. It adds context about the nature of the data (treaty rates for specific income types) but does not disclose other behavioral traits like required country code format or whether historical rates are included.

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 key information. Efficient but could benefit from brief structure (e.g., listing income types). No wasted words.

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

Completeness2/5

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

Without output schema and with 0% parameter coverage, the description should provide more context on what the tool returns (e.g., a single rate or a map of rates, response structure). It is incomplete for a meaningful agent invocation.

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

Parameters2/5

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

Schema coverage is 0% - no parameter descriptions. The description implies 'from' and 'to' are countries/corridors, but does not specify allowed values or format. This adds minimal meaning beyond the schema.

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 specifies 'treaty withholding-tax rates' for dividends, interest, royalties, and mentions 'from→to corridor', clearly indicating it returns rates for a specific country pair and income type. It distinguishes from siblings like 'compare_treaty_position' but could be more explicit about the output format.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus siblings such as 'compare_treaty_position' or 'get_country_tax'. No mention of prerequisites, limitations, or alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources