Skip to main content
Glama

Heartly Deals — Live Flash Sales (Shopify & WooCommerce)

Server Details

Live flash-sale inventory from verified Shopify and WooCommerce merchants worldwide.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 3.8/5 across 3 of 3 tools scored.

Server CoherenceB
Disambiguation4/5

The three tools have distinct primary purposes: retrieving a single deal by ID, listing all active deals, and searching by category. However, the description of list_active_deals mentions optional filters without specifying them, creating potential overlap with search_deals_by_category if a category filter is available.

Naming Consistency3/5

Tool names use snake_case but mix verbs (get, list, search) and pluralization (deal vs. deals). The pattern is not uniform: get_deal_by_id and search_deals_by_category follow a verb_noun_by_noun pattern, while list_active_deals uses an adjective before the noun.

Tool Count3/5

With only three tools, the server feels minimal for a flash-sales domain. While it covers basic deal retrieval and listing, the count is borderline low for typical CRUD or discovery needs, though it may be acceptable for a narrow read-only use case.

Completeness2/5

The tool surface lacks obvious features such as listing categories, retrieving deals by merchant, or accessing upcoming/expired deals. Agents cannot perform common workflows like searching by merchant or browsing all available categories, leading to likely gaps in functionality.

Available Tools

3 tools
get_deal_by_idGet deal by idAInspect

Look up a single active deal by its Heartly internal id (UUID).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesHeartly internal deal id (UUID).
Behavior3/5

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

The description notes that only active deals are returned, which is a behavioral trait. However, it does not describe behavior for invalid or missing IDs, error responses, or other edge cases. Since no annotations are provided, the description carries the full burden, and this is only partially addressed.

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, well-structured sentence that conveys all necessary information without any redundancy. It is front-loaded and efficient.

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?

For a simple lookup tool with one parameter and no output schema, the description covers the key aspect (lookup by UUID, active only). It lacks mention of what happens if no deal is found (e.g., returns null or empty), but given the simplicity, it is mostly complete.

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 coverage is 100% for the single parameter 'id', and the description adds no new information beyond the schema's own description ('Heartly internal deal id (UUID)'). Baseline 3 is appropriate.

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 (look up), the resource (single active deal), and the identifier (Heartly internal UUID). It distinguishes from siblings like list_active_deals (no id filter) and search_deals_by_category (different search criteria).

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?

The description implies using this tool when you have a UUID, but it does not explicitly state when to use it versus alternatives, nor does it mention when not to use it. Sibling tools exist, so clearer guidance would be beneficial.

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

list_active_dealsList active dealsAInspect

List currently active flash-sale deals from verified Heartly merchants. Returns deals sorted by ending soonest. Filters are optional and combinable.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryNoISO 3166-1 alpha-2 country code. Filters to merchants whose shipping_countries include this code, plus merchants who ship worldwide.
categoryNoTop-level product category, e.g. "fashion", "beauty", "electronics".
min_discount_pctNoMinimum discount percentage. Only return deals at or above this value.
ending_within_hoursNoOnly return deals ending within this many hours from now.
Behavior3/5

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

No annotations provided, so description carries full burden. It mentions sorting and filter combinability, but lacks details on pagination, limits, or authentication. Adequate but not rich.

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?

Two concise sentences, front-loaded with purpose, no wasted words.

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?

Moderate complexity (4 optional params, no output schema). Description covers what the tool does but omits return format, pagination details, or example usage. Adequate but could be more complete.

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 baseline is 3. Description adds 'Filters are optional and combinable' but does not significantly enhance parameter understanding beyond the schema.

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?

Description clearly states it lists currently active flash-sale deals from verified Heartly merchants, with sorting by ending soonest. This distinguishes it from siblings get_deal_by_id (single deal) and search_deals_by_category (category search).

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?

Description implies usage for listing active deals with optional filters, but does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or prerequisites.

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

search_deals_by_categorySearch deals by categoryAInspect

Search active deals filtered by category. The category argument is required. Other filters (country, min_discount_pct, ending_within_hours) are optional.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryNoISO 3166-1 alpha-2 country code. Filters to merchants whose shipping_countries include this code, plus merchants who ship worldwide.
categoryYesTop-level product category, e.g. "fashion", "beauty", "electronics".
min_discount_pctNoMinimum discount percentage. Only return deals at or above this value.
ending_within_hoursNoOnly return deals ending within this many hours from now.
Behavior3/5

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

Without annotations, the description carries the full burden of behavioral disclosure. It implies a read-only query by using 'Search' and 'active deals', but it does not explicitly state that it is read-only, nor does it mention pagination, error handling, or response format.

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 consists of two focused sentences, front-loading the core purpose and immediately listing usage constraints. No unnecessary words.

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 the lack of output schema and annotations, the description should provide more details about the return structure or behavior. It only covers the filtering logic but omits what results look like, any limits, or error scenarios.

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?

The input schema has 100% description coverage, so the baseline is 3. The description adds that the category argument is required and other filters are optional, but this reinforces rather than extends the schema information.

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 uses the verb 'search' with the resource 'deals' and specifies the filter 'by category', distinguishing it from sibling tools like 'list_active_deals' (unfiltered) and 'get_deal_by_id' (single deal lookup).

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 clearly states that the category argument is required and lists optional filters, providing context for when to use this tool. However, it does not explicitly contrast with siblings or mention 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.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources