Skip to main content
Glama
highnote-mcp

highnote-mcp

by Mohith26

Restrict merchant categories

restrict_merchant_categories

Create and attach a merchant category spend rule to a Highnote card, allowing or blocking purchases by category name or 4-digit MCC to control where card funds can be used.

Instructions

Create a merchant category spend rule (allow list or block list, by Highnote MerchantCategory name or MCC) and attach it to a card.

Input Schema

NameRequiredDescriptionDefault
nameNo
allowedNoOnly allow these categories, e.g. COMPUTER_SOFTWARE_STORES or BETTING_CASINO_GAMBLING
blockedNoDecline these categories
confirmNoRequired in the live environment. Without it the tool only describes what it would do.
allowedMccNoOnly allow these 4-digit MCCs
blockedMccNoDecline these 4-digit MCCs
paymentCardIdYesHighnote payment card ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full burden. It does disclose the useful behavioral fact that the call both creates a rule and attaches it to a card, but it omits whether an existing rule is replaced or appended, whether allowed and blocked may be combined, permission requirements, and idempotency behavior.

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?

A single front-loaded sentence with the action, the two list modes, the identifier formats, and the attachment target. There is no redundant restatement of the tool name or the schema.

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?

For a 7-parameter mutation tool with no annotations and no output schema, one sentence leaves meaningful gaps: replacement-vs-additive semantics, mutual exclusivity of allow/block lists, and any confirmation of what the call returns. The dry-run behavior is only covered by the schema's confirm description, so the definition is workable but thin overall.

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 description coverage is 86%, so the baseline is 3; the description pushes it higher by framing the two parallel parameter families ('by Highnote MerchantCategory name or MCC'), which tells the agent that allowed/blocked and allowedMcc/blockedMcc are alternate encodings of the same concept. It still says nothing about whether allowed and blocked are mutually exclusive or how conflicting entries are resolved.

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 names a specific verb+resource ('Create a merchant category spend rule') plus the compound effect ('attach it to a card'), and it pins the domain to merchant categories by name or MCC. That is clearly distinguishable from sibling spend-control tools such as set_transaction_limit (amount limits) or simulate_authorization (a test, not a rule).

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 only implied: an agent can infer it is used when a card needs category-level allow/block rules, but the description never states when to choose this over set_transaction_limit, nor that it should be paired with simulate_authorization to validate the outcome. There are no explicit exclusions or prerequisites (e.g., live-environment confirmation is only discoverable in the schema).

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