Skip to main content
Glama
YNAB MCP Server

YNAB MCP Server

by oliverames

Search Payees

search_payees
Read-onlyIdempotent

Find payee IDs by case-insensitive partial name match, ignoring HTML escaping; use one distinctive word since OR tokens aren't supported.

Instructions

Find payee IDs by case-insensitive substring, ignoring HTML escaping. Unlike search_categories, no OR tokens: try one distinctive word.

Input Schema

NameRequiredDescriptionDefault
queryYesPartial payee name to search for
budgetIdNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv6.1.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / properties / budgetId / description
      Removed value: -"Budget ID (uses default if not provided)"
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Changed1 schema field changedv5.4.0
    • removedOutput schema / properties / result / description
      Removed value: -"Structured result returned by Search Payees."
  3. Changed1 schema field changedv5.1.1
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "result": {
      +      "description": "Structured result returned by Search Payees."
      +    }
      +  },
      +  "required": [
      +    "result"
      +  ],
      +  "type": "object"
      +}
  4. First observedv2.0.0

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/closed-world, so the safety profile is covered; the description adds real behavioral detail beyond that: case-insensitive matching, HTML-escape normalization, and the absence of OR token support. It does not mention result limits or pagination, keeping it 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?

Two sentences, zero filler, with the core matching behavior front-loaded and the caveat about OR tokens placed as a follow-on warning. Every clause carries information an agent needs to form a valid query.

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?

An output schema exists so return values need no explanation, and the query semantics are well covered. The gap is budgetId, which no structured field or description clarifies, leaving an agent unsure whether results are budget-scoped or optional.

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 only 50% – query is documented in-schema and budgetId has no description anywhere. The description usefully clarifies that query is a substring match with case-insensitive, HTML-unescaped semantics and no OR tokens, but leaves budgetId completely unexplained, so it only partially compensates.

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 (Find) and resource (payee IDs) plus the matching mechanism (case-insensitive substring, ignoring HTML escaping), which is more than a restated title. It contrasts with search_categories, but does not differentiate from the closer sibling list_payees, which also returns payees.

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 closing sentence 'try one distinctive word' gives a concrete query-construction hint, and it warns that OR tokens are unsupported unlike search_categories. However, there is no guidance on when to use this versus list_payees or get_payee, so usage is only implied.

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