lightning-wallet-mcp 1.0.5 → 1.1.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 +90 -9
- package/dist/cli.d.ts +11 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +397 -0
- package/dist/cli.js.map +1 -0
- package/package.json +8 -4
package/README.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
# Lightning Wallet
|
|
1
|
+
# Lightning Wallet
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/lightning-wallet-mcp)
|
|
4
4
|
[](https://opensource.org/licenses/MIT)
|
|
5
5
|
|
|
6
|
-
**Give your AI agent a Bitcoin wallet.**
|
|
6
|
+
**Give your AI agent a Bitcoin wallet.** MCP server + CLI. Works with Claude Code, OpenClaw, Cursor, and any agent framework.
|
|
7
7
|
|
|
8
8
|
> **Note:** This package was previously published as `lightning-faucet-mcp`. The functionality is identical.
|
|
9
9
|
|
|
@@ -33,11 +33,45 @@
|
|
|
33
33
|
- **Webhook Notifications** - Get notified instantly when payments arrive
|
|
34
34
|
- **Full Observability** - Analytics, exports, and detailed status tracking
|
|
35
35
|
|
|
36
|
-
##
|
|
36
|
+
## Two Ways to Use
|
|
37
37
|
|
|
38
|
-
###
|
|
38
|
+
### CLI (Any Agent Framework)
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
For CLI-first agents (OpenClaw, Pi, KiloCode, or any agent with Bash access):
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npm install -g lightning-wallet-mcp
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
This installs the `lw` command:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# Register and save your API key
|
|
50
|
+
export LIGHTNING_WALLET_API_KEY=$(lw register --name "My Bot" | jq -r '.api_key')
|
|
51
|
+
|
|
52
|
+
# Check balance
|
|
53
|
+
lw balance | jq '.balance_sats'
|
|
54
|
+
|
|
55
|
+
# Pay an L402 API
|
|
56
|
+
lw pay-api "https://lightningfaucet.com/api/l402/fortune"
|
|
57
|
+
|
|
58
|
+
# Create and fund an agent
|
|
59
|
+
lw create-agent "Research Bot" --budget 5000
|
|
60
|
+
lw fund-agent 1 1000
|
|
61
|
+
|
|
62
|
+
# Check identity
|
|
63
|
+
lw whoami
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Output is JSON by default (pipe to `jq`). Use `--human` for readable output.
|
|
67
|
+
|
|
68
|
+
Run `lw help` for all commands.
|
|
69
|
+
|
|
70
|
+
### MCP Server (Claude Code, Cursor, Windsurf)
|
|
71
|
+
|
|
72
|
+
For MCP-native clients, configure as an MCP server:
|
|
73
|
+
|
|
74
|
+
**Option A: Self-Registration**
|
|
41
75
|
|
|
42
76
|
```json
|
|
43
77
|
{
|
|
@@ -52,9 +86,7 @@ The MCP server can register itself! Just configure Claude Code without an API ke
|
|
|
52
86
|
|
|
53
87
|
Then ask Claude: *"Register a new Lightning Wallet operator account"*
|
|
54
88
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
### Option 2: Pre-configured API Key
|
|
89
|
+
**Option B: Pre-configured API Key**
|
|
58
90
|
|
|
59
91
|
1. Get an API key at [lightningfaucet.com/ai-agents](https://lightningfaucet.com/ai-agents/)
|
|
60
92
|
2. Configure Claude Code (`~/.claude/settings.json`):
|
|
@@ -155,6 +187,52 @@ Claude will use `register_operator` to create an account, then `set_operator_key
|
|
|
155
187
|
- `budget_warning` - 80% of budget consumed
|
|
156
188
|
- `test` - Manual test event
|
|
157
189
|
|
|
190
|
+
## CLI Reference
|
|
191
|
+
|
|
192
|
+
All commands output JSON to stdout. Errors go to stderr with exit code 1.
|
|
193
|
+
|
|
194
|
+
| Command | Description |
|
|
195
|
+
|---------|-------------|
|
|
196
|
+
| `lw register [--name "name"]` | Create operator account, prints API key |
|
|
197
|
+
| `lw whoami` | Current identity (operator or agent) |
|
|
198
|
+
| `lw balance` | Balance in satoshis |
|
|
199
|
+
| `lw info` | Service status and capabilities |
|
|
200
|
+
| `lw deposit <amount>` | Generate deposit invoice |
|
|
201
|
+
| `lw withdraw <invoice>` | Withdraw to external wallet |
|
|
202
|
+
| `lw pay <invoice>` | Pay BOLT11 invoice `[--max-fee <sats>]` |
|
|
203
|
+
| `lw pay-api <url>` | Pay L402/X402 API `[--method GET] [--body "{}"] [--max-sats 1000]` |
|
|
204
|
+
| `lw decode <invoice>` | Decode BOLT11 invoice |
|
|
205
|
+
| `lw create-agent <name>` | Create agent `[--budget <sats>]` |
|
|
206
|
+
| `lw fund-agent <id> <amount>` | Transfer sats to agent |
|
|
207
|
+
| `lw list-agents` | List all agents |
|
|
208
|
+
| `lw transactions` | Recent transactions `[--limit 10] [--offset 0]` |
|
|
209
|
+
| `lw help` | Show all commands |
|
|
210
|
+
|
|
211
|
+
### Agent Workflow Example (Bash)
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
# 1. Register (one-time)
|
|
215
|
+
export LIGHTNING_WALLET_API_KEY=$(lw register --name "My Agent" | jq -r '.api_key')
|
|
216
|
+
|
|
217
|
+
# 2. Fund the account (pay the invoice with any Lightning wallet)
|
|
218
|
+
lw deposit 10000 | jq -r '.bolt11'
|
|
219
|
+
|
|
220
|
+
# 3. Create an agent with a budget
|
|
221
|
+
AGENT=$(lw create-agent "Worker" --budget 5000)
|
|
222
|
+
AGENT_ID=$(echo $AGENT | jq -r '.agent_id')
|
|
223
|
+
AGENT_KEY=$(echo $AGENT | jq -r '.agent_api_key')
|
|
224
|
+
|
|
225
|
+
# 4. Fund the agent
|
|
226
|
+
lw fund-agent $AGENT_ID 2000
|
|
227
|
+
|
|
228
|
+
# 5. Switch to agent context and make payments
|
|
229
|
+
export LIGHTNING_WALLET_API_KEY=$AGENT_KEY
|
|
230
|
+
lw pay-api "https://api.example.com/data" --max-sats 100
|
|
231
|
+
|
|
232
|
+
# 6. Check what happened
|
|
233
|
+
lw transactions --limit 5
|
|
234
|
+
```
|
|
235
|
+
|
|
158
236
|
## Paid API Protocols: L402 + X402
|
|
159
237
|
|
|
160
238
|
Lightning Wallet MCP supports two HTTP 402 payment protocols:
|
|
@@ -448,7 +526,10 @@ All payment responses include `platform_fee_sats`, `routing_fee_sats`, and `tota
|
|
|
448
526
|
|
|
449
527
|
## Changelog
|
|
450
528
|
|
|
451
|
-
### v1.1.0 (2026-02-
|
|
529
|
+
### v1.1.0 (2026-02-16)
|
|
530
|
+
- **CLI interface:** New `lw` command for CLI-first agents (OpenClaw, Pi, KiloCode, any Bash agent)
|
|
531
|
+
- **Same package, two interfaces:** `npm install -g lightning-wallet-mcp` gives you both MCP server and CLI
|
|
532
|
+
- **JSON-first output:** All CLI commands output JSON to stdout, errors to stderr
|
|
452
533
|
- **X402 support:** Automatic fallback to X402 (USDC on Base) when L402 is not available
|
|
453
534
|
- **Protocol auto-detection:** `pay_l402_api` detects L402 or X402 from 402 response headers
|
|
454
535
|
- **Response fields:** `payment_protocol` and `usdc_amount` included when X402 is used
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Lightning Wallet CLI
|
|
4
|
+
*
|
|
5
|
+
* CLI interface for AI agents that extend themselves via Bash.
|
|
6
|
+
* Same API, same backend as the MCP server — just a different interface.
|
|
7
|
+
*
|
|
8
|
+
* Usage: lw <command> [options]
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;GAOG"}
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,397 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/**
|
|
4
|
+
* Lightning Wallet CLI
|
|
5
|
+
*
|
|
6
|
+
* CLI interface for AI agents that extend themselves via Bash.
|
|
7
|
+
* Same API, same backend as the MCP server — just a different interface.
|
|
8
|
+
*
|
|
9
|
+
* Usage: lw <command> [options]
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const lightning_faucet_js_1 = require("./lightning-faucet.js");
|
|
13
|
+
const VERSION = '1.1.0';
|
|
14
|
+
// --- Helpers ---
|
|
15
|
+
function getApiKey() {
|
|
16
|
+
const key = process.env.LIGHTNING_WALLET_API_KEY || process.env.LIGHTNING_FAUCET_API_KEY;
|
|
17
|
+
if (!key) {
|
|
18
|
+
error('No API key found. Set LIGHTNING_WALLET_API_KEY or run: lw register');
|
|
19
|
+
}
|
|
20
|
+
return key;
|
|
21
|
+
}
|
|
22
|
+
function getClient() {
|
|
23
|
+
return new lightning_faucet_js_1.LightningFaucetClient(getApiKey());
|
|
24
|
+
}
|
|
25
|
+
function error(message) {
|
|
26
|
+
const out = JSON.stringify({ error: message });
|
|
27
|
+
process.stderr.write(message + '\n');
|
|
28
|
+
process.stdout.write(out + '\n');
|
|
29
|
+
process.exit(1);
|
|
30
|
+
}
|
|
31
|
+
function output(data, human) {
|
|
32
|
+
if (human) {
|
|
33
|
+
process.stdout.write(formatHuman(data) + '\n');
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
process.stdout.write(JSON.stringify(data, null, 2) + '\n');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function formatHuman(data, indent = 0) {
|
|
40
|
+
if (data === null || data === undefined)
|
|
41
|
+
return 'null';
|
|
42
|
+
if (typeof data !== 'object')
|
|
43
|
+
return String(data);
|
|
44
|
+
const prefix = ' '.repeat(indent);
|
|
45
|
+
if (Array.isArray(data)) {
|
|
46
|
+
if (data.length === 0)
|
|
47
|
+
return '(none)';
|
|
48
|
+
return data.map((item, i) => `${prefix}[${i}] ${formatHuman(item, indent + 1)}`).join('\n');
|
|
49
|
+
}
|
|
50
|
+
const obj = data;
|
|
51
|
+
const lines = [];
|
|
52
|
+
for (const [key, val] of Object.entries(obj)) {
|
|
53
|
+
if (typeof val === 'object' && val !== null) {
|
|
54
|
+
lines.push(`${prefix}${key}:`);
|
|
55
|
+
lines.push(formatHuman(val, indent + 1));
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
lines.push(`${prefix}${key}: ${val}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return lines.join('\n');
|
|
62
|
+
}
|
|
63
|
+
function parseArgs(argv) {
|
|
64
|
+
const command = argv[0] || 'help';
|
|
65
|
+
const positional = [];
|
|
66
|
+
const flags = {};
|
|
67
|
+
for (let i = 1; i < argv.length; i++) {
|
|
68
|
+
const arg = argv[i];
|
|
69
|
+
if (arg.startsWith('--')) {
|
|
70
|
+
const key = arg.slice(2);
|
|
71
|
+
const next = argv[i + 1];
|
|
72
|
+
if (next && !next.startsWith('--')) {
|
|
73
|
+
flags[key] = next;
|
|
74
|
+
i++;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
flags[key] = true;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
positional.push(arg);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return { command, positional, flags };
|
|
85
|
+
}
|
|
86
|
+
// --- Commands ---
|
|
87
|
+
async function cmdRegister(positional, flags) {
|
|
88
|
+
const name = flags.name || positional[0] || undefined;
|
|
89
|
+
const result = await (0, lightning_faucet_js_1.registerOperator)(name);
|
|
90
|
+
return {
|
|
91
|
+
operator_id: result.operatorId,
|
|
92
|
+
api_key: result.apiKey,
|
|
93
|
+
recovery_code: result.recoveryCode,
|
|
94
|
+
hint: `export LIGHTNING_WALLET_API_KEY=${result.apiKey}`,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
async function cmdWhoami() {
|
|
98
|
+
const client = getClient();
|
|
99
|
+
const result = await client.whoami();
|
|
100
|
+
const out = {
|
|
101
|
+
type: result.type,
|
|
102
|
+
id: result.id,
|
|
103
|
+
name: result.name,
|
|
104
|
+
balance_sats: result.balanceSats,
|
|
105
|
+
};
|
|
106
|
+
if (result.agentCount !== undefined)
|
|
107
|
+
out.agent_count = result.agentCount;
|
|
108
|
+
if (result.budgetLimitSats !== undefined)
|
|
109
|
+
out.budget_limit_sats = result.budgetLimitSats;
|
|
110
|
+
if (result.operatorId !== undefined)
|
|
111
|
+
out.operator_id = result.operatorId;
|
|
112
|
+
return out;
|
|
113
|
+
}
|
|
114
|
+
async function cmdBalance() {
|
|
115
|
+
const client = getClient();
|
|
116
|
+
const result = await client.checkBalance();
|
|
117
|
+
return { balance_sats: result.balanceSats };
|
|
118
|
+
}
|
|
119
|
+
async function cmdPay(positional, flags) {
|
|
120
|
+
const invoice = positional[0];
|
|
121
|
+
if (!invoice)
|
|
122
|
+
error('Usage: lw pay <bolt11_invoice>');
|
|
123
|
+
const client = getClient();
|
|
124
|
+
const maxFee = flags['max-fee'] ? parseInt(flags['max-fee'], 10) : undefined;
|
|
125
|
+
const result = await client.payInvoice(invoice, maxFee);
|
|
126
|
+
return {
|
|
127
|
+
preimage: result.preimage,
|
|
128
|
+
amount_sats: result.amountSats,
|
|
129
|
+
routing_fee_sats: result.routingFeeSats,
|
|
130
|
+
platform_fee_sats: result.platformFeeSats,
|
|
131
|
+
total_cost: result.totalCost,
|
|
132
|
+
payment_hash: result.paymentHash,
|
|
133
|
+
new_balance: result.newBalance,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
async function cmdPayApi(positional, flags) {
|
|
137
|
+
const url = positional[0];
|
|
138
|
+
if (!url)
|
|
139
|
+
error('Usage: lw pay-api <url> [--method GET] [--body "{}"] [--max-sats 1000]');
|
|
140
|
+
const client = getClient();
|
|
141
|
+
const method = flags.method || 'GET';
|
|
142
|
+
const body = flags.body;
|
|
143
|
+
const maxSats = flags['max-sats'] ? parseInt(flags['max-sats'], 10) : 1000;
|
|
144
|
+
const result = await client.l402Pay(url, method, body === undefined ? undefined : body, maxSats);
|
|
145
|
+
const out = {
|
|
146
|
+
data: result.data,
|
|
147
|
+
status_code: result.statusCode,
|
|
148
|
+
amount_paid: result.amountPaid,
|
|
149
|
+
fee: result.fee,
|
|
150
|
+
payment_hash: result.paymentHash,
|
|
151
|
+
};
|
|
152
|
+
if (result.paymentProtocol)
|
|
153
|
+
out.payment_protocol = result.paymentProtocol;
|
|
154
|
+
if (result.usdcAmount)
|
|
155
|
+
out.usdc_amount = result.usdcAmount;
|
|
156
|
+
return out;
|
|
157
|
+
}
|
|
158
|
+
async function cmdCreateAgent(positional, flags) {
|
|
159
|
+
const name = positional[0] || flags.name;
|
|
160
|
+
if (!name)
|
|
161
|
+
error('Usage: lw create-agent <name> [--budget <sats>]');
|
|
162
|
+
const client = getClient();
|
|
163
|
+
const budget = flags.budget ? parseInt(flags.budget, 10) : undefined;
|
|
164
|
+
const result = await client.createAgent(name, undefined, budget);
|
|
165
|
+
return {
|
|
166
|
+
agent_id: result.agentId,
|
|
167
|
+
agent_api_key: result.agentApiKey,
|
|
168
|
+
name: result.name,
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
async function cmdFundAgent(positional) {
|
|
172
|
+
const agentId = positional[0];
|
|
173
|
+
const amount = positional[1];
|
|
174
|
+
if (!agentId || !amount)
|
|
175
|
+
error('Usage: lw fund-agent <agent_id> <amount_sats>');
|
|
176
|
+
const client = getClient();
|
|
177
|
+
const result = await client.fundAgent(parseInt(agentId, 10), parseInt(amount, 10));
|
|
178
|
+
return {
|
|
179
|
+
amount_transferred: result.amountTransferred,
|
|
180
|
+
new_operator_balance: result.newOperatorBalance,
|
|
181
|
+
new_agent_balance: result.newAgentBalance,
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
async function cmdListAgents() {
|
|
185
|
+
const client = getClient();
|
|
186
|
+
const result = await client.listAgents();
|
|
187
|
+
return result.agents.map(a => ({
|
|
188
|
+
id: a.id,
|
|
189
|
+
name: a.name,
|
|
190
|
+
balance_sats: a.balanceSats,
|
|
191
|
+
is_active: a.isActive,
|
|
192
|
+
}));
|
|
193
|
+
}
|
|
194
|
+
async function cmdDeposit(positional) {
|
|
195
|
+
const amount = positional[0];
|
|
196
|
+
if (!amount)
|
|
197
|
+
error('Usage: lw deposit <amount_sats>');
|
|
198
|
+
const client = getClient();
|
|
199
|
+
const result = await client.getDepositInvoice(parseInt(amount, 10));
|
|
200
|
+
return {
|
|
201
|
+
bolt11: result.bolt11,
|
|
202
|
+
payment_hash: result.paymentHash,
|
|
203
|
+
expires_at: result.expiresAt,
|
|
204
|
+
payment_url: result.paymentUrl,
|
|
205
|
+
qr_url: result.qrUrl,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
async function cmdWithdraw(positional) {
|
|
209
|
+
const invoice = positional[0];
|
|
210
|
+
if (!invoice)
|
|
211
|
+
error('Usage: lw withdraw <bolt11_invoice>');
|
|
212
|
+
const client = getClient();
|
|
213
|
+
const result = await client.withdraw(invoice);
|
|
214
|
+
return {
|
|
215
|
+
amount_sats: result.amountSats,
|
|
216
|
+
routing_fee_sats: result.routingFeeSats,
|
|
217
|
+
platform_fee_sats: result.platformFeeSats,
|
|
218
|
+
total_cost: result.totalCost,
|
|
219
|
+
payment_hash: result.paymentHash,
|
|
220
|
+
new_balance: result.newBalance,
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
async function cmdTransactions(flags) {
|
|
224
|
+
const client = getClient();
|
|
225
|
+
const limit = flags.limit ? parseInt(flags.limit, 10) : 10;
|
|
226
|
+
const offset = flags.offset ? parseInt(flags.offset, 10) : 0;
|
|
227
|
+
const result = await client.getTransactions(limit, offset);
|
|
228
|
+
return {
|
|
229
|
+
transactions: result.transactions.map(tx => ({
|
|
230
|
+
type: tx.type,
|
|
231
|
+
amount_sats: tx.amountSats,
|
|
232
|
+
fee_sats: tx.feeSats,
|
|
233
|
+
memo: tx.memo,
|
|
234
|
+
payment_hash: tx.paymentHash,
|
|
235
|
+
timestamp: tx.timestamp,
|
|
236
|
+
balance_after: tx.balanceAfter,
|
|
237
|
+
})),
|
|
238
|
+
total: result.total,
|
|
239
|
+
has_more: result.hasMore,
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
async function cmdInfo() {
|
|
243
|
+
const client = getClient();
|
|
244
|
+
const result = await client.getInfo();
|
|
245
|
+
return {
|
|
246
|
+
version: result.version,
|
|
247
|
+
api_version: result.apiVersion,
|
|
248
|
+
status: result.status,
|
|
249
|
+
max_payment_sats: result.maxPaymentSats,
|
|
250
|
+
min_payment_sats: result.minPaymentSats,
|
|
251
|
+
supported_features: result.supportedFeatures,
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
async function cmdDecode(positional) {
|
|
255
|
+
const invoice = positional[0];
|
|
256
|
+
if (!invoice)
|
|
257
|
+
error('Usage: lw decode <bolt11_invoice>');
|
|
258
|
+
const client = getClient();
|
|
259
|
+
const result = await client.decodeInvoice(invoice);
|
|
260
|
+
return {
|
|
261
|
+
amount_sats: result.amountSats,
|
|
262
|
+
description: result.description,
|
|
263
|
+
payment_hash: result.paymentHash,
|
|
264
|
+
destination: result.destination,
|
|
265
|
+
expires_at: result.expiresAt,
|
|
266
|
+
is_expired: result.isExpired,
|
|
267
|
+
created_at: result.createdAt,
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
function cmdHelp() {
|
|
271
|
+
const help = `Lightning Wallet CLI v${VERSION}
|
|
272
|
+
https://lightningfaucet.com/ai-agents
|
|
273
|
+
|
|
274
|
+
Give your AI agent a Bitcoin wallet. Works with any agent framework.
|
|
275
|
+
|
|
276
|
+
USAGE
|
|
277
|
+
lw <command> [options]
|
|
278
|
+
|
|
279
|
+
SETUP
|
|
280
|
+
register [--name "name"] Create operator account, prints API key
|
|
281
|
+
export LIGHTNING_WALLET_API_KEY=<key> Set API key (after register)
|
|
282
|
+
|
|
283
|
+
COMMANDS
|
|
284
|
+
whoami Show current identity (operator or agent)
|
|
285
|
+
balance Check balance in satoshis
|
|
286
|
+
info Service status and capabilities
|
|
287
|
+
deposit <amount> Generate deposit invoice (sats)
|
|
288
|
+
withdraw <invoice> Withdraw to external wallet
|
|
289
|
+
|
|
290
|
+
pay <invoice> Pay a BOLT11 invoice [--max-fee <sats>]
|
|
291
|
+
pay-api <url> Pay L402/X402 API (auto-detect protocol)
|
|
292
|
+
[--method GET] [--body "{}"] [--max-sats 1000]
|
|
293
|
+
decode <invoice> Decode BOLT11 invoice without paying
|
|
294
|
+
|
|
295
|
+
create-agent <name> Create agent [--budget <sats>]
|
|
296
|
+
fund-agent <id> <amount> Transfer sats to agent
|
|
297
|
+
list-agents List all agents
|
|
298
|
+
|
|
299
|
+
transactions Recent transactions [--limit 10] [--offset 0]
|
|
300
|
+
help Show this help
|
|
301
|
+
|
|
302
|
+
OUTPUT
|
|
303
|
+
Default: JSON (pipe to jq for parsing)
|
|
304
|
+
--human Human-readable output
|
|
305
|
+
|
|
306
|
+
EXAMPLES
|
|
307
|
+
# Register and save key
|
|
308
|
+
export LIGHTNING_WALLET_API_KEY=$(lw register --name "My Bot" | jq -r '.api_key')
|
|
309
|
+
|
|
310
|
+
# Check balance
|
|
311
|
+
lw balance | jq '.balance_sats'
|
|
312
|
+
|
|
313
|
+
# Pay an L402 API
|
|
314
|
+
lw pay-api "https://lightningfaucet.com/api/l402/fortune"
|
|
315
|
+
|
|
316
|
+
# Create and fund an agent
|
|
317
|
+
lw create-agent "Research Bot" --budget 5000
|
|
318
|
+
lw fund-agent 1 1000
|
|
319
|
+
|
|
320
|
+
DOCS
|
|
321
|
+
https://lightningfaucet.com/ai-agents/docs
|
|
322
|
+
https://github.com/lightningfaucet/lightning-wallet-mcp`;
|
|
323
|
+
process.stdout.write(help + '\n');
|
|
324
|
+
}
|
|
325
|
+
// --- Main ---
|
|
326
|
+
async function main() {
|
|
327
|
+
const args = process.argv.slice(2);
|
|
328
|
+
const { command, positional, flags } = parseArgs(args);
|
|
329
|
+
const human = flags.human === true || flags.pretty === true;
|
|
330
|
+
try {
|
|
331
|
+
let result;
|
|
332
|
+
switch (command) {
|
|
333
|
+
case 'register':
|
|
334
|
+
result = await cmdRegister(positional, flags);
|
|
335
|
+
break;
|
|
336
|
+
case 'whoami':
|
|
337
|
+
result = await cmdWhoami();
|
|
338
|
+
break;
|
|
339
|
+
case 'balance':
|
|
340
|
+
result = await cmdBalance();
|
|
341
|
+
break;
|
|
342
|
+
case 'pay':
|
|
343
|
+
result = await cmdPay(positional, flags);
|
|
344
|
+
break;
|
|
345
|
+
case 'pay-api':
|
|
346
|
+
result = await cmdPayApi(positional, flags);
|
|
347
|
+
break;
|
|
348
|
+
case 'create-agent':
|
|
349
|
+
result = await cmdCreateAgent(positional, flags);
|
|
350
|
+
break;
|
|
351
|
+
case 'fund-agent':
|
|
352
|
+
result = await cmdFundAgent(positional);
|
|
353
|
+
break;
|
|
354
|
+
case 'list-agents':
|
|
355
|
+
result = await cmdListAgents();
|
|
356
|
+
break;
|
|
357
|
+
case 'deposit':
|
|
358
|
+
result = await cmdDeposit(positional);
|
|
359
|
+
break;
|
|
360
|
+
case 'withdraw':
|
|
361
|
+
result = await cmdWithdraw(positional);
|
|
362
|
+
break;
|
|
363
|
+
case 'transactions':
|
|
364
|
+
result = await cmdTransactions(flags);
|
|
365
|
+
break;
|
|
366
|
+
case 'info':
|
|
367
|
+
result = await cmdInfo();
|
|
368
|
+
break;
|
|
369
|
+
case 'decode':
|
|
370
|
+
result = await cmdDecode(positional);
|
|
371
|
+
break;
|
|
372
|
+
case 'help':
|
|
373
|
+
case '--help':
|
|
374
|
+
case '-h':
|
|
375
|
+
cmdHelp();
|
|
376
|
+
return;
|
|
377
|
+
case 'version':
|
|
378
|
+
case '--version':
|
|
379
|
+
case '-v':
|
|
380
|
+
process.stdout.write(VERSION + '\n');
|
|
381
|
+
return;
|
|
382
|
+
default:
|
|
383
|
+
process.stderr.write(`Unknown command: ${command}\n\n`);
|
|
384
|
+
cmdHelp();
|
|
385
|
+
process.exit(1);
|
|
386
|
+
}
|
|
387
|
+
output(result, human);
|
|
388
|
+
}
|
|
389
|
+
catch (err) {
|
|
390
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
391
|
+
process.stderr.write(`Error: ${message}\n`);
|
|
392
|
+
process.stdout.write(JSON.stringify({ error: message }) + '\n');
|
|
393
|
+
process.exit(1);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
main();
|
|
397
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lightning-wallet-mcp",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"mcpName": "io.github.lightningfaucet/lightning-wallet-mcp",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "Lightning wallet for AI agents. MCP server + CLI. Works with Claude Code, OpenClaw, Cursor, and any agent framework.",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"bin": {
|
|
9
|
-
"lightning-wallet-mcp": "dist/index.js"
|
|
9
|
+
"lightning-wallet-mcp": "dist/index.js",
|
|
10
|
+
"lw": "dist/cli.js"
|
|
10
11
|
},
|
|
11
12
|
"scripts": {
|
|
12
13
|
"build": "tsc",
|
|
@@ -22,7 +23,10 @@
|
|
|
22
23
|
"l402",
|
|
23
24
|
"payments",
|
|
24
25
|
"lightning-faucet-mcp",
|
|
25
|
-
"wallet"
|
|
26
|
+
"wallet",
|
|
27
|
+
"cli",
|
|
28
|
+
"openai",
|
|
29
|
+
"agent-framework"
|
|
26
30
|
],
|
|
27
31
|
"author": "Lightning Faucet",
|
|
28
32
|
"license": "MIT",
|