site
Server Details
Taxooor: the site's own MCP server — dataset, enquiry (enquiry = a human handoff, not a...
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 10 tools
The dataset tools are mostly distinct: columns (schema), provenance (metadata), stats (numeric aggregates), top (extremes), and the three filtering tools (row, search, compare) have overlapping mechanics but clearly stated boundaries. The enquiry tools (describe, fields, submit) are unambiguous and their ordering guidance helps. Minor risk of confusing dataset_row, dataset_search, and dataset_compare as all filter rows, but descriptions distinguish exact match, contains, and multi-value ordering.
Seven tools share the dataset_ prefix, and the enquiry tools mostly use enquiry_ or submit_enquiry. The set is snake_case throughout and readable, but the mix of noun-only (dataset_columns), verb-like (dataset_compare), and verb-first (submit_enquiry) patterns is a minor deviation from a single predictable convention.
Ten tools is well-scoped for a dataset Q&A plus enquiry submission server. The dataset domain gets a focused set of seven tools that each cover a distinct query type, and the enquiry flow uses three tools that map cleanly to describe, discover fields, and submit. No tool feels redundant.
The dataset surface covers schema discovery, provenance, exact/contains/multi-value filtering, aggregation, and top-N queries — essentially all a read-only dataset consumer needs. The enquiry workflow covers orientation (enquiry_describe), field schema (enquiry_fields), and a two-step submission (submit_enquiry), leaving no obvious dead ends for the stated purpose.
Available Tools
10 toolsdataset_columnsDataset columns and shapeAInspect
The columns, which of them are numeric, the row count and the provenance banner of the Taxooor dataset. Call this first to learn the schema.
| 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 behavioral burden. It discloses the returned contents (columns, numeric flags, row count, provenance banner), which implies a read-only introspection call, but it never states permissions, cost, caching, or that it is side-effect free, so key behavioral traits remain inferred.
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 with the returned artifacts front-loaded and the calling instruction second; nothing is wasted. The enumeration in the first sentence is slightly clunky but functionally efficient.
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 discovery tool with no output schema and no annotations, the description supplies the key missing information: an inventory of what comes back and the directive to call it first. That covers the agent's decision needs, though a hint about output shape or relation to sibling provenance/stat tools would make it fully self-sufficient.
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 takes zero parameters, so there is no parameter semantics to document and the baseline of 4 applies. The description correctly does not invent parameter detail.
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 names a specific verb-less but concrete introspection result set: columns, which are numeric, row count, and the provenance banner for the 'Taxooor dataset'. This is enough for an agent to know it is a schema-discovery call, though it does not explicitly disambiguate from siblings like dataset_stats or dataset_provenance, which appear to overlap on the row-count/provenance content.
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?
'Call this first to learn the schema' gives an explicit sequencing rule and a clear purpose trigger. It does not, however, state when NOT to use it or point to an alternative when a different facet (e.g. stats or provenance) is wanted, so the routing guidance stops short of the top score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_compareCompare rows side by sideBInspect
The rows of the Taxooor dataset whose column is any of the given values, in the order given — for "X vs Y" questions.
| Name | Required | Description | Default |
|---|---|---|---|
| column | Yes | ||
| values | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it only discloses one trait: result order mirrors the input value order. It says nothing about read-only semantics, what happens to values with no matching rows, how the rows are combined into a comparison view, or any limits (the 2–10 value cap lives only in the schema).
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 tight sentence with no filler, and the ordering behavior that defines the comparison is placed before the audience hint. The phrasing is slightly stilted ('The rows of the ... dataset whose column is any of ...') but nothing is wasted.
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 simple two-parameter filter tool this covers purpose, filter semantics, and ordering, which is close to adequate. But with no output schema and no annotations, the description should have said what comes back (row objects with all columns? just the compared column?) and whether unmatched values are silently dropped.
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 0%, so the description must carry the parameters, and it does explain the core semantics of both: 'column' selects the column and 'values' is the set to match against. However, it omits constraints the agent would otherwise miss (2–10 values, min length, no additional properties) and does not clarify matching precision (exact vs partial) or case sensitivity.
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 names the resource (rows of the Taxooor dataset), the filter mechanism (column matching any of the given values), and the intent (side-by-side 'X vs Y' comparison via output ordering). It is a noun-phrase rather than a verb phrase, and it never names the closest siblings (dataset_row, dataset_search) to distinguish itself, but the operation 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?
It explicitly scopes the tool to "X vs Y" questions, which is a concrete when-to-use trigger an agent can match against a user request. It stops short of stating when NOT to use it or pointing to dataset_search/dataset_row as the alternatives for non-comparative lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_provenanceWhere this data comes from, and how to cite itAInspect
The source, the date it was computed, the licence and the citation for the Taxooor dataset. Read this to attribute a figure correctly.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full burden. It discloses the payload contents but says nothing about side effects, permissions, caching or whether the result is a fixed document — reasonable for a zero-parameter metadata read, but it leaves the agent to infer that the call is safe and free.
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, with the returned content front-loaded and the usage hint second. Slight overlap with the title ('Where this data comes from, and how to cite it'), which already conveys most of the first 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?
There is no output schema, so the description must convey the return content, which it does by listing source, date, licence and citation. It stops short of describing the shape or format of that payload, but for a zero-parameter static-metadata tool this is close to sufficient.
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 takes no parameters, so there is nothing for the description to disambiguate. Baseline of 4 applies; the schema is empty and entirely consistent with the description.
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 names the exact resource and enumerates the fields returned: source, computation date, licence and citation for the Taxooor dataset. That is specific enough to separate it from dataset_columns, dataset_stats and dataset_search on content alone, though it uses a nominal phrase rather than an explicit verb and never names a sibling.
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?
'Read this to attribute a figure correctly' gives a clear triggering condition for calling the tool. It does not, however, name any alternatives or state when this is not needed (e.g. when no citation is required).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_rowLook a row up by an exact keyBInspect
The rows of the Taxooor dataset where a column equals a value exactly (case-insensitive).
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | ||
| column | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It says 'rows' (plural) implying multiple matches, but gives no information on result limits, pagination, ordering, behavior when the column does not exist, or that this is a non-mutating read. For a tool with zero annotation coverage this is a significant gap.
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 no filler and the distinguishing qualifier ('exactly') front-loaded alongside the resource. It is efficient, though arguably terse enough to omit useful detail rather than being optimally structured.
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 two-parameter lookup with no output schema and no annotations, an agent still lacks the return shape (what fields a row contains) and any limits or failure behavior. The core matching semantics are covered, so it is minimally adequate but not complete.
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 0%, so the description must compensate. It references both parameters implicitly (column, value) and adds the meaningful detail that matching is exact and case-insensitive, but it never clarifies whether case-insensitivity applies to the column name as well, nor how string values interact with non-text columns.
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 operation (look up rows where a column equals a value) and the key qualifier 'exactly (case-insensitive)', which implicitly separates it from the fuzzy-matching dataset_search sibling. It does not name or contrast any sibling explicitly, so the differentiation is left to inference.
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 exact-equality wording implies the tool is for precise key lookups rather than exploratory or partial matching, which is usable implied guidance. However, there is no explicit when-to-use statement, no mention of when to prefer dataset_search/dataset_stats, and no prerequisites or error conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_searchSearch the datasetBInspect
Rows of the Taxooor dataset whose cells contain the query (case-insensitive), up to 50.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | text to look for in any cell |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses case-insensitive matching, containment semantics across any cell, and a hard cap of 50 rows, but says nothing about result ordering, what happens on zero matches, truncation behavior when more than 50 rows match, or whether this is a pure 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler, front-loading the resource and scope before the matching rule. It is terse without being cryptic, though the phrasing 'Rows of the Taxooor dataset whose cells contain...' is slightly roundabout.
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 two-parameter read tool with no output schema and no annotations, the description covers the matching contract but leaves the return shape (row objects? ids?), ordering, and edge-case behavior on truncation unspecified. Adequate but with clear gaps an agent would want closed.
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 50%: the query parameter already documents 'text to look for in any cell' and limit carries min/max constraints. The description restates the any-cell semantics, adds case-insensitivity, and reinforces the 50-row bound, but provides no new syntax or format detail beyond the schema.
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 (search) and resource (rows of the Taxooor dataset) and defines the matching rule: cells containing the query, case-insensitive, capped at 50 rows. That is enough to separate it from neighbors like dataset_row or dataset_stats, though it never names those siblings 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?
It says what the tool returns but not when to reach for it instead of dataset_top, dataset_row, or dataset_stats. There is no mention of prerequisites, when-not conditions, or alternative tools, so the agent must infer routing from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_statsSummary statistics for a numeric columnBInspect
count, min, max, mean, median and sum of a numeric column of the Taxooor dataset (grouping commas and currency are handled; non-numeric rows are excluded and counted).
| Name | Required | Description | Default |
|---|---|---|---|
| column | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose useful edge-case behavior: grouping commas and currency are handled, and non-numeric rows are excluded but counted. It says nothing about return shape, error behavior when the column does not exist, or dataset-size limits, so the disclosure is partial rather than rich.
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 that front-loads the returned statistics and relegates edge-case handling to a parenthetical. Nothing is wasted, though the nested parenthetical is slightly dense.
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 and no annotations, the description must also convey what comes back; enumerating the six statistics partially does this, and the row-exclusion note is valuable. It still omits output format, failure modes, and the column-identifier convention for a tool the agent must call blind.
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 0% (the schema only declares a required, non-empty string), so the description must compensate. It adds the key constraint that the column must be numeric and that it belongs to the Taxooor dataset, but never states whether the value is a column name, header label, or index, leaving some ambiguity.
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 names a specific computation (count, min, max, mean, median, sum) on a specific resource (a numeric column of the Taxooor dataset), so an agent knows exactly what it returns. It does not explicitly differentiate itself from siblings like dataset_top or dataset_compare, which also aggregate data, so it falls short of 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?
There is no statement of when to reach for this tool versus dataset_top, dataset_compare, or dataset_columns. The numeric-column constraint implies the applicable scenario but is framed as a behavior note, not as usage guidance, and no exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dataset_topRank rows by a numeric columnBInspect
The highest (or lowest) rows of the Taxooor dataset by a numeric column — "which is the most/least X".
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| column | Yes | ||
| ascending | No | true for the lowest first; default highest first |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden, and it does state the core behavior: rows are returned ranked by a numeric column, defaulting to highest. It says nothing about read-only safety, tie-breaking, the 50-row cap on results, or how many rows come back, leaving meaningful behavioral gaps.
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 tight sentence with the resource and operation front-loaded and the em-dash clause used efficiently to illustrate intent. No filler, though the fragment structure is slightly informal for a tool definition.
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?
There is no output schema, no annotations, and only partial parameter coverage, so the description should do more. It conveys the returned-row concept and ordering but omits the result shape (which columns are returned), the limit semantics, and any note on ties or empty results.
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 only 33% (only 'ascending' is documented), so the description must compensate. It does clarify that 'column' must be a numeric column and that direction can be lowest or highest, but it never addresses the 'limit' parameter or its 1-50 range, leaving one of three parameters unexplained.
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 names a specific operation (return the highest/lowest rows) and the resource (the Taxooor dataset) with the ranking key made explicit ("by a numeric column"). It maps cleanly onto the title and is distinguishable from siblings like dataset_stats or dataset_row, though it never names an alternative tool to sharpen the contrast.
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 quoted framing "which is the most/least X" implies the class of question the tool answers, which is real usage guidance. However, it gives no explicit conditions, prerequisites, or comparison against siblings such as dataset_search or dataset_stats, so usage is only inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enquiry_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 Taxooor: 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 behavioral burden and discloses that nothing is bought/ordered/paid, no quote is guaranteed, it is free, and it returns specific informational outputs. It does not cover auth or rate limits, but for a read-only descriptive tool this is substantial.
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 front-loaded with 'Read first.' and uses three sentences without obvious filler. It is slightly wordy in listing what it states and returns, but every sentence adds useful 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?
There is no output schema, but the description outlines the kind of information returned (who receives details, consent wording, confirmation method), which gives the agent enough context to know what to expect. It is complete for a simple, zero-parameter descriptive 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 the schema is empty. No parameter semantics are needed, and the baseline for zero-parameter tools is 4.
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 clearly states this tool describes what submit_enquiry does and returns recipient/consent/confirmation details. It distinguishes itself from submit_enquiry (descriptive vs. action) and from a purchase. It does not mention enquiry_fields, so sibling differentiation is slightly incomplete.
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 opening 'Read first.' explicitly positions this as a prerequisite informational tool before submitting an enquiry. It gives clear context for when to use it, though it does not name alternatives or describe 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.
enquiry_fieldsThe questions the enquiry asksAInspect
Every field of the Taxooor 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 and no output schema, the description carries the full burden, and it does disclose the exact return shape (key, label, type, required, help text, allowed options). It does not explicitly state the operation is side-effect-free or that it needs no authentication, but the read-only nature is evident from the content described.
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, no filler, and the returned-field list is front-loaded before the usage note. 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 zero-parameter read tool with no output schema, the description is sufficient: it fully enumerates the return payload and the keying convention. Minor gaps remain around missing-enquiry or error behavior, but nothing essential for correct invocation 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?
The tool takes zero parameters, so the baseline is 4. The description correctly adds the keying convention that connects the returned field keys to submit_enquiry's input, which is the only parameter-adjacent meaning available here.
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 names the resource precisely ('Every field of the Taxooor enquiry') and enumerates the returned attributes, so an agent can tell it apart from dataset_columns or enquiry_describe. It lacks an explicit verb ('list/describe'), but the resource and scope are 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?
It implies the downstream workflow ('Pass answers to submit_enquiry keyed by field key'), which tells the agent this is a prerequisite for submitting answers. However, it never states when to call this instead of the adjacent enquiry_describe, nor any preconditions, so guidance is implied rather than explicit.
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 Taxooor — 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: "By submitting you agree Taxooor may reply to your question by email. We do not sell your details to anyone."
| Name | Required | Description | Default |
|---|---|---|---|
| answers | Yes | the person's answers, keyed by field key | |
| consent | Yes | true only when the person has agreed to: By submitting you agree Taxooor may reply to your question by email. We do not sell your details to anyone. | |
| 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?
No annotations exist, so the description carries the full burden and does so: it discloses the validation-then-submit flow, that step 1 returns a summary/consent line/token, that step 2 actually submits, and that an email confirmation gates provider visibility. The verbatim consent text is included, which is exactly the kind of hidden behavioral obligation that must be surfaced.
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?
Front-loaded with the scope disclaimer and then sequenced step-by-step. The embedded consent text lengthens it, but each clause is load-bearing for a two-step consent flow; slightly dense rather than padded.
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 mutation tool with no annotations, no output schema, and a nested object parameter, the description supplies everything needed: the two-call lifecycle, what step 1 returns, the gating condition, the required user action, and the exact consent language. Nothing an agent needs to call this correctly is missing.
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 goes further: it ties 'answers' to the field keys from enquiry_fields, specifies consent=true semantics and its exact wording, and explains that 'confirmation' is the token carried over from step 1. This meaningfully exceeds the schema's own parameter text.
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 (submits) and resource (enquiry to human providers), and immediately distinguishes scope with 'NOT a purchase, NOT a guaranteed quote'. An agent can separate this from the dataset_* and enquiry_describe/enquiry_fields siblings 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?
Gives an explicit two-step protocol: step 1 with answers+consent, then step 2 only after the person agrees, gated on the confirmation token. It also names the precondition (person must agree) and the downstream condition (email link must be clicked before any provider sees it).
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.
10 tool updates
- First observed
dataset_columns - First observed
dataset_compare - First observed
dataset_provenance - First observed
dataset_row - First observed
dataset_search - First observed
dataset_stats - First observed
dataset_top - First observed
enquiry_describe - First observed
enquiry_fields - First observed
submit_enquiry
Related MCP Connectors
Corp Tax Calculator: the site's own MCP server — dataset, enquiry (enquiry = a human handoff,...
Capital Gains Tax HQ: the site's own MCP server — dataset, enquiry (enquiry = a human handoff,...
101Rechner HQ: the site's own MCP server — dataset, enquiry (enquiry = a human handoff, not a...
Buffrota: the site's own MCP server — dataset, enquiry (enquiry = a human handoff, not a...
101
Related MCP Servers
- AlicenseBqualityDmaintenanceMCP server for searching research grants across NSF (US), ERC (EU), and KRF/NRF (Korea) via a unified interface. NIH excluded—covered by existing connectors.38MIT
- AlicenseNot gradedqualityBmaintenanceA sovereign, MIT-licensed MCP server for US tax operations, enabling offline-capable and self-hostable tax workflow management.MIT
- AlicenseNot gradedqualityAmaintenanceMCP server that connects AI agents to 34,500+ Australian Taxation Office documents, providing cited answers, tax deduction discovery, depreciation scheduling, BAS checklists, and audit risk assessment through 13 specialized tools.44610AGPL 3.0
- AlicenseAqualityAmaintenanceMCP server for EU law via the EUR-Lex / Cellar SPARQL endpoint — legislation (ELI/CELEX) and CJEU case-law (ECLI) with verifiable citations.3681MIT