Skip to main content
Glama

Channel3 Shopping

Server Details

Shopping search across 100M+ products, with every retailer's offer and live price in one place.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
channel3-ai/mcp-server
GitHub Stars
2
Server Listing
Channel3 MCP Server

TDQS

B3.3/5.0

Scored across 6 tools

Disambiguation2/5

browse_products and search_products overlap in searching/paging, and get_details and get_products both fetch product details with offers. The descriptions provide some hints, but boundaries are fuzzy enough that an agent could easily call the wrong tool.

Naming Consistency4/5

All tool names follow a mostly consistent verb_object pattern like browse_products, get_price_history, and search_products. get_details is a minor deviation because the object is vague, but the overall convention remains predictable.

Tool Count4/5

Six tools is a reasonable size for a product discovery and price-history server. Some tools overlap in purpose, so not every tool clearly earns its place, but the count itself is well-scoped.

Completeness4/5

The toolkit covers the main shopping workflows: search/browse, product details, price history, and similar-item discovery. Cart or purchase functionality is absent, but that appears out of scope for a storefront search API, and any remaining gaps are minor workarounds.

Available Tools

6 tools
browse_productsBrowse ProductsC
Read-onlyIdempotent
Inspect

Search and page through products for the storefront UI.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNoOne product type and its constraints in natural language (brand, color, material, size, price, gender). Good: "red leather jacket under $200"; "leather golf glove under $40". Bad: "gift ideas for dad"; "cool sneakers"; "golf glove or rangefinder".
device_idNo
image_urlNoPublic image URL for visual search. Combine with `query` for text + image.
thread_idNo
page_tokenNoToken from a previous response's next_page_token.

Output Schema

ParametersJSON Schema
NameRequiredDescription
productsYes
next_page_tokenYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds no additional behavioral context such as pagination details, rate limits, or any caveats. It merely restates the action without enriching understanding of side effects or constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

The description is a single, compact sentence with no wasted words. It is appropriately brief for a straightforward browsing tool. However, it lacks any structural organization or emphasis; it is merely a phrase without front-loading key distinguishing details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given six parameters, zero required, and a rich set of siblings, the description is far too thin. It does not explain pagination usage, how to combine query and image_url, or any filtering nuances. An output schema exists, so return values are covered, but the overall usage context is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50%, with descriptions for query, image_url, and page_token, but none for limit, device_id, or thread_id. The description mentions no parameters at all, so it does not compensate for the undocumented ones. An agent gets no help understanding what device_id or thread_id mean from the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear verb and resource: 'Search and page through products'. It conveys the core action of browsing with pagination. However, it does not distinguish this tool from the sibling 'search_products' which likely overlaps, so it lacks sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus alternatives like 'search_products' or 'get_products'. There are no exclusions, conditions, or hints about the appropriate context. The only context is 'for the storefront UI', which is a vague purpose indicator, not a usage guideline.

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

get_detailsGet Product DetailsA
Read-onlyIdempotent
Inspect

Fetch a product with live offers, for the storefront UI.

ParametersJSON Schema
NameRequiredDescriptionDefault
device_idNo
thread_idNo
product_idYesCanonical product ID.
selected_optionsNoVariant configuration as `{ optionName: label }` for re-resolving offers.

Output Schema

ParametersJSON Schema
NameRequiredDescription
productYes

TDQS

A3.5/5.0
Behavior3/5

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

The readOnlyHint annotation already covers the safety profile, and “live offers” adds a small behavioral hint about data freshness (it is not just a static product lookup). The description does not, however, explain how “live” behaves — e.g., whether offers are re-resolved per request, cached, or require selected options.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

An single sentence with the core purpose, the behavioral_distinguisher (“live offers”), and the intended context (storefront UI) — all without roundabout explanation or redundant restatement of the name or title. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only product fetch, the description covers the basic task and leaves no missing required inputs (product_id is listed as required). However, there is no output schema and no description of what “live offers” means, and two params (device_id, thread_id) remain opaque, so an agent gets an useful but not debt, complete, complete target.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

product_id and selected_options are already described in the schema, so roughly half of the parameters have provenance. The description's storefront-UI framing gives only weak hints about device_id and thread_id (frontrount route context), but does not really compensate for the undocumented parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (“fetch”) and resource (“product” with a distinctive “live offers” modifier, so an agent clearly knows what the tool returns. It does not name any sibling tools, so full differentiation from similar fetch/list tools is not explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

“For the storefront UI” implies the intended context: use when serving the customer-facing product page. However, there is no explicit when-not-to-use condition, no prerequisite mention, and no alternative tool is named, so routing falls to agent inference.

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

get_price_historyGet Price HistoryB
Read-onlyIdempotent
Inspect

Fetch 30-day price history for a product, for the storefront UI.

ParametersJSON Schema
NameRequiredDescriptionDefault
device_idNo
thread_idNo
product_idYesCanonical product ID.
selected_optionsNoVariant configuration as `{ optionName: label }` for re-resolving offers.

Output Schema

ParametersJSON Schema
NameRequiredDescription
historyYes
statisticsYes
canonical_product_idYes

TDQS

B3.4/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds the 30-day window and storefront context, which is useful but limited; it does not explain behavior around variant resolution or filtered results beyond that. This is a modest improvement over the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

The description is one effective, front-loaded sentence with no filler. It states the core functionality and intended context without redundant detail, making it easy to scan and parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only lookup tool backed by an output schema and active annotations, the description is mostly sufficient, but it lacks any signposting for how this tool compares to siblings and leaves some parameter behavior muddy. The core call is clear, but the surrounding decision of when to use it is omitted.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 50%, and the description does not explain any of the parameters directly. It references 'product' which maps to product_id, but leaves device_id, thread_id, and selected_options completely unexplained, so an agent cannot infer their purpose beyond the schema's partial doc.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific verb—Fetch—and the resource: a 30-day price history for a product, with a context qualifier ('storefront UI'). This clearly differentiates the tool from siblings like search_products or get_details, which serve other purposes. 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.

Usage Guidelines2/5

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

There is no explicit guidance about when to use this tool versus the sibling product tools, and no mention of prerequisites or when not to use it. The phrase 'for the storefront UI' hints at a context but does not direct the agent toward this tool over alternatives.

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

get_productsGet ProductsA
Read-onlyIdempotent
Inspect

Get full product data (offers, description, attributes, images) by product ID from a search result, or by retailer URL. Pass several IDs in one call to compare. Use search_products to find products. Returns details in the storefront UI. The result includes a thread_id. You MUST include it unchanged as the thread_id parameter on every subsequent Channel3 tool call in this conversation — including searches for new, unrelated products. Never omit it once you have one.

ParametersJSON Schema
NameRequiredDescriptionDefault
thread_idNoConversation thread ID. Omit ONLY on the very first Channel3 call of a conversation. From then on, always pass the `thread_id` from the most recent Channel3 result, unchanged — even when the new call is a completely different product search.
product_idsYesProducts to fetch in parallel.

Output Schema

ParametersJSON Schema
NameRequiredDescription
as_ofYesISO timestamp of when this result was produced; prices are live as of this moment.
productsYes
thread_idYesConversation thread ID. Pass it back unchanged as `thread_id` on every follow-up call in this conversation.
session_idNoPostHog MCP session ID for analytics correlation.
unresolvedNo
server_originNoOrigin of this MCP server; the storefront UI posts analytics events here.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already mark the tool as read-only/idempotent, and the description adds critical behavioral context: results are returned in the storefront UI, and the thread_id must be propagated unchanged to every subsequent Channel3 call, including unrelated searches. This goes beyond annotations and is essential for correct stateful usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

The description is front-loaded with purpose and usage, and the key behavioral details are present. However, the final two sentences about thread_id largely repeat information already in the schema's thread_id parameter description, adding redundancy that could be trimmed without losing necessary emphasis.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple two-parameter tool with an output schema present, the description covers purpose, usage, and the critical thread_id statefulness rule. It does not need to explain return values due to the output schema, and the context is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for both parameters, so the baseline is 3. The description adds meaning by clarifying that product_ids can be IDs from search results or retailer URLs, and that multiple IDs are fetched in parallel for comparison, which enriches the schema's bare field descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get full product data') with a defined resource (offers, description, attributes, images) and identifies two input methods (product ID or retailer URL). It distinguishes itself from siblings by explicitly referencing search_products and noting batch comparison, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

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

The description provides explicit guidance to use search_products to find products first and suggests passing multiple IDs for comparison. However, it does not clarify when to prefer get_products over sibling tools like get_details or get_similar, so it lacks full exclusions or alternative scenarios.

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

get_similarGet Similar ProductsB
Read-onlyIdempotent
Inspect

Find products similar to a given product, for the storefront UI.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
device_idNo
thread_idNo
product_idYesCanonical product ID to find similar products for.

Output Schema

ParametersJSON Schema
NameRequiredDescription
productsYes
next_page_tokenYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds no behavioral detail beyond the basic function and does not explain what it returns, any limitations, or side effects beyond what annotations imply. It is consistent with annotations, so no contradiction, but adds minimal value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

The description is a single, concise sentence that front-loads the verb and object. It is efficient, avoids redundancy, and is free of fluff. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 4 parameters and only 25% schema coverage, the description is inadequate. It does not clarify the purpose of limit, device_id, or thread_id, nor does it provide usage context relative to sibling tools. Even with an output schema, the description fails to give an agent enough to confidently invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 25% (only product_id has a description). The description implicitly covers product_id ('given a product') but provides no semantics for limit, device_id, or thread_id. With such low coverage, the description should compensate but fails to explain the meaning or purpose of these parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Find products similar to a given product') and the context ('for the storefront UI'). It is specific and distinct from sibling tools like search_products (query-based) and browse_products (general browsing). The verb and resource are unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus its siblings. It only hints at 'storefront UI' but does not explain scenarios, exclusions, or how it differs from search_products or browse_products. An agent is left to infer usage.

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

search_productsSearch ProductsA
Read-onlyIdempotent
Inspect

Search 100M+ products across thousands of retailers for one product type. Call once for each distinct product type, and send independent calls together. Put relevant constraints in query. Returns up to 8 product cards plus structured product data. The result includes a thread_id. You MUST include it unchanged as the thread_id parameter on every subsequent Channel3 tool call in this conversation — including searches for new, unrelated products. Never omit it once you have one.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoOne product type and its constraints in natural language (brand, color, material, size, price, gender). Good: "red leather jacket under $200"; "leather golf glove under $40". Bad: "gift ideas for dad"; "cool sneakers"; "golf glove or rangefinder".
image_urlNoPublic image URL for visual search. Combine with `query` for text + image.
thread_idNoConversation thread ID. Omit ONLY on the very first Channel3 call of a conversation. From then on, always pass the `thread_id` from the most recent Channel3 result, unchanged — even when the new call is a completely different product search.

Output Schema

ParametersJSON Schema
NameRequiredDescription
seqNo
as_ofYesISO timestamp of when this result was produced; prices are live as of this moment.
queryNoThe text query this result answers.
productsYes
image_urlNoThe image URL this result answers.
thread_idYesConversation thread ID. Pass it back unchanged as `thread_id` on every follow-up call in this conversation.
session_idNoPostHog MCP session ID for analytics correlation.
server_originNoOrigin of this MCP server; the storefront UI posts analytics events here.
next_page_tokenYesOpaque pagination token used by the storefront UI; not usable via this tool.

TDQS

A4/5.0
Behavior4/5

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

Beyond the annotations (readOnlyHint, idempotentHint), the description discloses key behavior: 'Returns up to 8 product cards plus structured product data' and the critical requirement to propagate the returned thread_id on every subsequent Channel3 call. This adds substantial behavioral context that annotations alone do not provide. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

The description is concise, with purpose front-loaded in the first sentence and every subsequent sentence earning its place. The detailed thread_id instruction is essential and clearly emphasized. No filler or repetition relative to what annotations already cover.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the annotations, output schema, and fully described parameters, the description covers the essential operational aspects: what to search, how to batch calls, constraints, return format, and mandatory thread_id propagation. It is slightly less complete in not clarifying how it relates to sibling tools, but that is not required for a correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents query, image_url, and thread_id. The description's mention of putting constraints in query and the thread_id propagation echoes the schema without adding new parameter-level detail. The baseline of 3 applies because the schema carries the burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Search 100M+ products across thousands of retailers for one product type.' This clearly conveys what the tool does and that it focuses on product-type search. It does not explicitly name or differentiate from sibling search tools such as browse_products or get_products, so it misses the top score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

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

The description gives clear invocation guidance: 'Call once for each distinct product type, and send independent calls together' and 'Put relevant constraints in query.' This provides good context on how to use the tool, though it does not mention when not to use it or how it differs from the sibling alternatives.

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. 3 tool updates
    • Changedbrowse_products2 fields changed
      • removedOutput schema / properties / next_page_token / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / next_page_token / type
        Added value: +[
        +  "string",
        +  "null"
        +]
    • Changedget_similar2 fields changed
      • removedOutput schema / properties / next_page_token / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / next_page_token / type
        Added value: +[
        +  "string",
        +  "null"
        +]
    • Changedsearch_products4 fields changed
      • removedOutput schema / properties / next_page_token / anyOf
        Removed value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / next_page_token / type
        Added value: +[
        +  "string",
        +  "null"
        +]
      • removedOutput schema / properties / products / items / properties / offers / items / properties / price / properties / compare_at_price / anyOf
        Removed value: -[
        -  {
        -    "type": "number"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]
      • addedOutput schema / properties / products / items / properties / offers / items / properties / price / properties / compare_at_price / type
        Added value: +[
        +  "number",
        +  "null"
        +]
  2. 4 tool updates
    • Changedbrowse_products1 field changed
      • addedInput schema / properties / device_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_details1 field changed
      • addedInput schema / properties / device_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_price_history1 field changed
      • addedInput schema / properties / device_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_similar1 field changed
      • addedInput schema / properties / device_id
        Added value: +{
        +  "type": "string"
        +}
  3. 2 tool updates
    • Changedget_details1 field changed
      • addedInput schema / properties / selected_options
        Added value: +{
        +  "additionalProperties": {
        +    "type": "string"
        +  },
        +  "description": "Variant configuration as `{ optionName: label }` for re-resolving offers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
    • Changedget_price_history3 fields changed
      • addedInput schema / properties / selected_options
        Added value: +{
        +  "additionalProperties": {
        +    "type": "string"
        +  },
        +  "description": "Variant configuration as `{ optionName: label }` for re-resolving offers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / canonical_product_id
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "history",
        -  "statistics"
        -]New value: +[
        +  "canonical_product_id",
        +  "history",
        +  "statistics"
        +]
  4. 6 tool updates
    • Changedbrowse_products1 field changed
      • addedInput schema / properties / thread_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_details1 field changed
      • addedInput schema / properties / thread_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_price_history1 field changed
      • addedInput schema / properties / thread_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_products5 fields changed
      • addedInput schema / properties / thread_id
        Added value: +{
        +  "description": "Conversation thread ID. Omit ONLY on the very first Channel3 call of a conversation. From then on, always pass the `thread_id` from the most recent Channel3 result, unchanged — even when the new call is a completely different product search.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / server_origin
        Added value: +{
        +  "description": "Origin of this MCP server; the storefront UI posts analytics events here.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / session_id
        Added value: +{
        +  "description": "PostHog MCP session ID for analytics correlation.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / thread_id
        Added value: +{
        +  "description": "Conversation thread ID. Pass it back unchanged as `thread_id` on every follow-up call in this conversation.",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "products",
        -  "as_of"
        -]New value: +[
        +  "products",
        +  "as_of",
        +  "thread_id"
        +]
    • Changedget_similar1 field changed
      • addedInput schema / properties / thread_id
        Added value: +{
        +  "type": "string"
        +}
    • Changedsearch_products5 fields changed
      • addedInput schema / properties / thread_id
        Added value: +{
        +  "description": "Conversation thread ID. Omit ONLY on the very first Channel3 call of a conversation. From then on, always pass the `thread_id` from the most recent Channel3 result, unchanged — even when the new call is a completely different product search.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / server_origin
        Added value: +{
        +  "description": "Origin of this MCP server; the storefront UI posts analytics events here.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / session_id
        Added value: +{
        +  "description": "PostHog MCP session ID for analytics correlation.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / thread_id
        Added value: +{
        +  "description": "Conversation thread ID. Pass it back unchanged as `thread_id` on every follow-up call in this conversation.",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "products",
        -  "next_page_token",
        -  "as_of"
        -]New value: +[
        +  "products",
        +  "next_page_token",
        +  "as_of",
        +  "thread_id"
        +]
  5. 6 tool updates
    • First observedbrowse_products
    • First observedget_details
    • First observedget_price_history
    • First observedget_products
    • First observedget_similar
    • First observedsearch_products

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to search and compare live UK product prices from marketplaces like eBay and Amazon, returning normalised JSON with direct buy links.
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables searching and comparing product prices across major Indian quick-commerce and e-commerce platforms, ranking results by landed price, returning product links, storing price history, and providing 15–30 day price direction forecasts with best-buy recommendations.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to perform product discovery from natural language shopping intents, returning ranked products with merchant links without completing checkout.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.