@imazhar101/paypal-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PAYPAL_READONLY | No | 1/true = read tools only; 0 = also write tools | 1 |
| PAYPAL_CLIENT_ID | Yes | PayPal REST app client id | |
| PAYPAL_ENVIRONMENT | No | SANDBOX or PRODUCTION | SANDBOX |
| PAYPAL_CLIENT_SECRET | Yes | PayPal REST app secret |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| paypal_verify_connectionA | Verify the configured PayPal credentials by minting an access token. Returns the environment (SANDBOX/PRODUCTION). Use this to confirm the connection works. |
| paypal_list_transactionsB | Search transactions in a date range (Transaction Search API). start_date and end_date are required ISO-8601 timestamps and must be <= 31 days apart. |
| paypal_get_balancesA | Get current (or as-of) account balances by currency. |
| paypal_list_invoicesB | List invoices (paginated). |
| paypal_get_invoiceA | Get a single invoice by id. |
| paypal_get_orderB | Get a checkout order by id. |
| paypal_get_captureB | Get a captured payment by id. |
| paypal_list_disputesC | List customer disputes. |
| paypal_get_disputeB | Get a dispute by id. |
| paypal_list_plansB | List billing (subscription) plans. |
| paypal_get_subscriptionB | Get a subscription by id. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a distinct resource or action (e.g., get_ vs list_), and all resource types are clearly separated (balances, captures, disputes, invoices, orders, subscriptions, plans, transactions). No two tools have overlapping purposes.
All tools follow a consistent 'paypal_verb_noun' pattern in snake_case, with clear verbs like get, list, and verify. No mixing of conventions or vague verbs.
With 11 tools, the server covers a reasonable breadth of PayPal operations without being excessive. Each tool addresses a clear use case, and the count feels appropriate for a focused integration.
The server is entirely read-only except for credentials verification. Missing create, update, or delete operations for any resource (e.g., orders, invoices, disputes) severely limits its utility for typical payment workflows.