@xodn348/clawpay 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  # ClawPay
9
9
 
10
- Open-source Stripe MCP Server for AI Agents. Let Claude, OpenCode, and any MCP client make payments.
10
+ Open-source payment MCP server for AI agents. Works with Claude Code, OpenClaw, OpenCode, Claude Desktop, Cursor, and any MCP client.
11
11
 
12
12
  > [!WARNING]
13
13
  > ClawPay enables AI agents to make real financial transactions. Real money is involved.
@@ -21,38 +21,53 @@ Open-source Stripe MCP Server for AI Agents. Let Claude, OpenCode, and any MCP c
21
21
 
22
22
  ## Quick Start
23
23
 
24
+ ### Option A — With Stripe CLI (Recommended)
25
+
26
+ Install Stripe CLI (if not already installed):
27
+
28
+ ```bash
29
+ brew install stripe/stripe-cli/stripe
30
+ # or: npm install -g @stripe/stripe-cli
31
+ ```
32
+
33
+ Login to Stripe:
34
+
35
+ ```bash
36
+ stripe login
37
+ ```
38
+
39
+ Install and configure ClawPay (auto-detects your Stripe key):
40
+
24
41
  ```bash
25
42
  npm install -g @xodn348/clawpay
26
43
  clawpay install
27
44
  ```
28
45
 
29
- `clawpay install` handles the full setup automatically:
46
+ ### Option B Without Stripe CLI
30
47
 
31
- 1. Prompts for your Stripe secret key
32
- 2. Detects OpenCode, Claude Desktop, and Cursor on your machine
33
- 3. Patches their MCP config files to register ClawPay
34
- 4. Confirms the connection
48
+ ```bash
49
+ npm install -g @xodn348/clawpay
50
+ clawpay install
51
+ ```
35
52
 
36
- Once installed, open your AI assistant and say: **"set up payment method"** to register a card through Stripe Checkout. Then (optional) say **"set up PayPal"** to link your PayPal account for P2P sending.
53
+ You'll be prompted to enter your Stripe Secret Key manually. Open [Stripe Dashboard API Keys](https://dashboard.stripe.com/apikeys) to find it.
37
54
 
38
55
  ---
39
56
 
40
- ## Installation
57
+ Auto-detects and configures **Claude Code, OpenClaw**, OpenCode, Claude Desktop, and Cursor.
41
58
 
42
- ```bash
43
- # npm
44
- npm install -g @xodn348/clawpay
59
+ > OpenClaw users: also run `npm install -g mcporter`
45
60
 
46
- # bun
47
- bun add -g @xodn348/clawpay
61
+ Once installed, ask your AI: **"set up payment method"**
48
62
 
49
- # brew (coming soon)
50
- brew tap xodn348/clawpay
51
- brew install clawpay
52
- ```
63
+ ---
64
+
65
+ ## Installation
53
66
 
54
67
  Node.js 18 or higher is required.
55
68
 
69
+ For the quickest setup, use **Option A** above with Stripe CLI. For manual configuration, see the [Manual Configuration](#manual-configuration) section below.
70
+
56
71
  ---
57
72
 
58
73
  ## Manual Configuration
@@ -99,12 +114,91 @@ If auto-detection doesn't find your client, add ClawPay manually.
99
114
 
100
115
  Same format as Claude Desktop above.
101
116
 
117
+ ### Claude Code
118
+
119
+ Run in your terminal:
120
+
121
+ ```bash
122
+ claude mcp add -s user clawpay \
123
+ -e STRIPE_SECRET_KEY=sk_test_... \
124
+ -e PAYPAL_CLIENT_ID=your-paypal-client-id \
125
+ -e PAYPAL_CLIENT_SECRET=your-paypal-client-secret \
126
+ -- clawpay
127
+ ```
128
+
129
+ This registers ClawPay globally across all Claude Code projects. PayPal credentials are optional.
130
+
131
+ ### OpenClaw
132
+
133
+ Install ClawPay and mcporter (the MCP bridge):
134
+
135
+ ```bash
136
+ npm install -g @xodn348/clawpay mcporter
137
+ ```
138
+
139
+ Or install the skill via ClawdHub:
140
+
141
+ ```bash
142
+ clawdhub install clawpay
143
+ ```
144
+
145
+ OpenClaw uses ClawPay through the mcporter bridge. Set your credentials as environment variables:
146
+
147
+ ```bash
148
+ export STRIPE_SECRET_KEY=sk_test_...
149
+ export PAYPAL_CLIENT_ID=your-paypal-client-id # optional
150
+ export PAYPAL_CLIENT_SECRET=your-paypal-client-secret # optional
151
+ ```
152
+
153
+ Then ask OpenClaw: **"set up my payment method"** to get started.
154
+
102
155
  Replace `sk_test_...` with your actual Stripe secret key. Use a test key (`sk_test_`) during development and a live key (`sk_live_`) only in production.
103
156
 
104
157
  PayPal credentials are optional. Required only to use the `send_paypal` tool.
105
158
 
106
159
  ---
107
160
 
161
+ ## Usage Examples
162
+
163
+ Ask your AI agent naturally — ClawPay handles the rest.
164
+
165
+ **Register a card**
166
+ > "Set up my payment method"
167
+
168
+ Opens Stripe Checkout in your browser. Supports card, Google Pay, Apple Pay, Alipay, and more. Credentials are stored locally in `~/.clawpay/config.json`.
169
+
170
+ **Make a payment**
171
+ > "Pay $25 for the monthly subscription"
172
+
173
+ Charges the registered payment method. Amount, currency, and description are passed to Stripe automatically.
174
+
175
+ **Check balance**
176
+ > "What's my current Stripe balance?"
177
+
178
+ Returns available and pending balance from your Stripe account.
179
+
180
+ **View transactions**
181
+ > "Show my last 10 transactions"
182
+
183
+ Lists recent payment intents with status, amount, and description.
184
+
185
+ **Issue a refund**
186
+ > "Refund the last payment"
187
+
188
+ Issues a full refund for the specified payment intent ID.
189
+
190
+ **Connect PayPal**
191
+ > "Set up my PayPal account"
192
+
193
+ Links your PayPal credentials for P2P sending.
194
+
195
+ **Send money via PayPal**
196
+ > "Send $30 to friend@email.com for dinner"
197
+
198
+ Sends money via PayPal Payouts to an email address or phone number.
199
+
200
+ ---
201
+
108
202
  ## MCP Tools Reference
109
203
 
110
204
  ClawPay exposes seven tools over the MCP stdio protocol.
@@ -197,6 +291,22 @@ Any `pay` call that exceeds these limits is rejected before it reaches Stripe.
197
291
 
198
292
  ---
199
293
 
294
+ ## Supported Payment Methods
295
+
296
+ ClawPay uses Stripe's [Dynamic Payment Methods](https://dashboard.stripe.com/settings/payment_methods), which automatically shows the best payment options for each customer.
297
+
298
+ | Method | Status | Notes |
299
+ |--------|--------|-------|
300
+ | Credit / Debit Card | ✅ Always available | All major cards |
301
+ | Apple Pay | ✅ Default on | Safari on Apple devices |
302
+ | Google Pay | ⚙️ Enable in Dashboard | Chrome with Google Wallet |
303
+ | Alipay | ⚙️ Enable in Dashboard | For Alipay users |
304
+ | Link | ⚙️ Enable in Dashboard | Stripe's one-click checkout |
305
+
306
+ To enable Google Pay, Alipay, or other methods, go to [Stripe Dashboard → Payment Methods](https://dashboard.stripe.com/settings/payment_methods) and toggle them on. No code changes required.
307
+
308
+ ---
309
+
200
310
  ## Audit Log
201
311
 
202
312
  Every action ClawPay takes is recorded to `~/.clawpay/audit.log` as JSON Lines (one JSON object per line).
@@ -1,3 +1,9 @@
1
+ import { spawnSync } from "node:child_process";
2
+ export declare const _spawnSync: {
3
+ fn: typeof spawnSync;
4
+ };
5
+ export declare function installClaudeCode(stripeKey: string, paypalClientId?: string, paypalClientSecret?: string): Promise<boolean>;
6
+ export declare function installOpenClaw(): Promise<boolean>;
1
7
  export declare function runInstall(): Promise<void>;
2
8
  export declare function runUninstall(): Promise<void>;
3
9
  //# sourceMappingURL=installer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AAqHA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAqHhD;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAiClD"}
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,eAAO,MAAM,UAAU,EAAE;IAAE,EAAE,EAAE,OAAO,SAAS,CAAA;CAAsB,CAAC;AA2LtE,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,EACvB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,OAAO,CAAC,CAgClB;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAoBxD;AAGD,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA6JhD;AAID,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAiClD"}
package/dist/installer.js CHANGED
@@ -2,6 +2,9 @@ import { createInterface } from "node:readline";
2
2
  import { promises as fs } from "node:fs";
3
3
  import { homedir } from "node:os";
4
4
  import { join, dirname } from "node:path";
5
+ import { spawnSync } from "node:child_process";
6
+ import { detectStripeKey } from "./stripe-cli.js";
7
+ export const _spawnSync = { fn: spawnSync };
5
8
  async function pathExists(filePath) {
6
9
  try {
7
10
  await fs.stat(filePath);
@@ -20,6 +23,7 @@ async function isDirectory(dirPath) {
20
23
  return false;
21
24
  }
22
25
  }
26
+ /* c8 ignore start */
23
27
  async function readJsonSafe(filePath) {
24
28
  try {
25
29
  const content = await fs.readFile(filePath, "utf-8");
@@ -29,6 +33,8 @@ async function readJsonSafe(filePath) {
29
33
  return {};
30
34
  }
31
35
  }
36
+ /* c8 ignore end */
37
+ /* c8 ignore start */
32
38
  function askQuestion(question) {
33
39
  return new Promise((resolve) => {
34
40
  const rl = createInterface({
@@ -41,6 +47,8 @@ function askQuestion(question) {
41
47
  });
42
48
  });
43
49
  }
50
+ /* c8 ignore end */
51
+ /* c8 ignore start */
44
52
  function getMcpClients() {
45
53
  const home = homedir();
46
54
  return [
@@ -66,6 +74,8 @@ function getMcpClients() {
66
74
  },
67
75
  ];
68
76
  }
77
+ /* c8 ignore end */
78
+ /* c8 ignore start */
69
79
  function buildClawPayEntry(stripeKey, mcpKey, paypalClientId, paypalClientSecret) {
70
80
  if (mcpKey === "mcp") {
71
81
  const environment = {
@@ -98,15 +108,151 @@ function buildClawPayEntry(stripeKey, mcpKey, paypalClientId, paypalClientSecret
98
108
  },
99
109
  };
100
110
  }
111
+ /* c8 ignore end */
112
+ const SKILL_MD_CONTENT = `---
113
+ name: clawpay
114
+ description: Make payments with ClawPay via Stripe and PayPal. Use when user wants to pay, send money, charge, refund, check balance, view transactions, set up payment method, or configure PayPal. Triggers: pay, send money, charge, refund, balance, transactions, set up payment, set up paypal, google pay, apple pay, alipay.
115
+ homepage: https://github.com/xodn348/clawpay
116
+ metadata: {"openclaw":{"emoji":"💳","requires":{"bins":["mcporter","clawpay"]},"install":[{"id":"node","kind":"node","package":"@xodn348/clawpay","bins":["clawpay"],"label":"Install ClawPay (npm)"}]}}
117
+ ---
118
+
119
+ # ClawPay — Stripe + PayPal Payments
120
+
121
+ Make real payments via Stripe and PayPal using mcporter bridge.
122
+
123
+ ## Safety Rules
124
+
125
+ - **Never auto-confirm payments without explicit user approval.** Always preview first; ask for confirmation.
126
+ - **Guardrails enforced:** $100 max per transaction, $500 max per day, USD only.
127
+ - **Audit trail:** Every action logged to \`~/.clawpay/audit.log\`.
128
+
129
+ ## Setup (once)
130
+
131
+ \`\`\`bash
132
+ mcporter call --stdio "clawpay" setup_payment
133
+ mcporter call --stdio "clawpay" setup_paypal
134
+ \`\`\`
135
+
136
+ ## Stripe Payments
137
+
138
+ **Create payment:**
139
+ \`\`\`bash
140
+ mcporter call --stdio "clawpay" pay amount=1000 currency=usd description="Coffee"
141
+ \`\`\`
142
+
143
+ **Check balance:**
144
+ \`\`\`bash
145
+ mcporter call --stdio "clawpay" get_balance
146
+ \`\`\`
147
+
148
+ **List transactions:**
149
+ \`\`\`bash
150
+ mcporter call --stdio "clawpay" list_transactions limit=5
151
+ \`\`\`
152
+
153
+ **Refund payment:**
154
+ \`\`\`bash
155
+ mcporter call --stdio "clawpay" refund payment_intent_id=pi_xxx
156
+ \`\`\`
157
+
158
+ ## PayPal Payouts
159
+
160
+ **Send money via PayPal:**
161
+ \`\`\`bash
162
+ mcporter call --stdio "clawpay" send_paypal recipientEmail=friend@example.com amount=2000 note="Lunch"
163
+ \`\`\`
164
+
165
+ Or by phone:
166
+ \`\`\`bash
167
+ mcporter call --stdio "clawpay" send_paypal recipientPhone=+12025551234 amount=2000
168
+ \`\`\`
169
+
170
+ ## Notes
171
+
172
+ - Amounts in cents: \`1000\` = $10.00
173
+ - Currency default: \`usd\`
174
+ - PayPal requires either \`recipientEmail\` or \`recipientPhone\`
175
+ - All transactions logged with timestamps and status`;
176
+ export async function installClaudeCode(stripeKey, paypalClientId, paypalClientSecret) {
177
+ const whichResult = _spawnSync.fn("which", ["claude"], { encoding: "utf-8" });
178
+ if (whichResult.status !== 0) {
179
+ return false;
180
+ }
181
+ const args = [
182
+ "mcp", "add", "-s", "user",
183
+ "clawpay",
184
+ "-e", `STRIPE_SECRET_KEY=${stripeKey}`,
185
+ ];
186
+ if (paypalClientId) {
187
+ args.push("-e", `PAYPAL_CLIENT_ID=${paypalClientId}`);
188
+ }
189
+ if (paypalClientSecret) {
190
+ args.push("-e", `PAYPAL_CLIENT_SECRET=${paypalClientSecret}`);
191
+ }
192
+ args.push("--", "clawpay");
193
+ try {
194
+ const result = _spawnSync.fn("claude", args, { encoding: "utf-8" });
195
+ if (result.status !== 0) {
196
+ const errMsg = result.stderr || "Unknown error";
197
+ console.log(` Warning: Claude Code configuration failed: ${errMsg.trim()}`);
198
+ return false;
199
+ }
200
+ console.log(" ✓ Claude Code configured");
201
+ return true;
202
+ } /* c8 ignore start */
203
+ catch (error) {
204
+ console.log(` Warning: Claude Code configuration failed: ${String(error)}`);
205
+ return false;
206
+ } /* c8 ignore end */
207
+ }
208
+ export async function installOpenClaw() {
209
+ const home = homedir();
210
+ const openClawDir = join(home, ".openclaw");
211
+ if (!(await isDirectory(openClawDir))) {
212
+ return false;
213
+ }
214
+ const skillDir = join(openClawDir, "workspace", "skills", "clawpay");
215
+ const skillFile = join(skillDir, "SKILL.md");
216
+ if (await pathExists(skillFile)) {
217
+ console.log(" clawpay skill already installed in OpenClaw — skipping");
218
+ return true;
219
+ }
220
+ await fs.mkdir(skillDir, { recursive: true });
221
+ await fs.writeFile(skillFile, SKILL_MD_CONTENT, "utf-8");
222
+ console.log(" ✓ OpenClaw skill installed");
223
+ return true;
224
+ }
225
+ /* c8 ignore start */
101
226
  export async function runInstall() {
102
- const stripeKey = await askQuestion("Enter your Stripe Secret Key (sk_test_... or sk_live_...): ");
103
- if (!stripeKey.startsWith("sk_test_") && !stripeKey.startsWith("sk_live_")) {
104
- console.error("Error: Invalid Stripe key. Must start with sk_test_ or sk_live_.");
105
- process.exit(1);
227
+ // Step 1: Try Stripe CLI auto-detection
228
+ const detected = detectStripeKey();
229
+ let stripeKey;
230
+ if (detected) {
231
+ const maskedKey = `${detected.key.slice(0, detected.key.indexOf("_", 3) + 1)}...${detected.key.slice(-4)}`;
232
+ console.log(`\n✓ Detected Stripe ${detected.mode} key from Stripe CLI ${maskedKey}`);
233
+ if (detected.expiresAt) {
234
+ console.log(` (expires: ${detected.expiresAt})`);
235
+ }
236
+ stripeKey = detected.key;
237
+ }
238
+ else {
239
+ // Step 2: Manual fallback — open Dashboard and prompt
240
+ console.log("\nStripe CLI not detected or not logged in.");
241
+ console.log("Opening Stripe Dashboard API Keys page...");
242
+ // Open browser (same platform-detection approach as used elsewhere in the project)
243
+ const platform = process.platform;
244
+ const openCmd = platform === "win32" ? "start" : platform === "darwin" ? "open" : "xdg-open";
245
+ _spawnSync.fn(openCmd, ["https://dashboard.stripe.com/apikeys"], {});
246
+ stripeKey = await askQuestion("\nEnter your Stripe Secret Key (sk_test_, sk_live_, rk_test_, or rk_live_): ");
247
+ if (!/^(sk|rk)_(test|live)_\S{6,}$/.test(stripeKey)) {
248
+ console.error("Error: Invalid Stripe key. Must start with sk_test_, sk_live_, rk_test_, or rk_live_.");
249
+ process.exit(1);
250
+ }
251
+ const maskedKey = `${stripeKey.slice(0, stripeKey.indexOf("_", 3) + 1)}...${stripeKey.slice(-4)}`;
252
+ console.log(`\nConfiguring MCP clients with key ${maskedKey}...`);
106
253
  }
107
254
  // Never log the full key — show a masked version only
108
- const maskedKey = `sk_...${stripeKey.slice(-4)}`;
109
- console.log(`\nConfiguring MCP clients with key ${maskedKey}...`);
255
+ const maskedKey = `${stripeKey.slice(0, stripeKey.indexOf("_", 3) + 1)}...${stripeKey.slice(-4)}`;
110
256
  let paypalClientId;
111
257
  let paypalClientSecret;
112
258
  const configurePaypal = await askQuestion("\nDo you want to configure PayPal? (y/N): ");
@@ -138,6 +284,12 @@ export async function runInstall() {
138
284
  console.log(` ✓ ${client.name} configured`);
139
285
  configuredCount++;
140
286
  }
287
+ const claudeCodeInstalled = await installClaudeCode(stripeKey, paypalClientId, paypalClientSecret);
288
+ if (claudeCodeInstalled)
289
+ configuredCount++;
290
+ const openClawInstalled = await installOpenClaw();
291
+ if (openClawInstalled)
292
+ configuredCount++;
141
293
  if (configuredCount === 0) {
142
294
  console.log("\nNo MCP client config files found. Add clawpay manually:");
143
295
  const openCodeEnv = { STRIPE_SECRET_KEY: maskedKey };
@@ -170,9 +322,22 @@ export async function runInstall() {
170
322
  },
171
323
  },
172
324
  }, null, 2));
325
+ let claudeCodeCmd = `claude mcp add -s user clawpay -e STRIPE_SECRET_KEY=${maskedKey}`;
326
+ if (paypalClientId)
327
+ claudeCodeCmd += ` -e PAYPAL_CLIENT_ID=${paypalClientId}`;
328
+ if (paypalClientSecret)
329
+ claudeCodeCmd += ` -e PAYPAL_CLIENT_SECRET=${paypalClientSecret}`;
330
+ claudeCodeCmd += " -- clawpay";
331
+ console.log("\nClaude Code (run in terminal):");
332
+ console.log(` ${claudeCodeCmd}`);
333
+ console.log("\nOpenClaw:");
334
+ console.log(" Create ~/.openclaw/workspace/skills/clawpay/SKILL.md");
335
+ console.log(" (run: clawpay install after creating ~/.openclaw/ directory)");
173
336
  }
174
337
  console.log('\nInstallation complete! Ask your AI: "set up payment method"');
175
338
  }
339
+ /* c8 ignore end */
340
+ /* c8 ignore start */
176
341
  export async function runUninstall() {
177
342
  const clients = getMcpClients();
178
343
  for (const client of clients) {
@@ -194,4 +359,5 @@ export async function runUninstall() {
194
359
  }
195
360
  console.log("\nUninstallation complete.");
196
361
  }
362
+ /* c8 ignore end */
197
363
  //# sourceMappingURL=installer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AA4BA,wBAAsB,QAAQ,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA8J/E"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AA4BA,wBAAsB,QAAQ,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CA6J/E"}
package/dist/setup.js CHANGED
@@ -44,7 +44,6 @@ export async function runSetup() {
44
44
  const session = await stripe.checkout.sessions.create({
45
45
  mode: "setup",
46
46
  customer: customerId,
47
- payment_method_types: ["card"],
48
47
  success_url: `http://${SETUP_HOST}:${SETUP_PORT}/success?session_id={CHECKOUT_SESSION_ID}`,
49
48
  cancel_url: `http://${SETUP_HOST}:${SETUP_PORT}/cancel`,
50
49
  });
package/dist/setup.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { spawnSync } from "node:child_process";
2
+ import type { StripeCliConfig } from "./types.js";
3
+ declare function parseToml(content: string): Record<string, Record<string, string>>;
4
+ export declare const _parseToml: {
5
+ fn: typeof parseToml;
6
+ };
7
+ export { parseToml };
8
+ export declare function getStripeCliConfigPath(): string;
9
+ export declare const _spawnSyncCli: {
10
+ fn: typeof spawnSync;
11
+ };
12
+ export declare function isStripeCliInstalled(): boolean;
13
+ export declare function isStripeCliLoggedIn(): StripeCliConfig | null;
14
+ export declare function isKeyExpired(expiresAt: string): boolean;
15
+ export declare function readLiveKeyFromKeychain(): string | null;
16
+ export declare function detectStripeKey(): {
17
+ key: string;
18
+ source: "cli" | "manual";
19
+ mode: "test" | "live";
20
+ expiresAt?: string;
21
+ } | null;
22
+ //# sourceMappingURL=stripe-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe-cli.d.ts","sourceRoot":"","sources":["../src/stripe-cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,iBAAS,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAkD1E;AAED,eAAO,MAAM,UAAU,EAAE;IAAE,EAAE,EAAE,OAAO,SAAS,CAAA;CAAsB,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,wBAAgB,sBAAsB,IAAI,MAAM,CAM/C;AAED,eAAO,MAAM,aAAa,EAAE;IAAE,EAAE,EAAE,OAAO,SAAS,CAAA;CAAsB,CAAC;AAEzE,wBAAgB,oBAAoB,IAAI,OAAO,CAG9C;AAED,wBAAgB,mBAAmB,IAAI,eAAe,GAAG,IAAI,CA+B5D;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CA4BvD;AAED,wBAAgB,eAAe,IAAI;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAC;IACzB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAiDP"}
@@ -0,0 +1,156 @@
1
+ import { homedir } from "node:os";
2
+ import { join } from "node:path";
3
+ import { spawnSync } from "node:child_process";
4
+ import { readFileSync } from "node:fs";
5
+ function parseToml(content) {
6
+ const result = {};
7
+ let currentSection = null;
8
+ const lines = content.split("\n");
9
+ for (const line of lines) {
10
+ const trimmed = line.trim();
11
+ if (!trimmed || trimmed.startsWith("#")) {
12
+ continue;
13
+ }
14
+ const sectionMatch = trimmed.match(/^\[([^\]]+)\]$/);
15
+ if (sectionMatch) {
16
+ currentSection = sectionMatch[1];
17
+ if (!result[currentSection]) {
18
+ result[currentSection] = {};
19
+ }
20
+ continue;
21
+ }
22
+ if (currentSection === null) {
23
+ continue;
24
+ }
25
+ const kvMatch = trimmed.match(/^([a-z_]+)\s*=\s*(.+)$/);
26
+ if (!kvMatch) {
27
+ continue;
28
+ }
29
+ const key = kvMatch[1];
30
+ const valueStr = kvMatch[2].trim();
31
+ if (valueStr.startsWith("[")) {
32
+ continue;
33
+ }
34
+ if (valueStr === "true" || valueStr === "false") {
35
+ continue;
36
+ }
37
+ const quotedMatch = valueStr.match(/^['"]([^'"]*)['"]\s*$/);
38
+ if (quotedMatch) {
39
+ const value = quotedMatch[1];
40
+ result[currentSection][key] = value;
41
+ }
42
+ }
43
+ return result;
44
+ }
45
+ export const _parseToml = { fn: parseToml };
46
+ export { parseToml };
47
+ export function getStripeCliConfigPath() {
48
+ const xdgConfigHome = process.env.XDG_CONFIG_HOME;
49
+ if (xdgConfigHome) {
50
+ return join(xdgConfigHome, "stripe", "config.toml");
51
+ }
52
+ return join(homedir(), ".config", "stripe", "config.toml");
53
+ }
54
+ export const _spawnSyncCli = { fn: spawnSync };
55
+ export function isStripeCliInstalled() {
56
+ const result = _spawnSyncCli.fn("which", ["stripe"], { encoding: "utf-8" });
57
+ return result.status === 0;
58
+ }
59
+ export function isStripeCliLoggedIn() {
60
+ let content;
61
+ try {
62
+ content = readFileSync(getStripeCliConfigPath(), "utf-8");
63
+ }
64
+ catch {
65
+ return null;
66
+ }
67
+ const parsed = _parseToml.fn(content);
68
+ const defaults = parsed["default"] ?? null;
69
+ if (!defaults) {
70
+ return null;
71
+ }
72
+ const config = {
73
+ deviceName: defaults["device_name"],
74
+ displayName: defaults["display_name"],
75
+ accountId: defaults["account_id"],
76
+ testModeApiKey: defaults["test_mode_api_key"],
77
+ testModePubKey: defaults["test_mode_pub_key"],
78
+ testModeKeyExpiresAt: defaults["test_mode_key_expires_at"],
79
+ liveModeApiKey: defaults["live_mode_api_key"],
80
+ liveModePubKey: defaults["live_mode_pub_key"],
81
+ liveModeKeyExpiresAt: defaults["live_mode_key_expires_at"],
82
+ };
83
+ if (!config.testModeApiKey) {
84
+ return null;
85
+ }
86
+ return config;
87
+ }
88
+ export function isKeyExpired(expiresAt) {
89
+ const expiryDate = new Date(expiresAt + "T00:00:00Z");
90
+ return expiryDate < new Date();
91
+ }
92
+ export function readLiveKeyFromKeychain() {
93
+ if (process.platform !== "darwin") {
94
+ return null;
95
+ }
96
+ const result = _spawnSyncCli.fn("security", [
97
+ "find-generic-password",
98
+ "-s",
99
+ "StripeCLI",
100
+ "-a",
101
+ "default.live_mode_api_key",
102
+ "-w",
103
+ ], { encoding: "utf-8" });
104
+ if (result.status !== 0) {
105
+ return null;
106
+ }
107
+ const key = result.stdout.trim();
108
+ if (!/(sk|rk)_live_/.test(key)) {
109
+ return null;
110
+ }
111
+ return key;
112
+ }
113
+ export function detectStripeKey() {
114
+ const envKey = process.env.STRIPE_API_KEY;
115
+ if (envKey) {
116
+ return {
117
+ key: envKey,
118
+ source: "cli",
119
+ mode: envKey.includes("_live_") ? "live" : "test",
120
+ };
121
+ }
122
+ if (!isStripeCliInstalled()) {
123
+ return null;
124
+ }
125
+ const config = isStripeCliLoggedIn();
126
+ if (!config) {
127
+ return null;
128
+ }
129
+ if (config.testModeApiKey) {
130
+ if (isKeyExpired(config.testModeKeyExpiresAt ?? "")) {
131
+ console.warn(`⚠ Stripe CLI key expired on ${config.testModeKeyExpiresAt}. Run 'stripe login' to refresh.`);
132
+ }
133
+ return {
134
+ key: config.testModeApiKey,
135
+ source: "cli",
136
+ mode: "test",
137
+ expiresAt: config.testModeKeyExpiresAt,
138
+ };
139
+ }
140
+ /* c8 ignore start */
141
+ if (config.liveModeApiKey && config.liveModeApiKey.includes("***")) {
142
+ const keychainKey = readLiveKeyFromKeychain();
143
+ if (keychainKey) {
144
+ return {
145
+ key: keychainKey,
146
+ source: "cli",
147
+ mode: "live",
148
+ expiresAt: config.liveModeKeyExpiresAt,
149
+ };
150
+ }
151
+ return null;
152
+ }
153
+ return null;
154
+ /* c8 ignore stop */
155
+ }
156
+ //# sourceMappingURL=stripe-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe-cli.js","sourceRoot":"","sources":["../src/stripe-cli.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -79,4 +79,15 @@ export interface RefundResult {
79
79
  status?: string;
80
80
  error?: string;
81
81
  }
82
+ export interface StripeCliConfig {
83
+ deviceName?: string;
84
+ displayName?: string;
85
+ accountId?: string;
86
+ testModeApiKey?: string;
87
+ testModePubKey?: string;
88
+ testModeKeyExpiresAt?: string;
89
+ liveModeApiKey?: string;
90
+ liveModePubKey?: string;
91
+ liveModeKeyExpiresAt?: string;
92
+ }
82
93
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,SAAS,GAAG,YAAY,CAAC;CAEvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE;QACN,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,UAAU,EAAE;QACV,4BAA4B,EAAE,MAAM,CAAC;QACrC,kBAAkB,EAAE,MAAM,CAAC;QAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,mBAAmB,EAAE,OAAO,CAAC;KAC9B,CAAC;IACF,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,eAAO,MAAM,cAAc,EAAE,aAY5B,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xodn348/clawpay",
3
- "version": "0.2.1",
3
+ "version": "0.4.0",
4
4
  "description": "Open-source Stripe and PayPal MCP Server for AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -12,7 +12,7 @@
12
12
  "LICENSE",
13
13
  "README.md",
14
14
  "DISCLAIMER.md",
15
- "Formula"
15
+ "skill"
16
16
  ],
17
17
  "scripts": {
18
18
  "build": "tsc",
package/skill/SKILL.md ADDED
@@ -0,0 +1,64 @@
1
+ ---
2
+ name: clawpay
3
+ description: Make payments with ClawPay via Stripe and PayPal. Use when user wants to pay, send money, charge, refund, check balance, view transactions, set up payment method, or configure PayPal. Triggers: pay, send money, charge, refund, balance, transactions, set up payment, set up paypal, google pay, apple pay, alipay.
4
+ homepage: https://github.com/xodn348/clawpay
5
+ metadata: {"openclaw":{"emoji":"💳","requires":{"bins":["mcporter","clawpay"]},"install":[{"id":"node","kind":"node","package":"@xodn348/clawpay","bins":["clawpay"],"label":"Install ClawPay (npm)"}]}}
6
+ ---
7
+
8
+ # ClawPay — Stripe + PayPal Payments
9
+
10
+ Make real payments via Stripe and PayPal using mcporter bridge.
11
+
12
+ ## Safety Rules
13
+
14
+ - **Never auto-confirm payments without explicit user approval.** Always preview first; ask for confirmation.
15
+ - **Guardrails enforced:** $100 max per transaction, $500 max per day, USD only.
16
+ - **Audit trail:** Every action logged to `~/.clawpay/audit.log`.
17
+
18
+ ## Setup (once)
19
+
20
+ ```bash
21
+ mcporter call --stdio "clawpay" setup_payment
22
+ mcporter call --stdio "clawpay" setup_paypal
23
+ ```
24
+
25
+ ## Stripe Payments
26
+
27
+ **Create payment:**
28
+ ```bash
29
+ mcporter call --stdio "clawpay" pay amount=1000 currency=usd description="Coffee"
30
+ ```
31
+
32
+ **Check balance:**
33
+ ```bash
34
+ mcporter call --stdio "clawpay" get_balance
35
+ ```
36
+
37
+ **List transactions:**
38
+ ```bash
39
+ mcporter call --stdio "clawpay" list_transactions limit=5
40
+ ```
41
+
42
+ **Refund payment:**
43
+ ```bash
44
+ mcporter call --stdio "clawpay" refund payment_intent_id=pi_xxx
45
+ ```
46
+
47
+ ## PayPal Payouts
48
+
49
+ **Send money via PayPal:**
50
+ ```bash
51
+ mcporter call --stdio "clawpay" send_paypal recipientEmail=friend@example.com amount=2000 note="Lunch"
52
+ ```
53
+
54
+ Or by phone:
55
+ ```bash
56
+ mcporter call --stdio "clawpay" send_paypal recipientPhone=+12025551234 amount=2000
57
+ ```
58
+
59
+ ## Notes
60
+
61
+ - Amounts in cents: `1000` = $10.00
62
+ - Currency default: `usd`
63
+ - PayPal requires either `recipientEmail` or `recipientPhone`
64
+ - All transactions logged with timestamps and status
@@ -1,17 +0,0 @@
1
- class Clawpay < Formula
2
- desc "Open-source Stripe MCP Server for AI Agents"
3
- homepage "https://github.com/xodn348/clawpay"
4
- url "https://registry.npmjs.org/clawpay/-/clawpay-0.1.0.tgz"
5
- sha256 "placeholder_sha256"
6
- license "Apache-2.0"
7
- depends_on "node"
8
-
9
- def install
10
- system "npm", "install", *Language::Node.std_npm_install_args(libexec)
11
- bin.install_symlink Dir["#{libexec}/bin/*"]
12
- end
13
-
14
- test do
15
- assert_match "clawpay", shell_output("#{bin}/clawpay --help 2>&1", 1)
16
- end
17
- end