mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-15 04:21:09 +02:00
- Add uload project with apps/web structure
- Reorganize from flat to monorepo structure
- Remove PocketBase binary and local data
- Update to pnpm and @uload/web namespace
- Add picture project to monorepo
- Remove embedded git repository
- Unify all package names to @{project}/{app} schema:
- @maerchenzauber/* (was @storyteller/*)
- @manacore/* (was manacore-*, manacore)
- @manadeck/* (was web, backend, manadeck)
- @memoro/* (was memoro-web, landing, memoro)
- @picture/* (already unified)
- @uload/web
- Add convenient dev scripts for all apps:
- pnpm dev:{project}:web
- pnpm dev:{project}:landing
- pnpm dev:{project}:mobile
- pnpm dev:{project}:backend
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
413 lines
10 KiB
Markdown
413 lines
10 KiB
Markdown
# Stripe MCP Server Integration Guide
|
|
|
|
## Was ist der Stripe MCP Server?
|
|
|
|
Der Stripe Model Context Protocol (MCP) Server ist eine offizielle Implementierung von Stripe, die es AI-Assistenten wie Claude ermöglicht, direkt mit der Stripe API zu interagieren. Dies bedeutet, dass Claude automatisch Stripe-Produkte, Preise, Kunden und Subscriptions für dich anlegen und verwalten kann.
|
|
|
|
## Vorteile des MCP Servers
|
|
|
|
### Automatisierung
|
|
|
|
- Claude kann selbstständig Stripe-Ressourcen erstellen (Produkte, Preise, Kunden)
|
|
- Automatisches Setup von Subscriptions und Payment Links
|
|
- Direkte API-Interaktion ohne manuelles Copy & Paste
|
|
|
|
### Zeitersparnis
|
|
|
|
- Keine manuelle Arbeit im Stripe Dashboard nötig
|
|
- Claude kann alle Stripe-Objekte programmatisch erstellen
|
|
- Sofortige Validierung und Testing möglich
|
|
|
|
### Fehlerreduktion
|
|
|
|
- Konsistente Namensgebung und Struktur
|
|
- Automatische Verknüpfung von IDs
|
|
- Direkte Fehlerbehandlung durch Claude
|
|
|
|
## Installation & Setup
|
|
|
|
### Option 1: Remote MCP Server (Empfohlen)
|
|
|
|
Stripe hostet einen offiziellen MCP Server unter `https://mcp.stripe.com`. Dies ist der einfachste Weg:
|
|
|
|
```json
|
|
// claude_desktop_config.json
|
|
{
|
|
"mcpServers": {
|
|
"stripe": {
|
|
"type": "remote",
|
|
"url": "https://mcp.stripe.com",
|
|
"auth": {
|
|
"type": "bearer",
|
|
"token": "sk_test_YOUR_STRIPE_SECRET_KEY"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Option 2: Lokaler MCP Server via NPX
|
|
|
|
Du kannst den Stripe MCP Server auch lokal ausführen:
|
|
|
|
```bash
|
|
# Alle Tools aktivieren
|
|
npx -y @stripe/mcp --tools=all --api-key=sk_test_YOUR_KEY
|
|
|
|
# Nur spezifische Tools
|
|
npx -y @stripe/mcp --tools=customers.create,products.create,prices.create --api-key=sk_test_YOUR_KEY
|
|
```
|
|
|
|
Für Claude Desktop Konfiguration:
|
|
|
|
```json
|
|
// claude_desktop_config.json (Lokale Variante)
|
|
{
|
|
"mcpServers": {
|
|
"stripe": {
|
|
"command": "npx",
|
|
"args": ["-y", "@stripe/mcp", "--tools=all", "--api-key=sk_test_YOUR_STRIPE_SECRET_KEY"]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Option 3: Custom Implementation
|
|
|
|
Für erweiterte Anpassungen kannst du einen eigenen MCP Server implementieren:
|
|
|
|
```typescript
|
|
// stripe-mcp-server.ts
|
|
import { StripeAgentToolkit } from '@stripe/agent-toolkit/modelcontextprotocol';
|
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
|
|
const server = new StripeAgentToolkit({
|
|
secretKey: process.env.STRIPE_SECRET_KEY!,
|
|
configuration: {
|
|
actions: {
|
|
customers: { create: true, read: true, update: true },
|
|
products: { create: true, read: true },
|
|
prices: { create: true, read: true },
|
|
paymentLinks: { create: true },
|
|
subscriptions: { create: true, read: true, update: true, cancel: true },
|
|
invoices: { read: true },
|
|
checkout: { sessions: { create: true } }
|
|
}
|
|
}
|
|
});
|
|
|
|
const transport = new StdioServerTransport();
|
|
await server.connect(transport);
|
|
```
|
|
|
|
## Konfiguration für Claude Desktop
|
|
|
|
### Schritt 1: Config-Datei finden
|
|
|
|
Die Konfigurationsdatei befindet sich unter:
|
|
|
|
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
- **Windows**: `%APPDATA%/Claude/claude_desktop_config.json`
|
|
- **Linux**: `~/.config/Claude/claude_desktop_config.json`
|
|
|
|
### Schritt 2: Stripe Server hinzufügen
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"stripe": {
|
|
"command": "npx",
|
|
"args": ["-y", "@stripe/mcp", "--tools=all", "--api-key=sk_test_51..."]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Schritt 3: Claude Desktop neustarten
|
|
|
|
Nach dem Speichern der Konfiguration:
|
|
|
|
1. Claude Desktop komplett beenden (nicht nur schließen)
|
|
2. Claude Desktop neu starten
|
|
3. In den Settings sollte der Stripe Server sichtbar sein
|
|
|
|
## Verfügbare Tools & Aktionen
|
|
|
|
### Customer Management
|
|
|
|
- `customers.create` - Neue Kunden anlegen
|
|
- `customers.read` - Kunden-Informationen abrufen
|
|
- `customers.update` - Kunden-Daten aktualisieren
|
|
- `customers.list` - Alle Kunden auflisten
|
|
|
|
### Product & Pricing
|
|
|
|
- `products.create` - Produkte erstellen
|
|
- `products.update` - Produkte bearbeiten
|
|
- `prices.create` - Preise definieren
|
|
- `prices.list` - Preise auflisten
|
|
|
|
### Subscriptions
|
|
|
|
- `subscriptions.create` - Neue Abos erstellen
|
|
- `subscriptions.update` - Abos ändern
|
|
- `subscriptions.cancel` - Abos kündigen
|
|
- `subscriptions.list` - Alle Abos anzeigen
|
|
|
|
### Payments
|
|
|
|
- `paymentLinks.create` - Payment Links generieren
|
|
- `checkout.sessions.create` - Checkout Sessions erstellen
|
|
- `invoices.read` - Rechnungen abrufen
|
|
- `invoices.list` - Alle Rechnungen anzeigen
|
|
|
|
### Webhooks
|
|
|
|
- `webhooks.create` - Webhook Endpoints erstellen
|
|
- `webhooks.list` - Webhooks auflisten
|
|
|
|
## Praktische Anwendung für ulo.ad
|
|
|
|
### Automatisches Setup mit Claude
|
|
|
|
Mit dem MCP Server kann Claude folgende Aufgaben automatisch erledigen:
|
|
|
|
1. **Produkte anlegen**
|
|
|
|
```typescript
|
|
// Claude kann direkt ausführen:
|
|
await stripe.products.create({
|
|
name: 'ulo.ad Pro',
|
|
description: 'Unlimited link creation and premium features'
|
|
});
|
|
```
|
|
|
|
2. **Preise erstellen**
|
|
|
|
```typescript
|
|
// Monatlicher Preis
|
|
await stripe.prices.create({
|
|
product: 'prod_xxx',
|
|
unit_amount: 999,
|
|
currency: 'eur',
|
|
recurring: { interval: 'month' }
|
|
});
|
|
```
|
|
|
|
3. **Webhook Endpoints konfigurieren**
|
|
|
|
```typescript
|
|
await stripe.webhooks.create({
|
|
url: 'https://ulo.ad/api/stripe/webhook',
|
|
enabled_events: ['checkout.session.completed', 'customer.subscription.updated']
|
|
});
|
|
```
|
|
|
|
### Workflow-Beispiel
|
|
|
|
```markdown
|
|
User: "Bitte erstelle die komplette Stripe-Konfiguration für ulo.ad"
|
|
|
|
Claude (mit MCP Server):
|
|
|
|
1. ✅ Erstelle Produkt "ulo.ad Pro"
|
|
2. ✅ Erstelle Monats-Preis (9,99€)
|
|
3. ✅ Erstelle Jahres-Preis (99€)
|
|
4. ✅ Konfiguriere Webhook Endpoint
|
|
5. ✅ Erstelle Test-Kunde
|
|
6. ✅ Generiere erste Checkout Session
|
|
7. ✅ Speichere alle IDs in .env
|
|
```
|
|
|
|
## Sicherheit & Best Practices
|
|
|
|
### API Keys
|
|
|
|
**WICHTIG**: Verwende immer Restricted API Keys mit minimalen Berechtigungen:
|
|
|
|
```bash
|
|
# Erstelle einen Restricted Key im Stripe Dashboard mit nur den nötigen Permissions:
|
|
- Customers: Write
|
|
- Products: Write
|
|
- Prices: Write
|
|
- Subscriptions: Write
|
|
- Checkout Sessions: Write
|
|
- Webhooks: Read
|
|
```
|
|
|
|
### Test vs. Production
|
|
|
|
```json
|
|
// Entwicklung (Test Mode)
|
|
{
|
|
"mcpServers": {
|
|
"stripe-test": {
|
|
"command": "npx",
|
|
"args": ["@stripe/mcp", "--api-key=sk_test_..."]
|
|
}
|
|
}
|
|
}
|
|
|
|
// Production (Live Mode) - Vorsicht!
|
|
{
|
|
"mcpServers": {
|
|
"stripe-live": {
|
|
"command": "npx",
|
|
"args": ["@stripe/mcp", "--api-key=rk_live_..."] // Restricted Key!
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Umgebungsvariablen
|
|
|
|
Statt API Keys direkt in der Config zu speichern:
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"stripe": {
|
|
"command": "npx",
|
|
"args": ["@stripe/mcp", "--tools=all"],
|
|
"env": {
|
|
"STRIPE_API_KEY": "${STRIPE_SECRET_KEY}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
### Server erscheint nicht in Claude
|
|
|
|
1. **Config-Syntax prüfen**: JSON muss valide sein
|
|
2. **Claude komplett neustarten**: Nicht nur Fenster schließen
|
|
3. **Logs prüfen**: `~/Library/Logs/Claude/` (macOS)
|
|
|
|
### Verbindungsfehler
|
|
|
|
```bash
|
|
# Test ob NPX funktioniert
|
|
npx -y @stripe/mcp --version
|
|
|
|
# Manuelle Installation falls nötig
|
|
npm install -g @stripe/mcp
|
|
```
|
|
|
|
### API Key Fehler
|
|
|
|
- Stelle sicher, dass der Key mit `sk_test_` (Test) oder `rk_live_` (Restricted Live) beginnt
|
|
- Prüfe Permissions im Stripe Dashboard
|
|
- Verwende niemals den publishable key (`pk_`)
|
|
|
|
## Integration mit ulo.ad Workflow
|
|
|
|
### Schritt 1: MCP Server aktivieren
|
|
|
|
```bash
|
|
# In Claude Desktop Config hinzufügen
|
|
{
|
|
"mcpServers": {
|
|
"stripe": {
|
|
"command": "npx",
|
|
"args": [
|
|
"-y",
|
|
"@stripe/mcp",
|
|
"--tools=products.create,prices.create,customers.create,subscriptions.create,checkout.sessions.create",
|
|
"--api-key=sk_test_YOUR_KEY"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Schritt 2: Claude anweisen
|
|
|
|
```markdown
|
|
"Verwende den Stripe MCP Server um folgendes zu erstellen:
|
|
|
|
1. Produkt 'ulo.ad Pro' mit Beschreibung
|
|
2. Monatspreis 9,99€ und Jahrespreis 99€
|
|
3. Speichere alle IDs in einer .env.stripe Datei"
|
|
```
|
|
|
|
### Schritt 3: Automatische Ausführung
|
|
|
|
Claude wird dann automatisch:
|
|
|
|
- Die Stripe API aufrufen
|
|
- Alle Ressourcen erstellen
|
|
- IDs und Konfiguration zurückgeben
|
|
- Diese in deinem Projekt speichern
|
|
|
|
## Vorteile gegenüber manuellem Setup
|
|
|
|
| Manuell | Mit MCP Server |
|
|
| ---------------------------- | -------------------------- |
|
|
| 30+ Minuten Dashboard-Arbeit | 2 Minuten automatisch |
|
|
| Copy & Paste von IDs | Automatische ID-Verwaltung |
|
|
| Fehleranfällig | Konsistent & validiert |
|
|
| Mehrere Browser-Tabs | Alles in Claude |
|
|
| Manuelles Testing | Sofortige Validierung |
|
|
|
|
## Erweiterte Features
|
|
|
|
### Batch-Operationen
|
|
|
|
```typescript
|
|
// Claude kann mehrere Operationen gleichzeitig ausführen
|
|
const operations = [
|
|
stripe.products.create({ name: 'Basic' }),
|
|
stripe.products.create({ name: 'Pro' }),
|
|
stripe.products.create({ name: 'Enterprise' })
|
|
];
|
|
await Promise.all(operations);
|
|
```
|
|
|
|
### Conditional Logic
|
|
|
|
```typescript
|
|
// Claude kann intelligente Entscheidungen treffen
|
|
const existingProduct = await stripe.products.list({ limit: 1 });
|
|
if (existingProduct.data.length === 0) {
|
|
await stripe.products.create({ name: 'ulo.ad Pro' });
|
|
}
|
|
```
|
|
|
|
### Testing & Validation
|
|
|
|
```typescript
|
|
// Claude kann automatisch testen
|
|
const testSession = await stripe.checkout.sessions.create({
|
|
mode: 'subscription',
|
|
line_items: [{ price: priceId, quantity: 1 }],
|
|
success_url: 'http://localhost:5173/success'
|
|
});
|
|
console.log('Test Checkout URL:', testSession.url);
|
|
```
|
|
|
|
## Nächste Schritte
|
|
|
|
1. **MCP Server einrichten**: Config-Datei bearbeiten und Claude neustarten
|
|
2. **Test-Projekt**: Lass Claude ein komplettes Stripe-Setup erstellen
|
|
3. **Integration**: Verbinde die erstellten Stripe-Ressourcen mit deinem Code
|
|
4. **Automation**: Nutze Claude für wiederkehrende Stripe-Aufgaben
|
|
|
|
## Wichtige Links
|
|
|
|
- [Stripe Agent Toolkit GitHub](https://github.com/stripe/agent-toolkit)
|
|
- [MCP Protocol Docs](https://modelcontextprotocol.io)
|
|
- [Stripe API Dokumentation](https://stripe.com/docs/api)
|
|
- [Claude Desktop MCP Guide](https://docs.anthropic.com/claude/docs/mcp)
|
|
|
|
## Zusammenfassung
|
|
|
|
Der Stripe MCP Server transformiert die Art, wie du mit Stripe arbeitest:
|
|
|
|
- **Keine manuelle Dashboard-Arbeit mehr**: Alles über Claude
|
|
- **Fehlerfreie Konfiguration**: Automatische Validierung
|
|
- **Schnelleres Development**: Von Stunden auf Minuten
|
|
- **Bessere Developer Experience**: Alles in einem Tool
|
|
|
|
Mit dem MCP Server wird Claude zu deinem persönlichen Stripe-Administrator, der alle API-Operationen für dich ausführen kann - sicher, schnell und zuverlässig.
|