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 3.9/5 across 11 of 11 tools scored. Lowest: 2.9/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose, from booking consultations to comparing programmes, estimating costs, and retrieving recent changes. There is no overlap or ambiguity between tools.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., book_consultation, list_programmes, get_recent_changes), making them predictable and easy to understand.

Tool Count5/5

With 11 tools, the server covers a comprehensive range of functions for an investment migration consultancy without being overwhelming or sparse.

Completeness5/5

The tools cover the full lifecycle of a client's journey: exploring programmes, comparing them, estimating costs, checking visa-free access, processing times, recent changes, booking consultations, and learning about the company. No obvious gaps.

Available Tools

11 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")
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")
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?

Annotations indicate readOnlyHint=false and openWorldHint=true. The description adds that it delivers the enquiry to Mirabello and returns a tracked booking URL, disclosing the side effect and return value 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?

Two sentences with no wasted words. The first sentence states the action, the second lists requirements and outcome. Front-loaded and efficient.

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 18 parameters and no output schema, the description is minimal. It covers core purpose and return value but does not elaborate on how the many other parameters are used or potential errors. Adequate for a straightforward booking tool but could be more detailed.

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 94% schema coverage, the description adds meaning by summarizing required inputs (email, program interest/message, consent) and clarifying that consent must be true to deliver. It also distinguishes the spam honeypot field implicitly via 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 'Book a free consultation' with a specific verb and resource. It distinguishes itself from sibling tools, which are informational or comparative, by being the only action-oriented tool for booking.

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 implicitly indicates when to use (for booking a consultation) but does not explicitly state when not to use or mention alternatives. The prerequisites (email, program interest, consent) are given, but no direct comparison with sibling tools.

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

check_visa_freeC
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
programme_idYes
Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description implies a read-only operation ('check'). The description does not add additional behavioral context, but it does not contradict the annotations either.

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, efficient and to the point. It front-loads the key information without unnecessary 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?

Given no output schema and no parameter descriptions, the description is incomplete. It does not explain what the output contains, how to interpret results, or what a 'programme passport' is, leaving significant gaps for the agent.

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 0%, and the tool description does not explain the 'programme_id' parameter. The description adds no meaning beyond the schema, which only defines it as a string.

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 that the tool provides visa-free count, Henley rank, and access to key destinations. It is specific about the resource (programme passport) and the data returned, distinguishing it from sibling tools like 'compare_programmes' or 'recommend_programmes'.

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?

The description lacks any guidance on when to use this tool versus alternatives. No explicit context or exclusions are provided, leaving the agent to infer usage from the tool name and purpose alone.

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.

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.

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_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_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, and the Mirabello programme page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description need not cover safety. It adds value by listing the content returned (routes, fees, processing, etc.), providing good behavioral context 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that efficiently conveys the tool's purpose and output content. It could be slightly restructured for readability, but it is concise and informative.

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 only one parameter, no output schema, and a simple read-only behavior, the description covers the key aspects: what it returns (categories) and the id format. It is sufficient for an agent to understand the tool's role.

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% on the id parameter, but the description provides concrete examples of valid id values ('dominica-cbi', 'greece-gv'), which adds meaning and clarifies the expected format.

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 retrieves full details for a single programme by id, with specific examples like 'dominica-cbi'. This distinguishes it from sibling tools such as 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 implies use when you have a programme id and need comprehensive info, but does not explicitly state when not to use it or mention alternatives like list_programmes for discovering ids.

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. The freshest, primary-source-verified record — use for "what changed recently / latest" questions.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
Behavior4/5

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

Annotations already indicate readOnlyHint=true, so the agent knows it's safe. The description adds that the record is 'freshest, primary-source-verified', providing additional reliability context 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?

The description is two sentences, concise and front-loaded with key details. Every sentence adds value without redundancy.

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 the output well (recent changes + current status counts) but is incomplete because it omits explanation of the 'limit' parameter. Without output schema or further detail, the agent may not correctly shape input parameters.

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 schema has one parameter 'limit' with no description and 0% coverage. The tool description does not explain this parameter, leaving the agent uninformed about how to control result size or pagination.

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 recent material changes across programmes with specific examples (launches, closures, etc.) and current status counts. It includes a usage hint for 'what changed recently/latest' questions, effectively distinguishing it from siblings like list_programmes 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 Guidelines4/5

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

The description explicitly recommends using this tool for questions about recent changes. It does not specify when not to use it, but the context of sibling tools implies this is the only change-focused tool, so the guidance is clear.

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.

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.

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