Skip to main content
Glama

Ask the user to pay with PayPal

request_paypal_payment

Create a PayPal (sandbox) payment for the checkout's exact total. Returns approve_url, the PayPal link where the user approves the payment.

Input Schema

NameRequiredDescriptionDefault
api_keyNoSandbox key from create_checkout (not needed if the connection already carries one).
session_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description usefully adds that it is sandbox-only and returns the approve_url, but does not clarify the consequence of the non-idempotent hint (e.g., whether repeated calls create duplicate payments) or error 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?

Two tight sentences with zero waste, front-loading the action and the amount scoping before the return value. Nothing extraneous.

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?

For a small mutation tool with annotations covering the behavioral flags and no output schema, the description explains the key return value (approve_url) and the exact-total behavior. Minor gaps remain around duplicate-call behavior given non-idempotency and what happens without api_key, but it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 50%: the api_key parameter is documented in the schema, but session_id has no description anywhere. The description never references either parameter and only loosely implies that the amount is derived from the checkout tied to session_id, so it does not compensate for the coverage gap.

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 and resource ('Create a PayPal (sandbox) payment') and scopes it to the checkout's exact total, plus declares the key return value (approve_url). It is distinguishable from siblings like complete_checkout or wait_for_payment_approval by naming PayPal and the approve link, though it does not explicitly contrast with them.

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 phrase 'for the checkout's exact total' and the approve_url return imply this is the step that produces the user-facing payment link, giving some flow context. However, there is no explicit when-to-use vs siblings (e.g., when to call this instead of complete_checkout or wait_for_payment_approval), nor any exclusions or prerequisites beyond sandbox.

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.