Skip to main content
Glama

Server Details

See how often any e-commerce brand sends marketing emails: counts, send dates and recent subject lines for 750+ brands, mostly in the Nordics and Germany. Read-only, no login.

Ownership verified
Status
Healthy
Uptime
99.9% over 21 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
Signal by StackEnhance
Claude
–

TDQS

A4.1/5.0

Scored across 3 tools

Disambiguation4/5

The three tools map to distinct retrieval shapes: find_brands discovers/ranks brands, get_brand_email_frequency returns send counts and dates for a period, and get_brand_summary returns a static profile. There is some overlap since summary includes a 90-day frequency figure that duplicates what find_brands ranks on and what email_frequency returns for a 90-day window, but the descriptions make the intended use of each clear enough.

Naming Consistency4/5

All names are snake_case, resource-oriented, and prefixed with the brand concept (find_brands, get_brand_email_frequency, get_brand_summary). The only minor deviation is the mixed verb style (find_ vs get_), which is readable and arguably intentional for discovery vs retrieval.

Tool Count4/5

Three tools is on the lean side, but the domain is narrow read-only email-frequency data, and each tool covers a genuinely different question type (discovery, time-bounded counts, profile). No tool feels redundant or like padding.

Completeness4/5

Core workflows (find a brand, get counts for a period, get an overall profile) are all covered, and markets/categories are enumerated in descriptions rather than needing a separate lookup tool. Minor gaps: no direct brand-name lookup or listing of valid categories/markets, and no comparison operation, though those can be worked around by calling the existing tools multiple times.

Available Tools

3 tools
find_brandsFind brands by email frequencyA
Read-onlyIdempotent
Inspect

Ecommerce brands StackEnhance Signal tracks in one market, ranked by current email frequency (average marketing emails per week over the last 90 days), optionally within a category such as "Fashion & Apparel" or "Home & Interior". Use for questions like "Which brands email most frequently in Swedish ecommerce?" or to find a brand when the user names a kind of brand ("a Swedish fashion brand"). Rankings are available for SE, NO, DK, FI and DE. Brands with too little observed data are left out of rankings. Returns brand names, categories and emails per week only. Each brand has a details_url to cite.

NameRequiredDescriptionDefault
limitNoHow many brands to return (1-10, default 10).
marketYesCountry as a two-letter code (SE, NO, DK, FI or DE) or its name ("Sweden").
categoryNoOptional category, e.g. "Fashion & Apparel", "Home & Interior", "Beauty & Cosmetics", "Sports & Outdoor".

Output Schema

NameRequiredDescription
brandsYes
marketYes
categoryYes
window_daysYes
brands_trackedYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world behavior, so the safety profile is covered. The description adds real behavioral context beyond that: brands with insufficient observed data are dropped from rankings, results are capped by limit, only brands/categories/emails-per-week are returned, and each brand carries a details_url for citation.

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?

Front-loads what the tool does and what it ranks by, then layers usage examples, coverage, exclusions and return shape. Dense but each sentence carries information; only the return-field sentence is partly redundant with the output schema.

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?

An output schema exists, yet the description still summarizes return contents and citation practice, plus ranking window, supported markets and data thresholds. Nothing needed to call the tool correctly is missing.

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 documents limit, market and category, including the same country codes and category examples the description repeats. The description adds no syntax or format meaning beyond the schema, making the baseline 3 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?

States a specific verb and resource (find ecommerce brands), the ranking metric (average marketing emails per week over 90 days), and the market scope. It is clearly distinguishable from siblings like get_brand_email_frequency and get_brand_summary, which return per-brand detail rather than a ranked list.

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?

Gives concrete usage contexts with example questions ("Which brands email most frequently in Swedish ecommerce?", finding a brand when the user names a kind of brand) and notes markets and data-sufficiency exclusions. It does not explicitly name the sibling tools or state when to prefer them, so routing guidance is contextual rather than explicit.

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

get_brand_email_frequencyBrand email frequencyA
Read-onlyIdempotent
Inspect

How many marketing emails a brand sent in a calendar period, and when, as observed by StackEnhance Signal (ecommerce brands, mostly in Sweden, Norway, Denmark, Finland and Germany). Use for questions like "How many emails did Newport send in August 2026?", "What did Newport send last week?" or "What has X sent recently?". Without a market, a brand tracked in several countries gets one result per market. Resolve relative dates yourself to YYYY-MM-DD: "last week" is the previous Monday–Sunday, "last month" the previous calendar month, "recently" the last 14 days. Dates are the brand's local calendar dates. The period must start within the last six months (older history is in a Signal account) and may span up to two years. Returns the count; for periods of up to 31 days also the date of each send; and at most two subject lines, only ones already shown on the brand's public StackEnhance page and sent in the period. Every listed send was captured in full; a send without a quoted subject is listed in sends_with_subject_in_signal because its subject is withheld by that limit, not missing. Counts are de-duplicated marketing sends (welcome, birthday and transactional emails excluded). There is no open, click or revenue data. Full campaigns, other subject lines, offers, products and creative analysis are not available through this tool. Cite each result's details_url as the source and as where the full campaigns are.

NameRequiredDescriptionDefault
toYesLast day of the period, inclusive, YYYY-MM-DD.
fromYesFirst day of the period, YYYY-MM-DD.
brandYesBrand name as the user wrote it, e.g. "Newport" or "IKEA". A domain such as newport.se also works.
marketNoCountry of one storefront as a two-letter code (SE, NO, DK, FI, DE) or its name ("Sweden"). Omit it to get every market the brand is tracked in.

Output Schema

NameRequiredDescription
resultsYes
unavailableNo

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description nonetheless adds real behavioral detail: de-duplication rules, the six-month start limit, the two-year maximum span, the two-subject-line cap, and the sends_with_subject_in_signal explanation. With annotations carrying the safety baseline, a 4 is defensible; it stops short of 5 only because some of the disclosure (return shape) overlaps the output schema.

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?

Purpose and the worked examples are front-loaded, and every clause is functional rather than decorative. It is long, but the length is driven by genuine constraints (date resolution, period limits, subject-line caps) rather than filler; only the closing 'full campaigns ... not available' sentence could be trimmed slightly.

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?

For a read-only analytics tool with a full output schema, this covers everything an agent needs: what is counted, what is excluded, the period constraints, how to interpret absent subjects, what data is absent (no open/click/revenue), and the instruction to cite details_url as the source. Nothing material is missing.

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%, so the baseline would be 3. The description earns above that by adding meaning the schema does not: omitting market yields one result per market, dates are the brand's local calendar dates, and relative expressions must be converted to YYYY-MM-DD. It does not repeat the schema's own parameter prose, which is correct.

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 first sentence names a specific verb and resource ('how many marketing emails a brand sent in a calendar period') plus the data source, and the exclusions (welcome, birthday, transactional) sharpen the scope. An agent can tell this apart from find_brands and get_brand_summary 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.

Usage Guidelines5/5

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

Gives three concrete example questions, explains the market-omission behavior ('one result per market'), tells the agent to resolve relative dates itself with explicit definitions of 'last week', 'last month' and 'recently', and states the allowed period bounds. Nothing about when to call it is left to inference.

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

get_brand_summaryBrand email summaryA
Read-onlyIdempotent
Inspect

A brand's email-marketing profile as observed by StackEnhance Signal: market, category, the date Signal first observed it, marketing emails observed in the last 6 months, current frequency (average emails per week over the last 90 days) and the date of the latest observed campaign. Use for questions like "How often does Newport email customers?" or "Is IKEA still sending newsletters?". Without a market, a brand tracked in several countries gets one summary per market. Returns aggregates only — no campaign list, subject lines, offers or creative analysis. Cite each result's details_url as the source.

NameRequiredDescriptionDefault
brandYesBrand name as the user wrote it, e.g. "Newport" or "IKEA". A domain such as newport.se also works.
marketNoCountry of one storefront as a two-letter code (SE, NO, DK, FI, DE) or its name ("Sweden"). Omit it to get every market the brand is tracked in.

Output Schema

NameRequiredDescription
resultsYes
unavailableNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower; the description adds genuinely useful scope boundaries (aggregates only, no campaign list, subject lines, offers or creative) and discloses that omitting a market yields one summary per market. The citation instruction for details_url is also actionable. It doesn't specify result limits or handling of untracked brands, keeping it at 4.

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?

Front-loaded with what the tool returns, followed by usage examples, then scope limits and the citation instruction — a sensible priority order with little waste. The middle field enumeration is dense but each item is a distinct return value, so almost every clause earns its place.

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?

For a two-parameter read tool with full schema coverage, an output schema, and safety annotations, the description supplies everything an agent still needs: what the aggregates cover, what they exclude, multi-market behavior, and sourcing guidance. Nothing material is left to inference.

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%, so baseline is 3; the description adds value beyond it by restating the market-omission behavior in consequence terms (one summary per market) rather than as a schema note, and its examples reinforce the brand-name input. It does not add format details the schema lacks, but the schema already covers those.

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 is specific about the verb and resource: it returns a brand's email-marketing profile, and it enumerates the exact fields (market, category, first-observed date, 6-month email volume, 90-day frequency, latest campaign date). However, it never distinguishes itself from the sibling get_brand_email_frequency, which overlaps heavily with the frequency field described here.

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?

Concrete example questions ("How often does Newport email customers?", "Is IKEA still sending newsletters?") give clear when-to-use signals, and the note about multi-market brands clarifies a practical edge case. It stops short of the 5 because it offers no exclusion guidance against get_brand_email_frequency, the obvious alternative for the frequency question it uses as its own example.

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
    • First observedfind_brands
    • First observedget_brand_email_frequency
    • First observedget_brand_summary

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    23 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources