Skip to main content
Glama

Server Details

Unmet shopper demand: products people ask for and can't buy, checked against 2M+ retail listings.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation3/5

Most tools have a clear primary role, but there is real overlap: check_demand, list_gaps and search_products all retrieve gap/listing data, and get_gap with detail=full competes with get_dossier as the 'deep dive on one gap' path. The descriptions differentiate cost and scope, but an agent must read carefully to pick correctly.

Naming Consistency4/5

All seven tools follow a snake_case verb_noun convention (check_demand, get_gap, list_gaps, search_products, report_not_found), which is predictable. get_setup_and_upgrade_links is an unusually long compound outlier but still fits the pattern.

Tool Count5/5

Seven tools is well-scoped for a gap-research service: discovery, listing, single-gap detail, dossier, product search, reporting, and onboarding links each earn a slot. Nothing feels padded or missing at this granularity.

Completeness4/5

The surface covers the core lifecycle: find gaps (check_demand/list_gaps), inspect them (get_gap/get_dossier), search live retail (search_products), and report misses (report_not_found), plus setup/upgrade help. Minor gaps exist — no way to check credit balance or track/save gaps across sessions — but agents can work around these.

Available Tools

7 tools
check_demandCheck demand for a product ideaAInspect

Start here. Check whether people have asked for a product and could not buy it. Returns matching exNiche gaps at summary level (verdict, score band, class, trend, source counts, one linked ask) and records your ask as one AI agent search. 1 credit. Never send personal details or synthetic asks.

NameRequiredDescriptionDefault
queryYesShort product idea, e.g. 'waterproof dog backpack'.

Output Schema

NameRequiredDescription
codeNo
queryNo
licenceNo
matchesNo
messageNo
recordedNo
upgrade_urlNo
human_messageNo
credits_chargedNo

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the annotations, it discloses the non-obvious cost ('1 credit') and the side effect that the call records the ask as one AI agent search, which is exactly why readOnlyHint=false and idempotentHint=false matter. It also enumerates what the summary-level response contains, so the agent knows what it gets before spending a credit.

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?

Front-loaded with the ordering cue, then purpose, return shape, cost, and a safety constraint in four tight sentences. The parenthetical list of return fields earns its space by letting the agent judge sufficiency without opening 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?

For a single-parameter tool with an output schema already present, the description covers purpose, entry-point role, cost, side effect, and a data-safety rule. Nothing an agent needs in order to call it correctly and safely 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 coverage is 100% and the single query parameter already carries a length bound and an example, so the schema does the heavy lifting. The description adds a content constraint ('never send personal details or synthetic asks') but no syntax or scoping detail beyond that.

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?

States a specific check ('whether people have asked for a product and could not buy it') and names the resource as 'exNiche gaps at summary level', which implicitly separates it from detail-oriented siblings like get_gap and get_dossier. It never names a sibling explicitly, so the differentiation is inferable rather than stated.

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?

'Start here' gives an explicit entry-point ordering, and 'Never send personal details or synthetic asks' is a clear when-not constraint. It stops short of naming the sibling to use for follow-up detail (get_gap/get_dossier), so the routing is left partly to inference.

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

get_dossierGet a gap dossierA
Idempotent
Inspect

Full dossier for a scored gap: product-by-product checks, live closest products, supplier candidates and a suggested spec. Needs a workspace key. Unlocking costs 19,000 credits once per account; an already unlocked dossier costs 0. Ask the user before unlocking.

NameRequiredDescriptionDefault
idYes

Output Schema

NameRequiredDescription
codeNo
dossierNo
licenceNo
upgrade_urlNo
human_messageNo
credits_chargedNo

TDQS

A4/5.0
Behavior5/5

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

Despite annotations covering safety (readOnly=false, idempotent=true, destructive=false), the description adds critical economics the annotations cannot express: unlocking costs 19,000 credits once per account, and an already-unlocked dossier costs 0. It also discloses the workspace-key requirement and mandates user confirmation before spending, which is exactly the context an agent needs before invoking a costly non-read-only call.

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?

Three front-loaded sentences with zero filler: what you get, what it requires, what it costs. The cost and confirmation warning are placed where they will be read before the call, not buried.

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?

An output schema exists, so return values need not be explained, and the description covers auth, cost, and user-consent behavior. It stops short of stating what occurs when credits are insufficient or when the underlying gap is not found, minor gaps for an otherwise well-covered definition.

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 0%, so the description must carry the parameter meaning. It implies the single 'id' refers to a scored gap, which is useful, but it doesn't state the id format, where to obtain it (e.g., from list_gaps or get_gap), or what happens if an unscored id is passed.

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 gives a specific resource (a full dossier for a scored gap) and enumerates its contents: product-by-product checks, live closest products, supplier candidates, and a suggested spec. It is clear what the tool returns, but it never explicitly contrasts itself with the sibling get_gap, so the agent must infer that get_gap is the lighter-weight read and this is the expensive deep-dive.

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?

It states a prerequisite (needs a workspace key) and a procedural rule (ask the user before unlocking), which is real usage guidance. However, it gives no explicit when-to-use-this-vs-alternatives rule against get_gap, list_gaps, or check_demand, leaving the cost-driven selection to inference.

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

get_gapGet one gapA
Read-onlyIdempotent
Inspect

Get one gap by id or slug. detail=summary costs 1 credit; detail=full (exact score parts, every ask with link and attribution, requirements, 8-week ask counts) costs 100 credits. Unscored leads only return summary.

NameRequiredDescriptionDefault
idYesGap id or slug from list_gaps or check_demand.
detailNosummary = L0 (1 credit per call); full = L1 (1 + 10 credits per scored row).summary

Output Schema

NameRequiredDescription
gapNo
codeNo
licenceNo
upgrade_urlNo
human_messageNo
credits_chargedNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations cover safety (readOnly, idempotent, closed-world), and the description adds real behavioral context: a 1-credit vs 100-credit price wall and the fallback behavior for unscored leads. However, the flat "costs 100 credits" conflicts with the schema's "1 + 10 credits per scored row", leaving the true cost model ambiguous for expensive calls.

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?

Three short sentences, front-loaded with the core action, then the cost tradeoff, then the one surprising caveat. No filler and nothing buried.

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?

With an output schema present, return values need not be explained, and the description covers purpose, cost, and the summary-only edge case. The unresolved discrepancy between "100 credits" and the per-row formula is the one gap an agent could stumble on.

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, but the description earns an extra point by enumerating what `full` actually returns (exact score parts, every ask with link and attribution, requirements, 8-week ask counts) rather than restating the enum. The `id` parameter gets no added meaning in the description beyond what the schema already documents.

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 ("Get one gap by id or slug") and implicitly contrasts with the collection-level list_gaps sibling by emphasizing singular retrieval. An agent can tell immediately this is a single-record fetch keyed by identifier.

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 clear operational context: two detail levels with sharply different credit costs and the constraint that unscored leads only return summary, which tells the agent when the cheap call suffices. It does not explicitly name check_demand or get_dossier as alternatives or state when not to call it, so it stops short of a 5.

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

list_gapsList scored product gapsA
Read-onlyIdempotent
Inspect

List the exNiche gap ledger with filters. detail=summary costs 1 credit per call; detail=full adds exact scores, all linked asks and requirements for 10 credits per scored row. Scores mean 'worth a closer look', not verified demand.

NameRequiredDescriptionDefault
qNoWords that must appear in the gap label or requirements.
sortNoscore
classNoComma list of absent, exists_hard_to_find, unverified.
limitNo
sinceNoISO date or epoch ms; only gaps with an ask since then.
trendNoComma list of rising, steady, cooling.
cursorNonext_cursor from the previous page.
detailNosummary = L0 (1 credit per call); full = L1 (1 + 10 credits per scored row).summary
sourceNoComma list of community_ask, agent_search, store_search, bot_research.
includeNoAlso return unscored leads (L0 only, verdict null).
verdictNoComma list of go, maybe, no-go.
categoryNo
min_scoreNo

Output Schema

NameRequiredDescription
codeNo
gapsNo
detailNo
licenceNo
next_cursorNo
upgrade_urlNo
human_messageNo
credits_chargedNo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, closed-world behavior, and the description adds genuinely new context: the credit cost model (1 per call, +10 per scored row for full detail) and the caveat that scores signal 'worth a closer look', not verified demand. That disclaimer meaningfully shapes how an agent should interpret results. It omits pagination behavior and result-set sizing, so it falls short of a 5.

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?

Three tight sentences: what it lists, then the cost model, then the critical interpretive caveat. The most decision-relevant facts (cost and score meaning) are front-loaded with no filler.

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?

With 13 optional parameters, an output schema, and full annotation coverage, the description supplies the two things structured fields cannot: the credit cost model and the semantics of scores. It leaves out pagination guidance and how filters combine, but nothing critical is missing for a correct call.

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 69%, so most parameters are already documented in the schema. The description adds meaning only for 'detail' (clarifying it costs 1 credit per call vs 10 per scored row) and implicitly for score-related params via the 'worth a closer look' note; filters like q, verdict, class, source, and cursor get nothing beyond the schema.

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?

States a specific verb and resource ('List the exNiche gap ledger') plus its scoping ('with filters'), which is enough to distinguish this list tool from get_gap. It never names a sibling explicitly, so the differentiation is inferred rather than stated.

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 gives practical guidance on the detail=summary vs detail=full tradeoff and its credit cost, which implicitly steers the agent's choice. It never says when to prefer this listing over get_gap, check_demand, or get_dossier, nor any exclusions or prerequisites.

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

report_not_foundReport unsatisfied shopping requestAInspect

Free. Report a genuine shopper mismatch after a search. Do not send synthetic reports or personal details. Response states whether the agent observation was saved; it is not verified human demand.

NameRequiredDescriptionDefault
queryYes

Output Schema

NameRequiredDescription
codeNo
noteNo
savedNo
evidenceNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already flag a non-read-only, non-destructive, non-idempotent write; the description adds real value on top by disclosing cost ("Free"), the response semantics (saved vs. not), and the important caveat that the report is not verified human demand. It doesn't mention duplicate/idempotency behavior, which matters given idempotentHint=false.

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?

Three short sentences, front-loaded with cost and action, then constraints, then return semantics — nothing wasted and no repetition of annotation or schema content.

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?

The caveat about verification and the saved/not-saved response are covered, and an output schema exists so return shape needn't be spelled out. However, a write tool with an undocumented required argument should define what constitutes a "mismatch" and what to put in query.

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 0% and the single parameter is never explained — "query" could plausibly mean the original search string, the product sought, or a free-text mismatch description (maxLength 500 suggests the latter). Only the phrase "after a search" hints at its content, leaving the required argument genuinely ambiguous.

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?

Uses a specific verb (report) plus a scoped object (a genuine shopper mismatch after a search), which an agent can distinguish from check_demand/list_gaps. It never names a sibling outright, so sibling routing is implied rather than explicit.

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?

"after a search" establishes the precondition, and "Do not send synthetic reports or personal details" gives an explicit when-not rule that most tools lack. It stops short of naming which alternative to use (e.g., check_demand) when the agent wants demand data instead.

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

search_productsSearch retail productsA
Read-onlyIdempotent
Inspect

Search recorded retail listings across stores using explicit budget, currency, size, color and stock filters. 1 credit. Returns ranked purchase links with observed availability; unknown facts stay unknown. Misses may be saved as agent observations, never verified human demand.

NameRequiredDescriptionDefault
sizeNoRequired recorded size, e.g. M.
sortNorelevance
colorNoRequired recorded color, e.g. black.
limitNo
queryYesShort product category or name, e.g. keyboards, shoes or coffee. Put constraints in separate fields.
currencyNoThree-letter currency code, e.g. AUD.
in_stockNoFilter recorded availability. Availability must be checked at retailer.
max_priceNoMaximum recorded price. Supply currency too; no currency conversion.

Output Schema

NameRequiredDescription
codeNo
foundNo
resultsNo
upgrade_urlNo
human_messageNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover read-only/idempotent/open-world, yet the description still adds real behavioral value: a 1-credit cost, ranked purchase-link output with only observed availability, the disclaimer that unknown facts stay unknown, and that misses are logged as agent observations rather than verified demand. It could go further on what 'ranked' means or pagination, but this is well beyond annotation restatement.

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?

Two sentences, front-loaded with the action and filter scope, and the cost/return/caveat information is packed without filler. The final clause about saved observations is terse to the point of slight opacity but still earns its place.

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 an 8-parameter open-world search with an output schema (so return shape needn't be spelled out) and annotations covering safety, the description supplies cost, reliability caveats and filter intent. Missing only explicit sibling routing, which keeps it short of 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?

With 75% schema description coverage the schema already documents query, size, color, currency, max_price and in_stock. The description only echoes the filter families ('budget, currency, size, color and stock') without adding format or interaction detail (e.g. that max_price requires a matching currency), so it lands at the 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?

States a specific verb+resource ('Search recorded retail listings across stores') plus the filter axes it accepts, which is enough for an agent to recognize a product-listing search. The closing clause about observations vs verified human demand implicitly carves out space from siblings like check_demand, but no sibling is named explicitly.

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?

Usage is implied by 'using explicit budget, currency, size, color and stock filters' – it tells you this is the constrained-search path – but it never states when to prefer check_demand, get_gap or report_not_found instead, nor any prerequisite or exclusion. Adequate implication, no explicit routing.

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. 7 tool updates
    • First observedcheck_demand
    • First observedget_dossier
    • First observedget_gap
    • First observedget_setup_and_upgrade_links
    • First observedlist_gaps
    • First observedreport_not_found
    • First observedsearch_products

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources