PayPal MCP Server

offiziell

Der 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.

Dokumentation

PayPal Agent Toolkit

Das PayPal Agent Toolkit ermöglicht es gängigen Agent-Frameworks – darunter OpenAI's Agent SDK, LangChain, Vercel's AI SDK und Model Context Protocol (MCP) – sich über Funktionsaufrufe mit PayPal-APIs zu integrieren. Es unterstützt TypeScript und basiert auf PayPal-APIs und den PayPal-SDKs.

Verfügbare Werkzeuge

Das PayPal Agent Toolkit stellt die folgenden Werkzeuge bereit:

Rechnungen

  • create_invoice: Eine neue Rechnung im PayPal-System erstellen
  • list_invoices: Rechnungen mit optionaler Paginierung und Filterung auflisten
  • get_invoice: Details einer bestimmten Rechnung abrufen
  • send_invoice: Eine Rechnung an Empfänger versenden
  • send_invoice_reminder: Eine Erinnerung für eine bestehende Rechnung senden
  • cancel_sent_invoice: Eine versendete Rechnung stornieren
  • generate_invoice_qr_code: Einen QR-Code für eine Rechnung generieren

Zahlungen

  • create_order: Eine Bestellung im PayPal-System anhand der angegebenen Details anlegen
  • get_order: Die Details einer Bestellung abrufen
  • pay_order: Zahlung für eine autorisierte Bestellung ausführen
  • create_refund: Eine Rückerstattung für eine erfasste Zahlung verarbeiten
  • get_refund: Die Details einer bestimmten Rückerstattung abrufen

Konfliktmanagement

  • list_disputes: Eine Zusammenfassung aller offenen Konflikte abrufen
  • get_dispute: Detaillierte Informationen zu einem bestimmten Konflikt abrufen
  • accept_dispute_claim: Einen Konfliktfall annehmen

Sendungsverfolgung

  • create_shipment_tracking: Einen Sendungsverfolgungseintrag erstellen
  • get_shipment_tracking: Informationen zur Sendungsverfolgung abrufen
  • update_shipment_tracking: Informationen zur Sendungsverfolgung aktualisieren

Katalogverwaltung

  • create_product: Ein neues Produkt im PayPal-Katalog anlegen
  • list_products: Produkte mit optionaler Paginierung und Filterung auflisten
  • show_product_details: Details eines bestimmten Produkts abrufen

Abonnementverwaltung

  • create_subscription_plan: Einen neuen Abonnementplan erstellen
  • list_subscription_plans: Abonnementpläne auflisten
  • show_subscription_plan_details: Details eines bestimmten Abonnementplans abrufen
  • create_subscription: Ein neues Abonnement erstellen
  • show_subscription_details: Details eines bestimmten Abonnements abrufen
  • update_subscription: Ein bestehendes Abonnement aktualisieren
  • cancel_subscription: Ein aktives Abonnement kündigen

Berichte und Einblicke

  • list_transactions: Transaktionen mit optionaler Paginierung und Filterung auflisten
  • get_merchant_insights: Business-Intelligence-Kennzahlen und Analysen für einen Händler abrufen

TypeScript

Installation

Sie benötigen diesen Quellcode nur, wenn Sie das Paket ändern möchten. Wenn Sie das Paket lediglich verwenden möchten, führen Sie Folgendes aus:

npm install @paypal/agent-toolkit

Voraussetzungen

  • Node 18+

Verwendung

Die Bibliothek muss mit der Client-ID und dem Secret Ihres Kontos konfiguriert werden, die Sie in Ihrem PayPal Developer Dashboard finden.

Das Toolkit funktioniert mit Vercel's AI SDK und kann als Liste von Werkzeugen ü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,
        list: true,
        send: true,
        sendReminder: true,
        cancel: true,
        generateQRC: 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 einen Kontext in Ihrer Konfiguration hinzu.

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

Das Toolkit verwenden

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-Zugriffstoken
  • PAYPAL_ENVIRONMENT: Auf SANDBOX für den Sandbox-Modus setzen, PRODUCTION für die Produktion (Standard ist der SANDBOX-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 Produktion)

So finden Sie Ihre Client-ID und Ihr Client-Secret

  1. PayPal-Entwicklerkonto erstellen:

  2. Auf Ihre Anmeldedaten zugreifen:

    • Klicken Sie im Developer Dashboard im Menü auf Apps & Credentials
    • Wechseln Sie je nach Bedarf zwischen Sandbox- und Live-Modus
  3. App erstellen oder anzeigen:

    • Um eine neue App zu erstellen, klicken Sie auf Create App
    • Geben Sie Ihrer App einen Namen und wählen Sie ein Geschäftskonto aus, mit dem sie verknüpft werden soll
    • Bei bestehenden Apps klicken Sie auf den App-Namen, um Details anzuzeigen
  4. Anmeldedaten abrufen:

    • Sobald Ihre App erstellt oder ausgewählt ist, sehen Sie einen Bildschirm mit:
      • Client-ID: Eine öffentliche Kennung für Ihre App
      • Client-Secret: Ein privater Schlüssel (wird nach Klick auf "Show" angezeigt)
    • Bewahren Sie diese Anmeldedaten sicher auf, da sie für die Generierung von Zugriffstoken benötigt werden

Ein Zugriffstoken generieren

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

  1. Erstellen Sie eine neue Anfrage an https://api-m.sandbox.paypal.com/v1/oauth2/token
  2. Setzen Sie die Methode auf POST
  3. Wählen Sie unter Authorization die Option Basic Auth und geben Sie Ihre Client-ID und Ihr Client-Secret ein
  4. Wählen Sie unter Body die Option x-www-form-urlencoded und fügen Sie einen Schlüssel grant_type mit dem Wert client_credentials hinzu
  5. 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 access_token zur Verwendung in Ihrer Claude-Desktop-Integration.

Token-Details

  • Sandbox-Token: 3–8 Stunden gültig
  • Produktions-Token: 8 Stunden gültig
  • Es wird empfohlen, eine Token-Aktualisierungslogik vor Ablauf zu implementieren

Das Token mit Claude Desktop verwenden

Sobald Sie Ihr Zugriffstoken haben, aktualisieren Sie den Wert PAYPAL_ACCESS_TOKEN in Ihrer Claude-Desktop-Connector-Konfiguration:

{
  "env": {
    "PAYPAL_ACCESS_TOKEN": "YOUR_NEW_ACCESS_TOKEN",
    "PAYPAL_ENVIRONMENT": "SANDBOX"
  }
}

Bewährte Praktiken

  1. Client-ID und Client-Secret sicher aufbewahren
  2. Token-Aktualisierungslogik implementieren, um Token-Ablauf zu behandeln
  3. Umgebungsspezifische Token verwenden (Sandbox für Tests, Produktion für echte Transaktionen)
  4. Token nicht im Anwendungscode hartkodieren

Haftungsausschluss

KI-generierte Inhalte können ungenau oder unvollständig sein. Benutzer sind dafür verantwortlich, alle Informationen unabhängig zu überprüfen, bevor sie sich darauf verlassen. PayPal übernimmt keine Garantie für die Genauigkeit der Ausgabe und haftet nicht für Entscheidungen, Handlungen oder Konsequenzen, die aus ihrer Nutzung resultieren.