Skip to main content
Glama

marketbasketanalysis-mcp

propose_subscription_bundle

Propose a recurring subscription bundle for a customer based on their first-order items. Given 1-5 seed products the customer has bought, returns a recurring subscription bundle (3-6 items) of the seeds plus complementary products, with a predicted cadence (median days between reorders), a 0..1 confidence score, and a rough monthly_value when prices are known. Use this when a merchant agent asks 'what should they subscribe to?', 'build a monthly subscription bundle from this order', 'propose a subscription bundle', 'recommend a recurring replenishment bundle', or 'what's the right subscription frequency for this customer?'. If a customer_id is supplied the tool blends in the customer's per-SKU reorder cadence; without one it falls back to the seed catalog cohesion alone. Works for Shopify, Magento, and WooCommerce merchants.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kit_sizeNoTarget total items in the subscription bundle (seeds + complements). Default 4, clamped to [3, 6].
customer_idNoOptional customer id (numeric storefront id or GID). When supplied, the tool pulls the customer's reorder-prediction history to anchor the cadence and confidence. Without this, the proposal uses seed-only catalog cohesion.
cadence_daysNoOptional target subscription frequency in days (e.g. 30 for monthly, 14 for biweekly). When supplied, the tool snaps the predicted cadence toward this target and weights candidates whose individual cadences are close to it.
seed_product_idsYesProducts the customer bought in their first order (1-5). The proposed subscription bundle will include these plus complementary items.

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of disclosing behavior. It does this well by explaining that the tool returns a 3-6 item bundle, a median reorder cadence, a 0..1 confidence score, and a monthly_value only when prices are known, plus the fallback behavior when no customer_id is supplied. The main omission is that it never explicitly states whether this tool has side effects (e.g., whether it actually creates a subscription), though the word 'propose' plus 'returns' strongly implies a read-only recommendation.

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 four sentences, each with a distinct purpose: core function and outputs, when to use with example queries, customer_id behavior and fallback, and platform coverage. It is front-loaded, dense with useful information, and contains no filler or repetition.

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?

Because there is no output schema, the description's explicit disclosure of return fields (bundle size, cadence, confidence, monthly_value conditionality) is essential and well provided. It also covers input constraints, fallback behavior, platform compatibility, and typical intents, leaving little for an agent to infer.

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 description coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by clarifying that seed_product_ids come from a first-order purchase, and by explaining that customer_id causes the tool to blend per-SKU reorder cadence versus falling back to seed-only catalog cohesion. It doesn't discuss kit_size or cadence_days in the prose, but those are already well-described in the schema, so the added context pushes this above baseline.

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 opens with a specific verb and resource: 'Propose a recurring subscription bundle for a customer based on their first-order items.' It clearly states the inputs, outputs, and example merchant intents, making the tool's function unambiguous. However, it never explicitly distinguishes itself from sibling tools like forecast_bundle or get_bundle_for_cart, so it relies on semantic differences rather than direct differentiation.

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 explicit when-to-use guidance through example queries ('what should they subscribe to?', 'build a monthly subscription bundle from this order') and explains the behavioral difference when customer_id is supplied vs omitted. It does not, however, provide any when-not-to-use guidance or point to alternative sibling tools, stopping short of full routing clarity.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation4/5

Tools map largely one-to-one to distinct actions, and descriptions explicitly differentiate similar-looking pairs like get_recommendations vs. get_bundle_for_cart vs. find_substitutes. However, score_cross_sell vs. analyze_basket and get_rationale vs. explain_opportunity could still confuse an agent, since both score/explain overlapping concepts. Overall ambiguity is low but not zero.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern: get_* for retrieval, explain_* for drill-downs, score_* for validations, and action verbs for state changes. No camelCase or mixed conventions are present, making the naming highly predictable.

Tool Count3/5

19 tools is on the heavy side for a single server and exceeds the typical 3–15 range, even though most tools have distinct purposes. The large count reflects a broad feature set covering recommendations, alerts, forecasting, reorder, returns, and weekly planning, but a few tools could be consolidated. It feels slightly bloated rather than egregiously so.

Completeness4/5

The surface covers the main discovery–evaluation–action workflow: recommend, score, explain, triage, plan, and forecast. Minor gaps exist—there is no direct tool for creating or editing a bundle outside of weekly-plan actions, and no catalog-browsing capability—but those are largely external concerns. The workflow is coherent with no major dead ends.