Skip to main content
Glama

Paypal Get Invoice

paypal_get_invoice
Read-onlyIdempotent

Get full details of a PayPal invoice by ID. Returns line items, amounts, due dates, and payment status.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
_sandboxNoUse sandbox environment (default: false)
_clientIdYesPayPal app Client ID
invoice_idYesPayPal invoice ID (e.g., INV2-XXXX-XXXX-XXXX-XXXX)
_clientSecretYesPayPal app Client Secret

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNoInvoice ID
itemsNoInvoice line items
amountNo
numberNoInvoice number
statusNoInvoice status
customerNo
due_dateNoDue date in ISO 8601 format
create_timeNoCreation timestamp
update_timeNoLast update timestamp

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "description": "Full details of a PayPal invoice",
      +  "properties": {
      +    "amount": {
      +      "properties": {
      +        "currency_code": {
      +          "description": "Currency code",
      +          "type": "string"
      +        },
      +        "value": {
      +          "description": "Total amount",
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "create_time": {
      +      "description": "Creation timestamp",
      +      "type": "string"
      +    },
      +    "customer": {
      +      "properties": {
      +        "email": {
      +          "description": "Customer email",
      +          "type": "string"
      +        },
      +        "name": {
      +          "description": "Customer name",
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "due_date": {
      +      "description": "Due date in ISO 8601 format",
      +      "type": "string"
      +    },
      +    "id": {
      +      "description": "Invoice ID",
      +      "type": "string"
      +    },
      +    "items": {
      +      "description": "Invoice line items",
      +      "items": {
      +        "properties": {
      +          "amount": {
      +            "properties": {
      +              "currency_code": {
      +                "type": "string"
      +              },
      +              "value": {
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "description": {
      +            "description": "Item description",
      +            "type": "string"
      +          },
      +          "name": {
      +            "description": "Item name",
      +            "type": "string"
      +          },
      +          "quantity": {
      +            "description": "Item quantity",
      +            "type": "string"
      +          },
      +          "unit_amount": {
      +            "properties": {
      +              "currency_code": {
      +                "type": "string"
      +              },
      +              "value": {
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "number": {
      +      "description": "Invoice number",
      +      "type": "string"
      +    },
      +    "status": {
      +      "description": "Invoice status",
      +      "type": "string"
      +    },
      +    "update_time": {
      +      "description": "Last update timestamp",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "_clientId": "your-paypal-client-id",
      +    "_clientSecret": "your-paypal-client-secret",
      +    "invoice_id": "INV2-1234-5678-9ABC-DEF0"
      +  }
      +]
  3. First observed

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. Description adds return field details but no new behavioral traits (e.g., authentication, rate limits). Consistent but not additive.

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?

Single sentence with clear action and result. Efficient and front-loaded with purpose.

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?

Output schema exists, so return values are implicitly covered. Description mentions key fields. Lacks mention of authentication prerequisites, but schema provides that. Adequately complete.

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 description coverage is 100%, so each param is already documented. The description clarifies invoice_id is the key identifier but adds no new semantics beyond schema.

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 clearly states the tool retrieves full invoice details by ID, with specific return fields (line items, amounts, dates, status). Distinguishes from siblings like paypal_get_order and paypal_list_invoices.

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?

No explicit guidance on when to use vs alternatives. Agents must infer from context: use when invoice ID is known. Sibling names (paypal_list_invoices) suggest an alternative for listing, but not stated.

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.