Ex2 catalogue
Server Details
Plans, prices and domain names of Ex2, web host from Québec: compare plans, check domains.
- Status
- Healthy
- Uptime
- 100.0% over 20 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 7 tools
The seven tools cover clearly separate needs: browsing lines, browsing plans, drilling into one plan, comparing plans, domain availability, domain pricing, and migration logistics. The only mild overlap is that check_domain returns extension prices that get_domain_pricing also returns, so an agent could occasionally pick the wrong one for pricing-only lookups. Otherwise the descriptions make the boundaries explicit.
Every tool follows a clean verb_noun snake_case pattern (check_domain, list_plans, get_plan, compare_plans, quote_migration). No camelCase or stylistic outliers, and verbs accurately signal whether the tool lists, gets, compares, or checks.
Seven tools is a tight, well-scoped set for a hosting-catalogue server; each tool corresponds to a distinct user question (what lines exist, what a plan costs, is this domain free, what does migration cost). No filler tools.
The catalogue surface is coherent and end-to-end for information gathering: discover lines, list plans, get plan details, compare, price domains, check availability, and quote migration. The main gap is that ordering is only offered as outbound links rather than any purchase/cart or account operation, so an agent cannot complete a buying workflow. Fixing that would need at most one or two additional tools.
Available Tools
7 toolscheck_domainCheck an Ex2 domain nameARead-onlyIdempotentInspect
Whether a domain name can be registered at Ex2 right now (live WHOIS, results kept 5 minutes), with the one-year register, transfer and renewal prices of its extension and the link to order it (or to transfer it, when taken). One name per call; limited to 120 checks per 10 minutes.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of names, features, specifications and links: fr for French speakers. | en |
| domain | Yes | The domain name to check, e.g. "mybakery.ca" (a URL or www. prefix is fine). | |
| currency | No | Currency of the prices: EUR for France and Europe, CAD for Canada, USD elsewhere. | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, idempotent, openWorld, non-destructive), the description discloses live WHOIS lookups, a 5-minute result cache, and a rate limit of 120 checks per 10 minutes, plus the conditional behavior of returning a transfer link when the domain is taken. These are exactly the operational traits annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence leads with the availability answer and folds freshness, rate limits and outputs into compact parentheticals. No filler or repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so: registrability, one-year register/transfer/renewal prices for the extension, and the order or transfer link. Combined with 100% schema coverage for the three parameters, an agent has everything needed to call and interpret it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so lang, domain and currency are already well documented in the schema. The description only adds 'one name per call' for the domain parameter and says nothing about lang or currency semantics, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: checking whether a domain can be registered at Ex2, plus the side outputs (prices, order/transfer link). It is distinguishable from siblings like get_domain_pricing because it centers on live WHOIS availability, though it never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied (check availability before ordering) and the practical constraint 'one name per call; limited to 120 checks per 10 minutes' is given. However, there is no explicit guidance on when to prefer this over get_domain_pricing or the plan-comparison siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_plansCompare Ex2 plansARead-onlyIdempotentInspect
Two to 10 plans side by side: each plan's prices, features and specifications, and a comparison with one row per specification and a value per plan. Plans of one product line compare row by row; plans of different lines share few rows.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of names, features, specifications and links: fr for French speakers. | en |
| currency | No | Currency of the prices: EUR for France and Europe, CAD for Canada, USD elsewhere. | USD |
| plan_ids | Yes | Plan ids to compare. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safe read/idempotent/no-destructive profile and closed-world scope, so the description adds value by disclosing the output structure (row per specification, value per plan) and the cross-product-line behavior where plans 'share few rows' – useful expectation-setting 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences, front-loaded with the core comparison behavior and the count constraint, then the return shape and the line-mixing caveat. No filler and nothing redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-shape burden and does so reasonably ('one row per specification and a value per plan'), while annotations cover safety and scope. Minor gaps remain about pagination or performance for 10 plans, but an agent has enough to call and interpret it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so lang, currency and plan_ids are fully documented in the schema, including min/max and uniqueness. The description only restates the 2-10 count and adds no format or selection detail for the two enum parameters, so it doesn't meaningfully exceed the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (compare) and resource (plans) with an explicit scope constraint ('Two to 10 plans side by side'). Combined with the output shape (one row per specification, a value per plan), an agent can distinguish this from get_plan (single) and list_plans (discovery) without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The '2 to 10 plans side by side' framing makes the use case clear (multi-plan comparison) and the note about same-line vs cross-line plans gives practical guidance on which plan_ids to combine. It stops short of naming get_plan/list_plans as alternatives or stating exclusions, so it is clear context rather than full routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_domain_pricingGet Ex2 domain pricesARead-onlyIdempotentInspect
One-year prices to register, transfer and renew a domain name, per extension, with the link to order one. Pass tlds with the extensions you need (e.g. ["com", "ca", "fr"]); without it, every extension Ex2 sells, which is a long list.
| Name | Required | Description | Default |
|---|---|---|---|
| tlds | No | Domain extensions, with or without the leading dot. | |
| currency | No | Currency of the prices: EUR for France and Europe, CAD for Canada, USD elsewhere. | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds useful behavior beyond that: what the values represent (one-year register/transfer/renew prices) and the practical consequence of omitting tlds (a very long result list).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler. The output content is front-loaded and the parameter guidance follows immediately after.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only, two-parameter reference tool with no output schema, the description adequately conveys what is returned (per-extension register/transfer/renew prices and order links) and how to narrow results. It is complete enough to call correctly, though it says nothing about result size limits or pagination.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description goes slightly beyond by giving a concrete tlds example (["com", "ca", "fr"]) and spelling out the default-when-omitted behavior, which the schema alone does not state.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get prices) and resource (domain registration/transfer/renewal) with scope detail: one-year prices, per extension, plus order links. An agent can tell this apart from check_domain or compare_plans without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly explains the condition that selects the broad vs narrow behavior: pass tlds for specific extensions, omit it to get all extensions (and it warns that this is a long list). It does not name alternatives like check_domain for availability, but the context of use is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_planGet an Ex2 planARead-onlyIdempotentInspect
One plan in detail: prices per billing cycle and first-year discount, features, and its full specification table (disk space, sites, mailboxes, backups, support...).
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of names, features, specifications and links: fr for French speakers. | en |
| plan_id | Yes | Plan id, from list_product_lines or list_plans. | |
| currency | No | Currency of the prices: EUR for France and Europe, CAD for Canada, USD elsewhere. | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description's added value is describing the return payload — pricing, features, spec table — which is genuinely useful since there is no output schema. It does not add auth, rate-limit, or caching behavior, keeping it at a solid 4 rather than 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, dense sentence that front-loads the core purpose and then enumerates the payload. No filler, no restatement of the title or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only detail-fetch with no output schema, the description supplies exactly the missing piece — what the response contains. Safety is covered by annotations and all parameters are documented in the schema, so nothing an agent needs to call this correctly is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and all three parameters (plan_id, lang, currency) are fully documented with enums and defaults in the schema. The description adds nothing about parameters, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource (a single Ex2 plan) and enumerates the returned content: per-cycle prices, first-year discount, features, and the specification table. It implicitly contrasts with list_plans by saying 'one plan in detail', but it never names the siblings (compare_plans, list_plans) explicitly, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is the tool for fetching one plan's details, and the schema note 'plan id, from list_product_lines or list_plans' hints at a workflow, but that lives in the schema, not the description. There is no explicit when-to-use / when-not-to-use and no routing to compare_plans for multi-plan comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_plansList Ex2 plansARead-onlyIdempotentInspect
Plans with their prices and main features. Pass line to get one product line (recommended); without it, every plan of every line (about 10,000 tokens).
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of names, features, specifications and links: fr for French speakers. | en |
| line | No | Product line id, from list_product_lines. | |
| currency | No | Currency of the prices: EUR for France and Europe, CAD for Canada, USD elsewhere. | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive, so safety is covered. The description adds a genuinely new behavioral trait the annotations lack: the token cost of the unfiltered call and the scoping that avoids it. Return structure is still unspecified, but the important operational detail is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero filler, with the resource summary first and the scoping/cost tradeoff immediately after. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-optional-param, no-output-schema listing tool, the description covers what is returned, the recommended filter, and the cost of not filtering. It does not spell out the shape of the returned plan objects, but that is a minor residual gap given how much it already covers.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, and the description goes beyond the schema by explaining the practical effect of the optional 'line' parameter (all lines when omitted, at high token cost) and implicitly steering toward list_product_lines for valid ids. It adds advice the enum values alone do not convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: lists plans with their prices and main features. Clearly distinct from sibling get_plan (single plan) and compare_plans, though it never explicitly names those siblings. A reader knows what it returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit recommendation ('Pass line ... recommended') and states the consequence of omitting it (every plan of every line, ~10,000 tokens). It does not name alternative tools such as get_plan for a single lookup, so the routing guidance is one-sided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_product_linesList Ex2 product linesARead-onlyIdempotentInspect
The product lines Ex2 sells (green shared hosting, WordPress, WooCommerce, email, VPS, dedicated servers, ...), each with its page and the ids of its plans. Start here to find the line that fits a need.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of names, features, specifications and links: fr for French speakers. | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, non-open-world. The description adds behavioral value by disclosing the returned shape of each entry ('each with its page and the ids of its plans'), which tells the agent this is a lightweight index rather than full plan data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the resource identity, followed by the payload contents and the usage cue. No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by saying each entry carries its page and plan ids. For a zero-required-parameter discovery call whose annotations cover the safety profile, this is nearly complete; only pagination/size expectations are unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single lang parameter is fully documented in the schema, so the description needs to add nothing. Baseline 3 applies; the description does not elaborate on language semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('product lines Ex2 sells') and enumerates the concrete values so an agent can match a user need to this tool by keyword. It does not explicitly distinguish itself from siblings like list_plans, but the scope ('lines', not plans) is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Start here to find the line that fits a need' gives clear entry-point context for discovery. It does not name the alternatives (list_plans, get_plan) or state when NOT to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_migrationQuote moving a site to Ex2ARead-onlyIdempotentInspect
What moving a site to Ex2 costs (nothing: Ex2's team does it, free with a hosting plan), how long it takes (24 hours for a simple site, 48 at most), what moves (files, databases, email), what the team needs, what cannot move, and how to ask for it.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of names, features, specifications and links: fr for French speakers. | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds useful content scope (free of charge, 24–48h, covers what cannot move), but it never clarifies whether the response is a static informational page or a personalized quote, which is the main behavioral ambiguity given the 'quote' naming.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the highest-value facts (cost, duration) front-loaded and no filler. The long parenthetical enumeration is dense but run-on enough that it reads as a list stuffed into one sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one optional param, full schema coverage, annotations, and no output schema, the description needs only to tell the agent what the answer contains — which it does comprehensively. The remaining gap is the return shape (static doc vs. generated quote), which matters somewhat given the tool's name.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one optional parameter (lang) and schema description coverage is 100%, with the enum documented in the schema itself. The description says nothing about language handling, so baseline 3 applies — the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates exactly what the tool answers: cost, timeline (24–48h), what moves (files, databases, email), requirements, exclusions, and how to request the migration. That is a specific resource with concrete scope, and the sibling names (pricing, plans, domain checks) make it obvious this is the migration-questions tool rather than a pricing tool. It stops short of a clean opening verb like 'Returns', so a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the content scope — an agent asking about moving a site will recognize this as the right tool. However, it never explicitly routes against siblings such as compare_plans or get_plan, nor does it state when this tool is the wrong choice (e.g. for pricing-only questions).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Added
quote_migration
6 tool updates
- First observed
check_domain - First observed
compare_plans - First observed
get_domain_pricing - First observed
get_plan - First observed
list_plans - First observed
list_product_lines
Related MCP Connectors
- Ex2 accountOAuthcom.ex2
Your Ex2 hosting in your AI assistant: order, renew, DNS, mail, WordPress, backups, with consent.
Compare domain registration and renewal prices across registrars and check exact-name availability.
Domain availability and prices from 40+ registrars, name checks, DNS setup, and a domain broker
Compare domain prices across 145+ registrars and 1,100+ TLDs, find promo codes, check availability.
Related MCP Servers
AlicenseNot gradedqualityAmaintenanceEnables AI assistants to compare live domain registration, renewal, and transfer prices across many registrars and TLDs, find promo codes, and check domain availability.24 npmMIT- AlicenseAqualityDmaintenanceFast domain availability checker that searches across multiple registrars (Porkbun, Namecheap) and protocols (RDAP, WHOIS) to find available domains, compare pricing, get suggestions, and check social media username availability.7254 npm28MIT
- AlicenseNot gradedqualityDmaintenanceEnables checking domain availability and registration prices across multiple TLDs and providers. Users can find available domain names and compare pricing through natural language.4 npm10MIT
- AlicenseAqualityCmaintenanceEnables users to brainstorm brandable domain names, check live availability and verified pricing across TLDs, and inspect DNS, SSL, and RDAP/WHOIS details without registering or buying anything.7MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.