PayPal
offiziellDer PayPal Model Context Protocol Server ermöglicht die Integration mit PayPal-APIs durch Funktionsaufrufe. Dieses Protokoll unterstützt verschiedene Werkzeuge zur Interaktion mit unterschiedlichen PayPal-Diensten.
Was kann man mit PayPal MCP machen?
- Rechnungen erstellen und senden — Bitte um den Entwurf einer Rechnung mit Positionen und sende sie oder plane eine Erinnerung über
create_invoiceundsend_invoice. - Zahlungen und Rückerstattungen verwalten — Erstelle eine Bestellung, erfasse eine Zahlung oder veranlasse eine Rückerstattung für eine erfasste Zahlung mit
create_orderundcreate_refund. - Streitfälle bearbeiten — Liste offene Streitfälle auf, zeige Details an oder akzeptiere einen Anspruch direkt über
list_disputesundaccept_dispute_claim. - Sendungen verfolgen — Erstelle einen Tracking-Datensatz für eine Bestellung und rufe dessen Status mit
create_shipment_trackingundget_shipment_trackingab. - Abonnements verwalten — Richte einen Abonnementplan ein, erstelle ein Abonnement oder kündige ein aktives über
create_subscription_planundcancel_subscription. - Händler-Einblicke abrufen — Rufe Transaktionsverlauf oder Geschäftsanalysen mit
list_transactionsundget_merchant_insightsab.
Gehosteter MCP-Server
npx add-mcp 'https://mcp.paypal.com/mcp'Installiert in Claude Code, Codex, Cursor und mehr
Dokumentation
PayPal Agent Toolkit
Das PayPal Agent Toolkit ermöglicht es gängigen Agent-Frameworks wie dem OpenAI Agent SDK, LangChain, dem Vercel AI SDK und dem Model Context Protocol (MCP), über Funktionsaufrufe in PayPal-APIs zu integrieren. Es unterstützt TypeScript und basiert auf den PayPal-APIs und den PayPal-SDKs.
Verfügbare Tools
Das PayPal Agent Toolkit stellt die folgenden Tools bereit:
Rechnungen
-
create_invoice: Erstellt eine neue Rechnung im PayPal-System, einschließlich Empfänger-Rechnungsdaten, Positionen, einem Rechnungshinweis, einem benutzerdefinierten Farbthema, optionalen Versandkosten und einer Option zur Aktivierung von PAY_BY_BANK als Zahlungsmethode -
list_invoices: Listet Rechnungen mit optionaler Paginierung und Filterung auf -
get_invoice: Ruft Details einer bestimmten Rechnung ab -
send_invoice: Sendet eine Rechnung an Empfänger -
send_invoice_reminder: Sendet eine Erinnerung für eine bestehende Rechnung -
cancel_sent_invoice: Storniert eine gesendete Rechnung -
generate_invoice_qr_code: Generiert einen QR-Code für eine Rechnung -
delete_invoice: Löscht dauerhaft einen Rechnungsentwurf oder eine geplante Rechnung -
generate_invoice_number: Generiert die nächste verfügbare Rechnungsnummer für den Händler -
search_invoicing: Sucht nach Rechnungen oder Serienrechnungen -
update_invoicing: Aktualisiert eine bestehende Rechnung oder Serienrechnung (vollständige Ersetzung) -
cancel_invoice_auto_reminder: Storniert alle geplanten automatischen Erinnerungen für eine Rechnung -
record_payment_for_invoice: Erfasst eine externe oder manuelle Zahlung für eine Rechnung -
record_refund_for_invoice: Erfasst eine Rückerstattung für eine Rechnung -
create_conditional_rules_for_invoice: Erstellt Bedingungsregeln für eine Rechnung, wie z. B. einen Frühzahlungsrabatt oder ein automatisches Stornierungsdatum -
create_recurring_series: Erstellt eine Serienrechnung, die automatisch Rechnungen nach einem Zeitplan generiert und sendet -
activate_recurring_series: Aktiviert eine Serienrechnung im Entwurfsstatus -
get_recurring_series: Ruft Details einer bestimmten Serienrechnung ab -
cancel_recurring_series: Storniert eine aktive Serienrechnung -
delete_recurring_series: Löscht eine Serienrechnung im Entwurfsstatus
Zahlungen
create_order: Erstellt eine Bestellung im PayPal-System basierend auf den angegebenen Detailsget_order: Ruft die Details einer Bestellung abpay_order: Verarbeitet die Zahlung für eine autorisierte Bestellungcreate_refund: Verarbeitet eine Rückerstattung für eine erfasste Zahlungget_refund: Ruft die Details einer bestimmten Rückerstattung ab
Streitfallmanagement
list_disputes: Ruft eine Zusammenfassung aller offenen Streitfälle abget_dispute: Ruft detaillierte Informationen zu einem bestimmten Streitfall abaccept_dispute_claim: Akzeptiert einen Streitfallanspruch
Sendungsverfolgung
create_shipment_tracking: Erstellt einen Sendungsverfolgungsdatensatzget_shipment_tracking: Ruft Sendungsverfolgungsinformationen abupdate_shipment_tracking: Aktualisiert Sendungsverfolgungsinformationen
Katalogverwaltung
create_product: Erstellt ein neues Produkt im PayPal-Kataloglist_products: Listet Produkte mit optionaler Paginierung und Filterung aufshow_product_details: Ruft Details eines bestimmten Produkts ab
Abonnementverwaltung
create_subscription_plan: Erstellt einen neuen Abonnementplanlist_subscription_plans: Listet Abonnementpläne aufshow_subscription_plan_details: Ruft Details eines bestimmten Abonnementplans abcreate_subscription: Erstellt ein neues Abonnementshow_subscription_details: Ruft Details eines bestimmten Abonnements abupdate_subscription: Aktualisiert ein bestehendes Abonnementcancel_subscription: Storniert ein aktives Abonnement
Berichte und Einblicke
list_transactions: Listet Transaktionen mit optionaler Paginierung und Filterung aufget_merchant_insights: Ruft Business-Intelligence-Kennzahlen und Analysen für einen Händler ab
TypeScript
Installation
Sie benötigen diesen Quellcode nicht, es sei denn, Sie möchten das Paket ändern. Wenn Sie das Paket nur verwenden möchten, führen Sie Folgendes aus:
npm install @paypal/agent-toolkit
Anforderungen
- Node 18+
Verwendung
Die Bibliothek muss mit der Client-ID und dem Client-Secret Ihres Kontos konfiguriert werden, die in Ihrem PayPal Developer Dashboard verfügbar sind.
Das Toolkit funktioniert mit dem Vercel AI SDK und kann als Liste von Tools übergeben werden. Weitere Details finden Sie in unseren Beispielen
import { PayPalAgentToolkit } from '@paypal/agent-toolkit/ai-sdk';
const paypalToolkit = new PayPalAgentToolkit({
clientId: process.env.PAYPAL_CLIENT_ID,
clientSecret: process.env.PAYPAL_CLIENT_SECRET,
configuration: {
actions: {
invoices: {
create: true,
createRecurringSeries: true,
list: true,
send: true,
sendReminder: true,
cancel: true,
delete: true,
generateQRC: true,
generateInvoiceNumber: true,
search: true,
update: true,
cancelReminders: true,
recordPayment: true,
recordRefund: true,
createConditionalRules: true,
},
products: { create: true, list: true, update: true },
subscriptionPlans: { create: true, list: true, show: true },
shipment: { create: true, show: true, cancel: true },
orders: { create: true, get: true },
disputes: { list: true, get: true },
},
},
});
Um den Sandbox-Modus zu verwenden, fügen Sie Kontext in Ihre Konfiguration ein.
configuration: {
context: {
sandbox: true,
}
}
Initialisieren der Workflows
import { PayPalWorkflows, ALL_TOOLS_ENABLED } from '@paypal/agent-toolkit/ai-sdk';
const paypalWorkflows = new PayPalWorkflows({
clientId: process.env.PAYPAL_CLIENT_ID,
clientSecret: process.env.PAYPAL_CLIENT_SECRET,
configuration: {
actions: ALL_TOOLS_ENABLED,
},
});
Verwendung
Verwenden des Toolkits
const llm: LanguageModelV1 = getModel(); // The model to be used with ai-sdk
const { text: response } = await generateText({
model: llm,
tools: paypalToolkit.getTools(),
maxSteps: 10,
prompt: `Create an order for $50 for custom handcrafted item and get the payment link.`,
});
Umgebungsvariablen
Die folgenden Umgebungsvariablen können verwendet werden:
PAYPAL_ACCESS_TOKEN: Ihr PayPal-ZugriffstokenPAYPAL_ENVIRONMENT: Setzen SieSANDBOXfür den Sandbox-Modus,PRODUCTIONfür die Produktion (Standard ist derSANDBOX-Modus)
Diese Anleitung erklärt, wie Sie ein Zugriffstoken für die PayPal-API-Integration generieren, einschließlich der Suche nach Ihrer Client-ID und Ihrem Client-Secret.
Voraussetzungen
- PayPal-Entwicklerkonto (für Sandbox)
- PayPal-Geschäftskonto (für die Produktion)
So finden Sie Ihre Client-ID und Ihr Client-Secret
-
Erstellen Sie ein PayPal-Entwicklerkonto:
- Gehen Sie zum PayPal Developer Dashboard
- Registrieren Sie sich oder melden Sie sich mit Ihren PayPal-Anmeldedaten an
-
Greifen Sie auf Ihre Anmeldedaten zu:
- Klicken Sie im Entwickler-Dashboard im Menü auf Apps & Anmeldedaten
- Wechseln Sie je nach Bedarf zwischen den Modi Sandbox und Live
-
Erstellen oder Anzeigen einer App:
- Klicken Sie zum Erstellen einer neuen App auf App erstellen
- Geben Sie Ihrer App einen Namen und wählen Sie ein Geschäftskonto aus, das Sie damit verknüpfen möchten
- Klicken Sie für bestehende Apps auf den App-Namen, um Details anzuzeigen
-
Anmeldedaten abrufen:
- Sobald Ihre App erstellt oder ausgewählt ist, sehen Sie einen Bildschirm mit Ihren:
- Client-ID: Ein öffentlicher Bezeichner für Ihre App
- Client-Secret: Ein privater Schlüssel (wird nach Klicken auf „Anzeigen" angezeigt)
- Speichern Sie diese Anmeldedaten sicher, da sie zum Generieren von Zugriffstokens erforderlich sind
- Sobald Ihre App erstellt oder ausgewählt ist, sehen Sie einen Bildschirm mit Ihren:
Generieren eines Zugriffstokens
Mit cURL
curl -v https://api-m.sandbox.paypal.com/v1/oauth2/token \\
-H \"Accept: application/json\" \\
-H \"Accept-Language: en_US\" \\
-u \"CLIENT_ID:CLIENT_SECRET\" \\
-d \"grant_type=client_credentials\"
Ersetzen Sie CLIENT_ID und CLIENT_SECRET durch Ihre tatsächlichen Anmeldedaten. Verwenden Sie für die Produktion https://api-m.paypal.com anstelle der Sandbox-URL.
Mit Postman
- Erstellen Sie eine neue Anfrage an
https://api-m.sandbox.paypal.com/v1/oauth2/token - Setzen Sie die Methode auf POST
- Wählen Sie unter Autorisierung die Option Basic Auth und geben Sie Ihre Client-ID und Ihr Client-Secret ein
- Wählen Sie unter Body die Option x-www-form-urlencoded und fügen Sie einen Schlüssel
grant_typemit dem Wertclient_credentialshinzu - Senden Sie die Anfrage
Antwort
Eine erfolgreiche Antwort sieht wie folgt aus:
{
"scope": "...",
"access_token": "Your Access Token",
"token_type": "Bearer",
"app_id": "APP-80W284485P519543T",
"expires_in": 32400,
"nonce": "..."
}
Kopieren Sie den Wert von access_token für die Verwendung in Ihrer Claude-Desktop-Integration.
Tokendetails
- Sandbox-Tokens: Gültig für 3-8 Stunden
- Produktionstokens: Gültig für 8 Stunden
- Es wird empfohlen, eine Token-Aktualisierungslogik vor Ablauf zu implementieren
Verwenden des Tokens mit Claude Desktop
Sobald Sie Ihr Zugriffstoken haben, aktualisieren Sie den Wert von PAYPAL_ACCESS_TOKEN in Ihrer Claude-Desktop-Connector-Konfiguration:
{
"env": {
"PAYPAL_ACCESS_TOKEN": "YOUR_NEW_ACCESS_TOKEN",
"PAYPAL_ENVIRONMENT": "SANDBOX"
}
}
Best Practices
- Speichern Sie Client-ID und Client-Secret sicher
- Implementieren Sie eine Token-Aktualisierungslogik, um den Token-Ablauf zu behandeln
- Verwenden Sie umgebungsspezifische Tokens (Sandbox für Tests, Produktion für echte Transaktionen)
- Vermeiden Sie das Hartcodieren von Tokens im Anwendungscode
Haftungsausschluss
KI-generierte Inhalte können ungenau oder unvollständig sein. Benutzer sind dafür verantwortlich, Informationen vor der Verwendung unabhängig zu überprüfen. PayPal übernimmt keine Garantie für die Genauigkeit der Ausgaben und haftet nicht für Entscheidungen, Handlungen oder Konsequenzen, die sich aus deren Verwendung ergeben.