CardPoints
Server Details
UK loyalty schemes: what points are worth, bonus points offers now, and where each shop earns.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
The three tools have clearly separated anchors: cross-scheme ranking, shop-centric lookup, and single-scheme detail. The fact that both find_points_at_shop and get_loyalty_scheme can surface offers is not ambiguous because the query anchor is explicit in the tool name and description.
All tool names use verb-first snake_case, which is readable and predictable. However, compare_loyalty_points_value uses a longer compound object than the simpler find_points_at_shop and get_loyalty_scheme patterns, a minor inconsistency.
Three tools are appropriate for this focused read-only loyalty-scheme reference domain. They cover the main user intents—comparison, shop lookup, and scheme detail—without bloat.
Core lookup paths are covered: schemes can be compared, found by shop, and retrieved individually with values and offers. There is no explicit list-all-schemes or spend-calculation tool, but agents can derive those from compare output, so gaps are minor.
Available Tools
3 toolscompare_loyalty_points_valueUK loyalty points value indexARead-onlyIdempotentInspect
Every UK loyalty scheme CardPoints covers, ranked by what its usual earning rate gives back per £1: points per £1, what one point is worth, and the date each scheme's figures were read from its own terms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, closed-world and non-destructive, so the safety profile is covered. The description still adds value by disclosing coverage ('every UK loyalty scheme CardPoints covers') and, importantly, that each scheme's figures carry the date they were read from that scheme's own terms – a freshness/provenance caveat an agent would not get from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the resource, the ordering, and the three returned fields with zero filler. Nothing could be cut without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no input parameters and no output schema, the description carries the return-value burden and does so by enumerating the fields returned. It could be slightly stronger by stating that results are sorted/complete and roughly how large the index is, but for a zero-arg read tool it is essentially sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, so the baseline is 4. The description correctly frames the call as a parameterless full-index retrieval and adds no misleading argument expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and scope: a ranked index of every UK loyalty scheme CardPoints covers, with the three metrics it reports (points per £1, value per point, figures-read date). This implicitly distinguishes it from single-scheme siblings like get_loyalty_scheme, but it never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the cross-scheme ranking framing suggests 'use this to compare schemes', while find_points_at_shop and get_loyalty_scheme handle narrower lookups. There is no explicit when-to-use, when-not-to-use, or named alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_points_at_shopLoyalty points at a UK shopARead-onlyIdempotentInspect
Which UK loyalty schemes CardPoints covers earn points at a named shop or brand, with the offers running there now and the date each was last checked.
| Name | Required | Description | Default |
|---|---|---|---|
| shop | Yes | The shop or brand, e.g. "Argos", "Esso", "Hotels.com". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), and the description adds real value on top: it discloses that results include currently running offers and a per-offer last-checked date, signalling freshness and that results are time-sensitive. It stops short of saying what happens when a shop isn't covered by any scheme, which is the main remaining behavioral gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the answer shape (which schemes), followed by the extra payload (offers and last-checked date). Nothing redundant or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, read-only lookup with no output schema, the description is nearly sufficient: it explains what comes back and that results are date-stamped. Only the empty/no-coverage outcome and result ordering are unaddressed, which is a minor gap given the closed-world annotation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already gives the shop/brand examples, so the description adds little beyond repeating 'named shop or brand'. Baseline 3 is right when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and scope: which UK loyalty schemes earn points at a named shop, plus the live offers and last-checked date. It carves out a distinct role from compare_loyalty_points_value and get_loyalty_scheme implicitly (per-shop lookup vs. valuation vs. scheme detail), but never names them, so the differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The framing ('Which UK loyalty schemes CardPoints covers') implies you call it when you have a shop and want to know what earns there, but there are no explicit when-to-use or when-not rules and no routing to the sibling tools. Usage is inferable, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_loyalty_schemeUK loyalty scheme: points value and current offersARead-onlyIdempotentInspect
One UK loyalty scheme CardPoints covers: what its points are worth, its usual earning rate and expiry rules, the bonus points offers running now and the always-on ways to earn, each with the date CardPoints last checked it at the brand's own site.
| Name | Required | Description | Default |
|---|---|---|---|
| scheme | Yes | The scheme or the brand that runs it, e.g. "Boots Advantage Card", "Nectar", "Clubcard", "Avios". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, closed-world behavior, so the bar is lower. The description adds genuinely useful context beyond that: the exact content returned, and that each fact carries the date it was last verified at the brand's own site, which signals freshness/data provenance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the scope and then lists the payload contents. It is dense but every clause carries information; only mild awkwardness in the 'One UK loyalty scheme CardPoints covers' construction.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does the work of telling the agent what comes back and that values are dated, which is sufficient for a simple single-parameter read tool. Only the absence of explicit routing to siblings keeps it from full marks.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single 'scheme' parameter already has examples like 'Boots Advantage Card' and 'Nectar'. The description only reinforces the one-scheme scope, adding little syntactic or interpretive meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States clearly that it returns the details of a single UK loyalty scheme and enumerates what is covered (points value, earning rate, expiry, current offers). It's clear but the verb is implicit ('covers') and it never names the sibling tools, so differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'One UK loyalty scheme' implies a single-scheme lookup as opposed to the comparison/point-finding siblings, but there is no explicit when-to-use or when-to-prefer-an-alternative guidance. Usage is only inferable from the scope wording.
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.
3 tool updates
- First observed
compare_loyalty_points_value - First observed
find_points_at_shop - First observed
get_loyalty_scheme
Related MCP Connectors
Which card to use, what your points are worth, and whether each annual fee earns its keep.
UK discount codes, product prices and price drops, phone deals, what's on and airport parking.
Which of your cards to tap at a place: the cashback, cap and conditions, from the banks' own pages.
Compare products, prices and current offers across UK retailers to find the best deal.
Related MCP Servers
- AlicenseAqualityBmaintenanceTravel award search: compare cash vs points on hotels, flights & cars, cents-per-point, and book319MIT
- FlicenseNot gradedqualityBmaintenanceQuery current and historical UK official figures (tax bands, minimum wage, benefits, energy price cap and 100+ more) with effective dates and links to official government sources. Data refreshed whenever the official sources change.-
- AlicenseNot gradedqualityBmaintenancePersonal UK Tesco grocery account over MCP: search, basket, slots, orders, and on-pack nutrition (search and rank by macros + micros). Catalogue + nutrition tools need no auth; destructive actions require a two-step confirm26 npm15MIT
- AlicenseAqualityBmaintenanceSearches UK electronics products across multiple retailers, compares prices, and provides purchase links.268 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.