nord-trail-store
Server Details
Reference agent-ready storefront: search, look up and price a real Magento catalog.
- Status
- Healthy
- Uptime
- 99.9% over 24 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 6 tools
check_stock and report_problem are clearly distinct, but four product-retrieval tools overlap: get_product, lookup_catalog, search_catalog, and list_products all return product data in similar forms, and search_catalog with no query duplicates list_products. Their descriptions help somewhat, but an agent could reasonably misselect between get_product and lookup_catalog or between list_products and search_catalog.
All six tools use a consistent verb_noun snake_case pattern: check_stock, get_product, list_products, lookup_catalog, report_problem, and search_catalog. There are no mixed conventions or irregular verbs.
Six tools is a reasonable size for a catalog and stock server. The count is neither bloated nor too thin, and each tool has a clear operational role even where retrieval boundaries are fuzzy.
The read-only catalog surface is well covered: search, identifier lookup, single-product details, full listing, and live stock/price are all present. The report_problem tool also covers the main dead-end failure mode for an agent, so there are no obvious missing reads.
Available Tools
6 toolscheck_stockBInspect
Live stock and price for a SKU.
| Name | Required | Description | Default |
|---|---|---|---|
| sku | Yes | Product SKU, e.g. MGN-204 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It does add the 'live' qualifier, implying a current, timing-sensitive stock/price read, and there is no hint of mutation or destructive behavior. However, it omits response shape, failure behavior, currency/units, and any side effects beyond the read.
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 a single short clause with no filler; the core action and target resource are front-loaded. This brevity is appropriate for a one-parameter lookup tool.
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 single-parameter tool with 100% schema coverage, the description conveys the essential purpose well. But without an output schema or annotations, it leaves unspecified return format, error behavior, and the distinction from sibling lookup tools, making completeness only moderate.
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 schema covers the only parameter, sku, fully and even provides an example. The tool description merely reiterates 'SKU' without adding new parameter details, so it adds little beyond the schema. The high schema coverage supports the baseline score.
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 live stock and price for a SKU, naming both the resource and the kind of data returned. It is conceptually distinct from the catalog/product siblings, though it does not explicitly contrast with them.
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 guidance about when to use check_stock versus get_product, list_products, lookup_catalog, or search_catalog. The description only states what the tool does, leaving selection decisions to inference from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productBInspect
One product: the UCP product object in structuredContent, and the schema.org Product JSON-LD the product page publishes as text.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Product slug, e.g. nord-trail-boot, or a variant SKU. | |
| slug | No | Deprecated alias for id. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It usefully states that the result includes both a UCP product object and schema.org JSON-LD text, which is meaningful output information. However, it does not mention read-only behavior, error cases, or what happens when the product is not found.
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 and mostly information-dense, but the phrasing 'One product:' is somewhat awkward and not front-loaded with a clear action. It could be more readable as 'Returns a single product as...' while keeping the same length.
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?
Given the simple two-parameter schema and no output schema, the description provides some essential return-value context. However, it relies on unexplained jargon ('UCP product object', 'structuredContent') and omits edge-case behavior, making it adequate but not fully 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 100%, so the schema already documents both id and slug, including that slug is a deprecated alias for id. The description adds no additional parameter meaning, so the baseline score of 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 communicates that the tool returns exactly one product and specifies the two representations returned (UCP structuredContent object and schema.org JSON-LD text). The singular 'One product' helps differentiate it from list_products and search_catalog, though it lacks an explicit verb like 'retrieves'.
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 gives no guidance on when to use get_product versus siblings like check_stock, lookup_catalog, or search_catalog. It does not state exclusions or preferred invocation contexts, leaving the agent to infer usage from the tool name and singular phrasing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_productsAInspect
List every product in the Nord Trail catalog with slug, SKU, price and URL.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are available, so the description carries the full burden. It clearly signals a read-only listing operation and specifies the returned fields, which is helpful. However, it does not mention pagination, ordering, potential response size, or any other behavioral considerations for a list that returns every product in a catalog.
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 a single sentence with no filler. It front-loads the action and resource, then compactly lists the output fields. Every word 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 tool with no output schema, the description adequately states the resource, scope, and returned fields. It could be slightly more complete with a note on ordering or pagination, or a pointer to search_catalog for filtered queries, but these are not essential for correct invocation.
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, so the baseline is 4. The description adds no parameter-level detail, but none is needed because the tool takes no arguments and the schema already confirms this.
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 uses a specific verb ('List'), a clear resource ('every product in the Nord Trail catalog'), and enumerates the returned fields ('slug, SKU, price and URL'). This makes it easy for an agent to distinguish it from siblings like search_catalog or get_product.
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?
No explicit when-to-use or when-not-to-use guidance is provided, and no alternative sibling is mentioned. However, 'every product' implies this is for full-catalog retrieval rather than filtered search or individual lookup, so the usage context is present but only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_catalogAInspect
UCP 2026-04-08 catalog lookup: resolve one or more product or variant identifiers (slug or SKU) to UCP product objects.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Product ids (slugs, e.g. nord-trail-boot) or variant ids (SKUs, e.g. MGN-204). |
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 does disclose that input identifiers are resolved to UCP product objects, which indicates a read-style lookup and names the return type. However, it does not describe not-found behavior, partial failure handling, or whether the returned product objects are full or summarized.
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 entire description is one front-loaded sentence that conveys the versioned catalog context, the input types, and the output type with no filler or redundant words. It is appropriately sized for a simple single-parameter lookup tool.
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?
The tool is simple, has one well-documented parameter, and names its output type, so the core invocation context is present. However, the absence of an output schema and the lack of guidance around unmatched identifiers or alternative sibling tools leaves minor but relevant gaps for an autonomous agent.
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 schema already has 100% parameter documentation with clear examples for slugs and SKUs. The description adds the clarifying notion that one or more identifiers are accepted, but this is largely redundant with the array type. There is no meaningful semantic gain 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 uses a specific verb ('resolve') and identifies both the resource ('UCP 2026-04-08 catalog') and the input/output relationship ('product or variant identifiers (slug or SKU)' to 'UCP product objects'). This clearly differentiates it from search_catalog, which would be query-based, and list_products, which would not resolve specific identifiers.
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 implies the tool should be used when you have concrete product or variant identifiers to resolve, but it does not explicitly state when to avoid it or name alternatives such as search_catalog or get_product. The usage context is inferable, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_problemAInspect
Tell this store that something stopped you from completing a task: a product you could not price, a variant you could not find, a request that was refused. Read by a human. Use it instead of giving up silently — a store only learns that an agent failed if the agent says so.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Closest category; omit if unsure. | |
| path | No | URL or path where it happened, if there was one. | |
| contact | No | Optional address to reply to. | |
| summary | Yes | What you were trying to do and what stopped you, in your own words. | |
| expected | No | What you expected to find instead. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and it delivers the key behavioral traits: 'Read by a human' signals an asynchronous human channel rather than a synchronous tool with a useful structured return, and the closing line explains that reports are how the store becomes aware of agent failures. It does not disclose what happens after submission (e.g., confirmation, persistence), but for a lightweight feedback tool the essential behavioral context is present.
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?
Three sentences, each earning its place: purpose with concrete examples, the human-read trait, and the usage rule. The purpose is front-loaded and there is zero filler or repetition of schema 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 simple tool with one required parameter and full schema coverage, the description plus schema covers purpose, trigger, and parameter semantics. 'Read by a human' also sets expectations about the lack of an immediate structured response, which partially compensates for the missing output schema. A small gap remains: no explicit note about what the agent should expect after the call or how much detail the human needs, but nothing critical 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 description coverage is 100%, so all five parameters are already documented and the baseline of 3 applies. The description's examples of failure scenarios add general context for what belongs in summary/kind but do not provide parameter-specific syntax or format details beyond the schema. This is adequate but not additive.
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 ('Tell this store') with a clear purpose: communicate something that stopped the agent from completing a task. Concrete examples ('a product you could not price, a variant you could not find, a request that was refused') make the intent unmistakable. It is structurally distinct from all five siblings, which are lookup/read operations, so there is no risk of confusion.
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 gives an explicit trigger condition: use the tool when blocked or failed, 'instead of giving up silently.' It also explains the consequence of not using it ('a store only learns that an agent failed if the agent says so'), which frames it as the designated failure-report channel. It stops short of explicitly naming when NOT to use it (e.g., success cases), so it misses the full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_catalogAInspect
UCP 2026-04-08 catalog search. Free-text query over the catalog; returns UCP product objects in structuredContent. Call with no query to list everything.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Free text, e.g. "waterproof jacket". Omit to return the whole catalog. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It usefully discloses the return shape and the no-query listing behavior, but it does not mention pagination, result limits, read-only guarantees, or any operational constraints.
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 two short sentences with zero filler. The primary behavior is front-loaded, and the no-query default is communicated in a compact, memorable way.
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 tool with one optional parameter and no output schema, the description covers the core invocation behavior, return type, and default listing behavior. It is slightly incomplete in omitting operational details like pagination or limits, but it is adequate for basic correct invocation.
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 input schema already documents the single parameter completely, including free-text guidance and the omit-to-list behavior. The description mostly restates what the schema says, so it adds only marginal semantic value beyond the structured definition.
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 identifies the tool as a free-text catalog search and states that it returns UCP product objects in structuredContent. It is specific enough to be distinguished from sibling tools like lookup_catalog and list_products, though it does not explicitly name those alternatives.
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 gives a concrete usage pattern: call with a free-text query, or omit the query to list everything. However, it does not explicitly explain when to choose search_catalog over lookup_catalog or list_products, leaving sibling differentiation mostly 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.
6 tool updates
- First observed
check_stock - First observed
get_product - First observed
list_products - First observed
lookup_catalog - First observed
report_problem - First observed
search_catalog
Related MCP Connectors
Agent-native commerce with trusted catalog, durable carts, and Stripe Checkout via MCP and UCP.
Agent Commerce MCP — agent-native A2A storefront. Discovery, Stripe checkout, affiliate program.
Agentic commerce gateway: discovery, search, checkout across Shopify/Woo/Odoo/PrestaShop.
Agent floor and MCP market: catalog, rack, Stripe checkout, x402, A2A.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI agents to shop and query Magento/Mage-OS stores via the storefront GraphQL API, including product search, stock checks, category browsing, cart management, and customer order status.11MIT

AgentBodega MCPofficial
AlicenseAqualityDmaintenanceEnables agents to search and inspect live service offerings, generate x402 payment snippets, and understand blockchain-only balance policies.453 npm3MIT- AlicenseNot gradedqualityCmaintenanceEnables AI agents to safely manage Magento 2 / Adobe Commerce back-office tasks such as orders, fulfillment, customers, products, and store operations with guardrails and user-approved writes.MIT

AON MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceAON(Agent Offer Network) MCP connects AI agents to real, buyable products and services with live pricing and tracked links—enabling builders to earn developer revenue share from attributed clicks and conversions. AON MCP Server owned by aon.pro2Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.