UNPKG

@chinchillaenterprises/mcp-stripe

Version:

Multi-tenant Stripe MCP server with account management and credential persistence

49 lines (43 loc) 1.44 kB
/** * Account-related type definitions for Stripe MCP */ export interface StripeAccount { id: string; // Unique identifier (e.g., 'main', 'sandbox', 'client-abc') name: string; // Human-friendly name secretKey: string; // Stripe secret key (sk_test_* or sk_live_*) publishableKey?: string; // Optional publishable key (pk_test_* or pk_live_*) accountId?: string; // Stripe account ID (for Connect accounts) environment: 'test' | 'live'; // Environment indicator isDefault?: boolean; // Flag for default account } export interface AccountState { accounts: Map<string, StripeAccount>; activeAccountId: string | null; clients: Map<string, any>; // Map<string, Stripe> - using any to avoid importing Stripe here } export interface PersistedAccount extends StripeAccount { addedAt: string; // ISO timestamp lastUsed?: string; // ISO timestamp } export interface AccountInfo { id: string; name: string; environment: 'test' | 'live'; accountId?: string; isDefault: boolean; isActive: boolean; } export interface AccountListResponse { accounts: AccountInfo[]; activeAccountId: string | null; totalAccounts: number; } export interface AccountOperationResponse { success: boolean; account?: AccountInfo; activeAccount?: AccountInfo; message?: string; removedAccountId?: string; activeAccountId?: string | null; defaultAccountId?: string; }