Skip to main content
Glama

Resolve a merchant

resolve_merchant
Read-only

Shows how earnrate identifies a merchant: its spend category, likely MCC, which card networks it takes, confidence, and whether that came from curated data, Claude, or nowhere. Use it to explain or double-check a recommendation.

Input Schema

NameRequiredDescriptionDefault
channelNoHow the purchase is made. Omit if unknown; the answer says what it assumed.
categoryNoOnly for a merchant earnrate may not know, and only if you're confident what kind of business it is: its spending category, e.g. grocery.supermarket for a supermarket, dining for a restaurant, gas for a gas station. Ignored when earnrate knows the merchant. Leave it out if unsure. Categories: dining (Restaurants), dining.fast_food (Fast food), grocery.supermarket (Supermarkets), grocery.online (Online grocery and delivery), superstore (Superstores), warehouse_club (Warehouse clubs), convenience_store (Convenience stores), gas (Gas stations), gas.grocery_store (Gas at grocery stores), gas.superstore (Gas at superstores and warehouse clubs), ev_charging (EV charging), transit (Transit), transit.rideshare (Rideshare and taxis), travel (Travel), travel.flights (Flights), travel.hotels (Hotels), travel.car_rental (Car rental), travel.cruise (Cruises), streaming (Streaming services), tv_internet (TV and internet service), phone (Cell phone service), utilities (Home utilities), drugstore (Drugstores and pharmacies), movie_theaters (Movie theaters), entertainment (Live entertainment and events), fitness (Gyms and fitness), department_store (Department stores), clothing (Clothing stores), electronics (Electronics stores), sporting_goods (Sporting goods stores), home_improvement (Home improvement), furniture (Furniture stores), online_retail (Online retail), office_supply (Office supply stores), shipping (Shipping and couriers), online_advertising (Social media and search advertising), other (Everything else).
merchantYesMerchant name or web address as the user would say it or see it, e.g. "Whole Foods" or "delta.com".

Output Schema

NameRequiredDescriptionDefault
inputYes
sourceYes
acceptsYes
channelYes
categoryYes
ambiguityYes
bookedViaYes
inferenceYes
likelyMccYes
confidenceYes
merchantIdYes
resolvedNameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / category / description
      Previous value: -"Only for a merchant earnrate may not know, and only if you're confident what kind of business it is: its spending category, e.g. grocery.supermarket for a supermarket, dining for a restaurant, gas for a gas station. Ignored when earnrate knows the merchant. Leave it out if unsure. Categories: dining (Restaurants), dining.fast_food (Fast food), grocery (Grocery), grocery.supermarket (Supermarkets), grocery.online (Online grocery and delivery), superstore (Superstores), warehouse_club (Warehouse clubs), convenience_store (Convenience stores), gas (Gas stations), gas.grocery_store (Gas at grocery stores), gas.superstore (Gas at superstores and warehouse clubs), ev_charging (EV charging), transit (Transit), transit.rideshare (Rideshare and taxis), travel (Travel), travel.flights (Flights), travel.hotels (Hotels), travel.car_rental (Car rental), travel.cruise (Cruises), streaming (Streaming services), tv_internet (TV and internet service), phone (Cell phone service), utilities (Home utilities), drugstore (Drugstores and pharmacies), movie_theaters (Movie theaters), entertainment (Live entertainment and events), fitness (Gyms and fitness), department_store (Department stores), clothing (Clothing stores), electronics (Electronics stores), sporting_goods (Sporting goods stores), home_improvement (Home improvement), furniture (Furniture stores), online_retail (Online retail), office_supply (Office supply stores), shipping (Shipping and couriers), online_advertising (Social media and search advertising), other (Everything else)."New value: +"Only for a merchant earnrate may not know, and only if you're confident what kind of business it is: its spending category, e.g. grocery.supermarket for a supermarket, dining for a restaurant, gas for a gas station. Ignored when earnrate knows the merchant. Leave it out if unsure. Categories: dining (Restaurants), dining.fast_food (Fast food), grocery.supermarket (Supermarkets), grocery.online (Online grocery and delivery), superstore (Superstores), warehouse_club (Warehouse clubs), convenience_store (Convenience stores), gas (Gas stations), gas.grocery_store (Gas at grocery stores), gas.superstore (Gas at superstores and warehouse clubs), ev_charging (EV charging), transit (Transit), transit.rideshare (Rideshare and taxis), travel (Travel), travel.flights (Flights), travel.hotels (Hotels), travel.car_rental (Car rental), travel.cruise (Cruises), streaming (Streaming services), tv_internet (TV and internet service), phone (Cell phone service), utilities (Home utilities), drugstore (Drugstores and pharmacies), movie_theaters (Movie theaters), entertainment (Live entertainment and events), fitness (Gyms and fitness), department_store (Department stores), clothing (Clothing stores), electronics (Electronics stores), sporting_goods (Sporting goods stores), home_improvement (Home improvement), furniture (Furniture stores), online_retail (Online retail), office_supply (Office supply stores), shipping (Shipping and couriers), online_advertising (Social media and search advertising), other (Everything else)."
    • changedInput schema / properties / category / enum
      Previous value: -[
      -  "dining",
      -  "dining.fast_food",
      -  "grocery",
      -  "grocery.supermarket",
      -  "grocery.online",
      -  "superstore",
      -  "warehouse_club",
      -  "convenience_store",
      -  "gas",
      -  "gas.grocery_store",
      -  "gas.superstore",
      -  "ev_charging",
      -  "transit",
      -  "transit.rideshare",
      -  "travel",
      -  "travel.flights",
      -  "travel.hotels",
      -  "travel.car_rental",
      -  "travel.cruise",
      -  "streaming",
      -  "tv_internet",
      -  "phone",
      -  "utilities",
      -  "drugstore",
      -  "movie_theaters",
      -  "entertainment",
      -  "fitness",
      -  "department_store",
      -  "clothing",
      -  "electronics",
      -  "sporting_goods",
      -  "home_improvement",
      -  "furniture",
      -  "online_retail",
      -  "office_supply",
      -  "shipping",
      -  "online_advertising",
      -  "other"
      -]New value: +[
      +  "dining",
      +  "dining.fast_food",
      +  "grocery.supermarket",
      +  "grocery.online",
      +  "superstore",
      +  "warehouse_club",
      +  "convenience_store",
      +  "gas",
      +  "gas.grocery_store",
      +  "gas.superstore",
      +  "ev_charging",
      +  "transit",
      +  "transit.rideshare",
      +  "travel",
      +  "travel.flights",
      +  "travel.hotels",
      +  "travel.car_rental",
      +  "travel.cruise",
      +  "streaming",
      +  "tv_internet",
      +  "phone",
      +  "utilities",
      +  "drugstore",
      +  "movie_theaters",
      +  "entertainment",
      +  "fitness",
      +  "department_store",
      +  "clothing",
      +  "electronics",
      +  "sporting_goods",
      +  "home_improvement",
      +  "furniture",
      +  "online_retail",
      +  "office_supply",
      +  "shipping",
      +  "online_advertising",
      +  "other"
      +]
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, openWorldHint=false), so the description's added value is the disclosure that resolution may come from curated data, Claude, or nowhere — a meaningful behavioral trait (LLM fallback, possible unknowns) that the annotations do not convey. It stops short of describing what happens when confidence is low or how unknowns are surfaced in the response.

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 tight sentences: the first front-loads the substantive content (what the tool reveals), the second gives the use case. No filler, no restating of the title.

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 detailed, and the description still previews the shape usefully. Combined with full schema coverage and clear annotations, an agent has everything needed to call it; only low-confidence/unknown-handling behavior is left implicit.

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 both enum parameters carry rich inline descriptions (including the hint that 'category' is ignored when the merchant is known, and that omitting 'channel' makes the answer state its assumption). The description adds nothing about parameters, so the baseline 3 applies.

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?

Uses a specific verb ('identifies a merchant') and enumerates the concrete outputs: spend category, likely MCC, network acceptance, confidence, and provenance. The closing line positions it as a diagnostic/explanation tool rather than a recommendation engine, distinguishing it from siblings like best_card_for_purchase.

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?

Explicitly states the use case: 'Use it to explain or double-check a recommendation.' That gives a clear triggering context, but it names no alternative (e.g. 'use best_card_for_purchase to generate the recommendation first') and gives no when-not-to-use condition.

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.