site
Server Details
M365 Migration Cost: the site's own MCP server — enquiry (enquiry = a human handoff, not a...
- Status
- Healthy
- Uptime
- 99.8% over 40 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
Each tool has a clearly distinct role in a linear flow: enquiry_describe explains the process, enquiry_fields enumerates the input schema, and submit_enquiry performs the action. There is no overlap in purpose, and the descriptions even sequence them ('Read first', 'Pass answers to submit_enquiry'), making misselection very unlikely.
All three names are snake_case and share the domain word 'enquiry', which is a strong consistent signal. The only minor deviation is ordering: submit_enquiry is verb-first while enquiry_describe and enquiry_fields are noun-first, but the pattern remains readable and predictable.
Three tools is on the lean side but each earns its place in a tightly scoped single enquiry workflow (describe, discover fields, submit). Nothing redundant is included, though the surface is narrow enough that it doesn't demonstrate broader utility.
For its stated purpose the lifecycle is well covered: the two-step submit_enquiry handles the required preview/consent/confirmation-token flow, and enquiry_describe plus enquiry_fields give the missing context. There is no way to check enquiry status or retrieve the form for other products, but those gaps are minor given the single-flow scope.
Available Tools
3 toolsenquiry_describeWhat you get: an ENQUIRY with a human (not a purchase, not a guaranteed quote)AInspect
Read first. States plainly what submit_enquiry does on M365 Migration Cost: it starts an enquiry with human providers who quote directly. Nothing is bought, ordered or paid; no quote is guaranteed; it is free. Also returns who receives the details, the consent wording, and how the person confirms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it states that nothing is bought, ordered, or paid, that no quote is guaranteed, that it is free, and that it returns who receives details, consent wording, and confirmation. This goes well beyond a mere summary of the tool's action.
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?
The description is short, front-loaded with the 'Read first' instruction, and every sentence contributes meaningful caveats or return-value information. There is no redundant or filler content.
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 zero-parameter informational tool, the description covers purpose, usage timing, behavioral caveats, and what information is returned. It does not detail the exact response format, but that is likely unnecessary for this simple reference tool.
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?
The tool has zero parameters and schema coverage is 100%, so the baseline is 4. The description appropriately provides no parameter-specific detail because there are no parameters to document.
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 identifies the tool as a read-first explainer for submit_enquiry on M365 Migration Cost, using the specific verb 'states plainly' and naming the exact resource and context. It distinguishes itself from submit_enquiry by clarifying the tool is informational, not the action itself.
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 imperative 'Read first' clearly tells the agent to consult this tool before using submit_enquiry. It also explains what submit_enquiry is not (no purchase, no guaranteed quote), which helps prevent misuse, though it does not explicitly compare against the sibling enquiry_fields.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enquiry_fieldsThe questions the enquiry asksAInspect
Every field of the M365 Migration Cost enquiry: key, label, type, whether required, help text and the allowed options where there are any. Pass answers to submit_enquiry keyed by field key.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It makes clear what data is returned (keys, labels, types, required flags, help text, options) and implies a read-only metadata lookup, but it does not explicitly state absence of side effects, authentication requirements, or error behavior.
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?
One dense, well-structured sentence front-loads the resource and then enumerates the returned field properties, ending with practical downstream guidance. No unnecessary words and every clause contributes meaning.
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 zero-parameter metadata lookup with no output schema, the description fully specifies what will be returned and how the result should be used with submit_enquiry. The lack of explicit mention of enquiry_describe is a minor omission and does not undermine the tool's completeness.
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?
There are zero parameters, so the description appropriately provides no parameter instructions. The relevant cross-tool guidance about passing answers to submit_enquiry keyed by field key adds useful context beyond the empty schema, matching the baseline for a no-parameter tool.
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 that the tool returns every field of the M365 Migration Cost enquiry and enumerates the specific properties included (key, label, type, required, help text, allowed options). It clearly distinguishes itself from submit_enquiry by the closing instruction, though it does not explicitly contrast with enquiry_describe.
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 description explains that answers should be passed to submit_enquiry keyed by field key, establishing a clear downstream usage context for the tool. It does not explicitly state when not to use this tool or compare against enquiry_describe, so it falls just 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.
submit_enquirySubmit an ENQUIRY to human providers (two steps; not a purchase)AInspect
Submits an enquiry to M365 Migration Cost — NOT a purchase, NOT a guaranteed quote. Step 1: call with the answers (keyed by field key from enquiry_fields) and consent=true; it validates and returns a summary, the consent line and a confirmation token — show the person the summary and the consent line. Step 2: only if the person agrees, call again with the same answers, consent=true and the confirmation token; the enquiry is then submitted, and the person receives an email with a link they must click before any provider sees it. Consent means the person has read and agreed to: "Send my contact details to up to three IT support and cloud migration providers, chosen by M365 Migration Cost, who'll contact me directly. I'll be emailed each firm's name as my details go to it, and can stop any more firms getting them."
| Name | Required | Description | Default |
|---|---|---|---|
| answers | Yes | the person's answers, keyed by field key | |
| consent | Yes | true only when the person has agreed to: Send my contact details to up to three IT support and cloud migration providers, chosen by M365 Migration Cost, who'll contact me directly. I'll be emailed each firm's name as my details go to it, and can stop any more firms getting them. | |
| confirmation | No | the confirmation token from step 1, after the person has approved the summary |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and discharges it: it discloses that step 1 returns a summary, consent line and confirmation token, that the enquiry is only submitted on step 2, and that a double opt-in email must be clicked before any provider sees the data. It also spells out what consent actually authorizes (contact details to up to three providers).
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?
The Step 1/Step 2 structure is front-loaded and easy to follow, and the length is justified by the two-phase protocol. The one cost is the verbatim consent paragraph, which largely duplicates the schema's consent description, adding redundancy rather than new information.
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 complex two-step tool with a nested answers object, no output schema and no annotations, the description is complete: it covers the call sequence, return values, consent semantics, and the downstream email-verification effect. An agent has everything needed to invoke both steps correctly.
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, but the description adds relational meaning beyond the schema: answers are keyed by field keys drawn from enquiry_fields, consent must be true at both steps, and confirmation is only supplied on step 2 after approval. This clarifies how the three fields interact across the flow.
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 and resource ("Submits an enquiry to M365 Migration Cost") and immediately scopes it with "NOT a purchase, NOT a guaranteed quote." It also references the sibling enquiry_fields as the source of the answer keys, letting an agent place it among the enquiry_* tools without opening a 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?
Gives an explicit two-step procedure with the exact condition that selects each call: Step 1 with answers+consent, then Step 2 only "if the person agrees" with the confirmation token. It also tells the agent what to show the person between steps, leaving nothing to inference.
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
- Changed
submit_enquiry1 field changed- changed
Input schema / properties / consent / descriptionPrevious value: -"true only when the person has agreed to: Send my contact details to up to three relevant Microsoft 365 migration partners, chosen by M365 Migration Cost, who'll contact me directly. I'll be emailed each firm's name as my details go to it, and can stop any more firms getting them."New value: +"true only when the person has agreed to: Send my contact details to up to three IT support and cloud migration providers, chosen by M365 Migration Cost, who'll contact me directly. I'll be emailed each firm's name as my details go to it, and can stop any more firms getting them."
1 tool update
- Changed
submit_enquiry1 field changed- changed
Input schema / properties / consent / descriptionPrevious value: -"true only when the person has agreed to: Happy for my details to go to relevant Microsoft 365 migration partners, who'll contact me directly."New value: +"true only when the person has agreed to: Send my contact details to up to three relevant Microsoft 365 migration partners, chosen by M365 Migration Cost, who'll contact me directly. I'll be emailed each firm's name as my details go to it, and can stop any more firms getting them."
3 tool updates
- First observed
enquiry_describe - First observed
enquiry_fields - First observed
submit_enquiry
Related MCP Connectors
Site Investigation Cost: the site's own MCP server — enquiry (enquiry = a human handoff, not a...
Underpinning Costs: the site's own MCP server — enquiry (enquiry = a human handoff, not a...
Sponsor Licence Cost: the site's own MCP server — enquiry (enquiry = a human handoff, not a...
Cyber Essentials Cost: the site's own MCP server — enquiry (enquiry = a human handoff, not a...
Related MCP Servers
- AlicenseAqualityBmaintenanceCloud cost management MCP server for Azure. Ask your AI about your cloud bill.1556 npm1MIT
- AlicenseNot gradedqualityDmaintenanceProduction-grade MCP server for enterprise Azure cost optimization, enabling spend anomaly detection, multi-tenant auditing, budget validation, and compliance-aware recommendations.1MIT
- AlicenseBqualityDmaintenanceMCP server for Maasy AI Marketing Copilot2140 npmMIT
- FlicenseBqualityDmaintenanceAn MCP server that gives Claude live access to Azure pricing and cost data — retail prices, VM comparisons, reservation analysis, architecture estimates, and actual subscription spend.9-
Glama MCP Gateway
Add one secure layer between your agents and this server.