Skip to main content
Glama

Pay invoice

pay_invoice

Pay a Vybe invoice by /r/ URL or publicId under the owner’s spend key. Creates awaiting_approval — money does not move until Approve in Vybe. Only vybe.finance/r/… links are allowed (not arbitrary URLs). Friendship is not required. Related: create_invoice, get_invoice, get_limits, get_spend_balance, list_recent_pays.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "pay_invoice"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlNoFull invoice URL, e.g. https://www.vybe.finance/r/Vh3xR2mQ
publicIdNoInvoice publicId when you already have it.

Output Schema

NameRequiredDescriptionDefault
okYes
amountNo
statusNo
messageNo
publicIdNo
approveUrlNo
payeeUsernameNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Goes well past the annotations: it discloses that the call only creates an awaiting_approval state and no money moves until the owner approves in Vybe — critical context for a non-read-only, non-idempotent tool. It also surfaces the URL-domain guardrail and the spend-key authorization scope, neither of which appears in the annotations.

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 compact sentences: the action and inputs come first, then the most consequential behavior (no immediate money movement), then the eligibility restriction and related tools. No sentence restates the name or title.

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 payment tool with an output schema, no annotations covering the approval flow, and full schema coverage, the definition supplies the missing essentials: approval gating, allowed URL scope, spend-key context, and pointers to balance/limit tools. An agent has enough to decide and invoke correctly.

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 the schema already documents both parameters and the baseline is 3. The description adds real meaning on top: the url parameter must be a vybe.finance/r/… link rather than any arbitrary URL, a validation constraint the schema does not state.

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?

Names a specific verb and resource ("Pay a Vybe invoice") plus the two accepted identifiers (URL or publicId) and the spend-key scope. It is immediately distinguishable from create_invoice and get_invoice, which operate on the invoice lifecycle rather than moving funds.

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 explicit eligibility constraints — only vybe.finance/r/ links, not arbitrary URLs, and friendship is not required — plus a "Related:" list pointing to create_invoice, get_invoice, get_limits, get_spend_balance and list_recent_pays. It stops short of explicitly naming a when-to-use alternative (e.g. pay_offering) or stating prerequisites such as sufficient balance.

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.

Resources