@moonpay/cli 0.6.13 → 0.6.15
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/dist/{chunk-AFUYZK7C.js → chunk-7KJP7F5Q.js} +238 -98
- package/dist/chunk-7KJP7F5Q.js.map +1 -0
- package/dist/index.js +2 -2
- package/dist/{mcp-BLERLDQJ.js → mcp-7EFPAPL5.js} +2 -2
- package/package.json +1 -1
- package/skills/moonpay-feedback/SKILL.md +49 -0
- package/dist/chunk-AFUYZK7C.js.map +0 -1
- /package/dist/{mcp-BLERLDQJ.js.map → mcp-7EFPAPL5.js.map} +0 -0
|
@@ -236,7 +236,8 @@ async function callTool(baseUrl, toolName, params) {
|
|
|
236
236
|
}
|
|
237
237
|
}
|
|
238
238
|
if (res.status === 429) {
|
|
239
|
-
|
|
239
|
+
const hint = token ? "" : " Log in with `mp login` for higher limits.";
|
|
240
|
+
throw new Error(`Rate limit exceeded. Please wait a moment and try again.${hint}`);
|
|
240
241
|
}
|
|
241
242
|
if (res.status === 401) {
|
|
242
243
|
throw new Error("This command requires a MoonPay CLI account. Run `moonpay login` first.");
|
|
@@ -611,9 +612,68 @@ var schemas_default = [
|
|
|
611
612
|
$schema: "http://json-schema.org/draft-07/schema#"
|
|
612
613
|
}
|
|
613
614
|
},
|
|
615
|
+
{
|
|
616
|
+
name: "feedback_create",
|
|
617
|
+
description: "Submit feedback, a bug report, or a feature request. Requires authentication.",
|
|
618
|
+
inputSchema: {
|
|
619
|
+
$ref: "#/definitions/feedback_create_input",
|
|
620
|
+
definitions: {
|
|
621
|
+
feedback_create_input: {
|
|
622
|
+
type: "object",
|
|
623
|
+
properties: {
|
|
624
|
+
type: {
|
|
625
|
+
type: "string",
|
|
626
|
+
enum: [
|
|
627
|
+
"bug",
|
|
628
|
+
"feature",
|
|
629
|
+
"general"
|
|
630
|
+
],
|
|
631
|
+
description: "Type of feedback: bug report, feature request, or general"
|
|
632
|
+
},
|
|
633
|
+
message: {
|
|
634
|
+
type: "string",
|
|
635
|
+
minLength: 1,
|
|
636
|
+
maxLength: 280,
|
|
637
|
+
description: "Your feedback message"
|
|
638
|
+
}
|
|
639
|
+
},
|
|
640
|
+
required: [
|
|
641
|
+
"type",
|
|
642
|
+
"message"
|
|
643
|
+
],
|
|
644
|
+
additionalProperties: false
|
|
645
|
+
}
|
|
646
|
+
},
|
|
647
|
+
$schema: "http://json-schema.org/draft-07/schema#"
|
|
648
|
+
},
|
|
649
|
+
outputSchema: {
|
|
650
|
+
$ref: "#/definitions/feedback_create_output",
|
|
651
|
+
definitions: {
|
|
652
|
+
feedback_create_output: {
|
|
653
|
+
type: "object",
|
|
654
|
+
properties: {
|
|
655
|
+
id: {
|
|
656
|
+
type: "string",
|
|
657
|
+
description: "Feedback ID"
|
|
658
|
+
},
|
|
659
|
+
message: {
|
|
660
|
+
type: "string",
|
|
661
|
+
description: "Confirmation message"
|
|
662
|
+
}
|
|
663
|
+
},
|
|
664
|
+
required: [
|
|
665
|
+
"id",
|
|
666
|
+
"message"
|
|
667
|
+
],
|
|
668
|
+
additionalProperties: false
|
|
669
|
+
}
|
|
670
|
+
},
|
|
671
|
+
$schema: "http://json-schema.org/draft-07/schema#"
|
|
672
|
+
}
|
|
673
|
+
},
|
|
614
674
|
{
|
|
615
675
|
name: "login",
|
|
616
|
-
description: "Send a verification code to the provided email to sign in or create an account.",
|
|
676
|
+
description: "Send a verification code to the provided email to sign in or create an account. Requires an hCaptcha token.",
|
|
617
677
|
inputSchema: {
|
|
618
678
|
$ref: "#/definitions/login_input",
|
|
619
679
|
definitions: {
|
|
@@ -624,10 +684,15 @@ var schemas_default = [
|
|
|
624
684
|
type: "string",
|
|
625
685
|
format: "email",
|
|
626
686
|
description: "The email of the user to login"
|
|
687
|
+
},
|
|
688
|
+
captchaToken: {
|
|
689
|
+
type: "string",
|
|
690
|
+
description: "hCaptcha response token"
|
|
627
691
|
}
|
|
628
692
|
},
|
|
629
693
|
required: [
|
|
630
|
-
"email"
|
|
694
|
+
"email",
|
|
695
|
+
"captchaToken"
|
|
631
696
|
],
|
|
632
697
|
additionalProperties: false
|
|
633
698
|
}
|
|
@@ -6547,6 +6612,7 @@ var walletCreate = createTool(walletCreateSchema, async (params) => {
|
|
|
6547
6612
|
});
|
|
6548
6613
|
|
|
6549
6614
|
// src/tools/wallet/import/tool.ts
|
|
6615
|
+
import { createInterface } from "readline";
|
|
6550
6616
|
import { validateMnemonic } from "@scure/bip39";
|
|
6551
6617
|
import { wordlist as english2 } from "@scure/bip39/wordlists/english";
|
|
6552
6618
|
import { Keypair } from "@solana/web3.js";
|
|
@@ -6572,12 +6638,64 @@ var walletImportSchema = defineToolSchema({
|
|
|
6572
6638
|
});
|
|
6573
6639
|
|
|
6574
6640
|
// src/tools/wallet/import/tool.ts
|
|
6641
|
+
function readSecret(prompt) {
|
|
6642
|
+
return new Promise((resolve, reject) => {
|
|
6643
|
+
if (!process.stdin.isTTY) {
|
|
6644
|
+
reject(new Error("Interactive import requires a terminal. Pass --mnemonic or --key instead."));
|
|
6645
|
+
return;
|
|
6646
|
+
}
|
|
6647
|
+
const rl = createInterface({ input: process.stdin, output: process.stderr });
|
|
6648
|
+
process.stderr.write(prompt);
|
|
6649
|
+
process.stdin.setRawMode(true);
|
|
6650
|
+
let input = "";
|
|
6651
|
+
const onData = (ch) => {
|
|
6652
|
+
const c = ch.toString();
|
|
6653
|
+
if (c === "\n" || c === "\r") {
|
|
6654
|
+
process.stdin.setRawMode(false);
|
|
6655
|
+
process.stdin.removeListener("data", onData);
|
|
6656
|
+
process.stderr.write("\n");
|
|
6657
|
+
rl.close();
|
|
6658
|
+
resolve(input.trim());
|
|
6659
|
+
} else if (c === "") {
|
|
6660
|
+
process.stdin.setRawMode(false);
|
|
6661
|
+
rl.close();
|
|
6662
|
+
process.exit(0);
|
|
6663
|
+
} else if (c === "\x7F" || c === "\b") {
|
|
6664
|
+
input = input.slice(0, -1);
|
|
6665
|
+
} else {
|
|
6666
|
+
input += c;
|
|
6667
|
+
}
|
|
6668
|
+
};
|
|
6669
|
+
process.stdin.on("data", onData);
|
|
6670
|
+
});
|
|
6671
|
+
}
|
|
6672
|
+
function detectSecretType(secret) {
|
|
6673
|
+
const words = secret.split(/\s+/);
|
|
6674
|
+
if (words.length >= 12 && words.length <= 24 && validateMnemonic(secret, english2)) {
|
|
6675
|
+
return "mnemonic";
|
|
6676
|
+
}
|
|
6677
|
+
return "key";
|
|
6678
|
+
}
|
|
6575
6679
|
var walletImport = createTool(walletImportSchema, async (params) => {
|
|
6576
6680
|
if (params.mnemonic && params.key) {
|
|
6577
6681
|
throw new Error("Provide either --mnemonic or --key, not both.");
|
|
6578
6682
|
}
|
|
6579
|
-
|
|
6580
|
-
|
|
6683
|
+
let mnemonic = params.mnemonic;
|
|
6684
|
+
let key = params.key;
|
|
6685
|
+
if (!mnemonic && !key) {
|
|
6686
|
+
const secret = await readSecret("Paste your mnemonic or private key (hidden): ");
|
|
6687
|
+
if (!secret) {
|
|
6688
|
+
throw new Error("No input provided.");
|
|
6689
|
+
}
|
|
6690
|
+
const type = detectSecretType(secret);
|
|
6691
|
+
if (type === "mnemonic") {
|
|
6692
|
+
mnemonic = secret;
|
|
6693
|
+
} else {
|
|
6694
|
+
key = secret;
|
|
6695
|
+
}
|
|
6696
|
+
}
|
|
6697
|
+
if (mnemonic) {
|
|
6698
|
+
const trimmed = mnemonic.trim().toLowerCase();
|
|
6581
6699
|
if (!validateMnemonic(trimmed, english2)) {
|
|
6582
6700
|
throw new Error("Invalid BIP39 mnemonic.");
|
|
6583
6701
|
}
|
|
@@ -6592,20 +6710,20 @@ var walletImport = createTool(walletImportSchema, async (params) => {
|
|
|
6592
6710
|
return { name: params.name, type: "hd", addresses };
|
|
6593
6711
|
}
|
|
6594
6712
|
const chain = params.chain ? KEY_CHAIN_MAP[params.chain] : "solana";
|
|
6595
|
-
const
|
|
6713
|
+
const keyValue = key ?? "";
|
|
6596
6714
|
let address;
|
|
6597
6715
|
let cleanKey;
|
|
6598
6716
|
if (chain === "solana") {
|
|
6599
6717
|
try {
|
|
6600
|
-
const secretKeyBytes = bs58.decode(
|
|
6718
|
+
const secretKeyBytes = bs58.decode(keyValue);
|
|
6601
6719
|
const keypair = Keypair.fromSecretKey(secretKeyBytes);
|
|
6602
6720
|
address = keypair.publicKey.toBase58();
|
|
6603
|
-
cleanKey =
|
|
6721
|
+
cleanKey = keyValue;
|
|
6604
6722
|
} catch {
|
|
6605
6723
|
throw new Error("Invalid Solana private key. Expected base58-encoded secret key.");
|
|
6606
6724
|
}
|
|
6607
6725
|
} else if (chain === "ethereum") {
|
|
6608
|
-
cleanKey =
|
|
6726
|
+
cleanKey = keyValue.startsWith("0x") ? keyValue.slice(2) : keyValue;
|
|
6609
6727
|
if (!/^[0-9a-fA-F]{64}$/.test(cleanKey)) {
|
|
6610
6728
|
throw new Error("Invalid EVM private key. Expected 64-character hex string.");
|
|
6611
6729
|
}
|
|
@@ -6685,7 +6803,7 @@ var walletDeleteSchema = defineToolSchema({
|
|
|
6685
6803
|
var walletDelete = createTool(walletDeleteSchema, async (params) => {
|
|
6686
6804
|
if (!params.confirm) {
|
|
6687
6805
|
throw new Error(
|
|
6688
|
-
"
|
|
6806
|
+
"Back up your wallet before deleting! Run `mp wallet export " + params.wallet + "` to save your recovery phrase, then re-run with --confirm to permanently delete."
|
|
6689
6807
|
);
|
|
6690
6808
|
}
|
|
6691
6809
|
const wallet = findWalletOrThrow(params.wallet);
|
|
@@ -7170,32 +7288,11 @@ var skillInstall = createTool(skillInstallSchema, async (params) => {
|
|
|
7170
7288
|
return installSkills(params.force, params.dir ?? void 0);
|
|
7171
7289
|
});
|
|
7172
7290
|
|
|
7173
|
-
// src/tools/token/
|
|
7291
|
+
// src/tools/token/bridge/tool.ts
|
|
7174
7292
|
import { encodeFunctionData } from "viem";
|
|
7175
7293
|
|
|
7176
|
-
// src/tools/token/
|
|
7294
|
+
// src/tools/token/bridge/schema.ts
|
|
7177
7295
|
import { z as z15 } from "zod";
|
|
7178
|
-
var swapOutputSchema = z15.object({
|
|
7179
|
-
signature: z15.string().describe("Transaction hash/signature"),
|
|
7180
|
-
message: z15.string().describe("Human-readable swap description")
|
|
7181
|
-
});
|
|
7182
|
-
var tokenSwapSchema = defineToolSchema({
|
|
7183
|
-
name: "token_swap",
|
|
7184
|
-
description: "Swap tokens on the same chain. Builds, signs locally, broadcasts, and registers.",
|
|
7185
|
-
input: z15.object({
|
|
7186
|
-
wallet: z15.string().describe("Local wallet name to sign with"),
|
|
7187
|
-
chain: chainSchema.describe("Chain to swap on"),
|
|
7188
|
-
from: z15.object({
|
|
7189
|
-
token: z15.string().describe("Input token address (selling)"),
|
|
7190
|
-
amount: z15.coerce.number().nullable().describe("Amount to sell (exact-in). Null for exact-out.")
|
|
7191
|
-
}),
|
|
7192
|
-
to: z15.object({
|
|
7193
|
-
token: z15.string().describe("Output token address (buying)"),
|
|
7194
|
-
amount: z15.coerce.number().nullable().describe("Amount to receive (exact-out). Null for exact-in.")
|
|
7195
|
-
})
|
|
7196
|
-
}),
|
|
7197
|
-
output: swapOutputSchema
|
|
7198
|
-
});
|
|
7199
7296
|
var tokenBridgeSchema = defineToolSchema({
|
|
7200
7297
|
name: "token_bridge",
|
|
7201
7298
|
description: "Bridge tokens across chains. Builds, signs locally, broadcasts, and registers.",
|
|
@@ -7213,10 +7310,13 @@ var tokenBridgeSchema = defineToolSchema({
|
|
|
7213
7310
|
amount: z15.coerce.number().nullable().describe("Amount to receive (exact-out). Null for exact-in.")
|
|
7214
7311
|
})
|
|
7215
7312
|
}),
|
|
7216
|
-
output:
|
|
7313
|
+
output: z15.object({
|
|
7314
|
+
signature: z15.string().describe("Transaction hash/signature"),
|
|
7315
|
+
message: z15.string().describe("Human-readable bridge description")
|
|
7316
|
+
})
|
|
7217
7317
|
});
|
|
7218
7318
|
|
|
7219
|
-
// src/tools/token/
|
|
7319
|
+
// src/tools/token/bridge/tool.ts
|
|
7220
7320
|
var ERC20_APPROVE_ABI = [
|
|
7221
7321
|
{
|
|
7222
7322
|
name: "approve",
|
|
@@ -7281,7 +7381,19 @@ var tokenBridge = createTool(tokenBridgeSchema, async (params) => {
|
|
|
7281
7381
|
if (!approvalResult.signature) {
|
|
7282
7382
|
throw new Error(`Approval failed: ${approvalResult.message}`);
|
|
7283
7383
|
}
|
|
7284
|
-
|
|
7384
|
+
process.stderr.write("Waiting for approval confirmation...\n");
|
|
7385
|
+
for (let i = 0; i < 30; i++) {
|
|
7386
|
+
await new Promise((r) => setTimeout(r, 2e3));
|
|
7387
|
+
try {
|
|
7388
|
+
const rebuilt = await callRemoteTool(baseUrl, "swaps_transaction_build", buildParams);
|
|
7389
|
+
if (!rebuilt.requiresApproval) {
|
|
7390
|
+
buildResult = rebuilt;
|
|
7391
|
+
break;
|
|
7392
|
+
}
|
|
7393
|
+
} catch {
|
|
7394
|
+
}
|
|
7395
|
+
if (i === 29) throw new Error("Approval not confirmed after 60 seconds.");
|
|
7396
|
+
}
|
|
7285
7397
|
}
|
|
7286
7398
|
const txPayload = "base64" in buildResult.transaction ? buildResult.transaction.base64 : JSON.stringify(buildResult.transaction);
|
|
7287
7399
|
const { transaction: signedTransaction } = await transactionSign.handler({
|
|
@@ -7297,17 +7409,41 @@ var tokenBridge = createTool(tokenBridgeSchema, async (params) => {
|
|
|
7297
7409
|
if (!sendResult.signature) {
|
|
7298
7410
|
throw new Error(`Transaction send failed: ${sendResult.message}`);
|
|
7299
7411
|
}
|
|
7300
|
-
const signature = sendResult.signature;
|
|
7301
7412
|
try {
|
|
7302
7413
|
await callRemoteTool(baseUrl, "transaction_register", {
|
|
7303
7414
|
transactionId: buildResult.transactionId,
|
|
7304
|
-
transactionHash: signature,
|
|
7415
|
+
transactionHash: sendResult.signature,
|
|
7305
7416
|
chain: params.from.chain
|
|
7306
7417
|
});
|
|
7307
7418
|
} catch {
|
|
7308
7419
|
}
|
|
7309
|
-
return { signature, message: buildResult.message };
|
|
7420
|
+
return { signature: sendResult.signature, message: buildResult.message };
|
|
7310
7421
|
});
|
|
7422
|
+
|
|
7423
|
+
// src/tools/token/swap/schema.ts
|
|
7424
|
+
import { z as z16 } from "zod";
|
|
7425
|
+
var tokenSwapSchema = defineToolSchema({
|
|
7426
|
+
name: "token_swap",
|
|
7427
|
+
description: "Swap tokens on the same chain. Builds, signs locally, broadcasts, and registers.",
|
|
7428
|
+
input: z16.object({
|
|
7429
|
+
wallet: z16.string().describe("Local wallet name to sign with"),
|
|
7430
|
+
chain: chainSchema.describe("Chain to swap on"),
|
|
7431
|
+
from: z16.object({
|
|
7432
|
+
token: z16.string().describe("Input token address (selling)"),
|
|
7433
|
+
amount: z16.coerce.number().nullable().describe("Amount to sell (exact-in). Null for exact-out.")
|
|
7434
|
+
}),
|
|
7435
|
+
to: z16.object({
|
|
7436
|
+
token: z16.string().describe("Output token address (buying)"),
|
|
7437
|
+
amount: z16.coerce.number().nullable().describe("Amount to receive (exact-out). Null for exact-in.")
|
|
7438
|
+
})
|
|
7439
|
+
}),
|
|
7440
|
+
output: z16.object({
|
|
7441
|
+
signature: z16.string().describe("Transaction hash/signature"),
|
|
7442
|
+
message: z16.string().describe("Human-readable swap description")
|
|
7443
|
+
})
|
|
7444
|
+
});
|
|
7445
|
+
|
|
7446
|
+
// src/tools/token/swap/tool.ts
|
|
7311
7447
|
var tokenSwap = createTool(tokenSwapSchema, async (params) => {
|
|
7312
7448
|
return tokenBridge.handler({
|
|
7313
7449
|
from: { wallet: params.wallet, chain: params.chain, token: params.from.token, amount: params.from.amount },
|
|
@@ -7316,20 +7452,20 @@ var tokenSwap = createTool(tokenSwapSchema, async (params) => {
|
|
|
7316
7452
|
});
|
|
7317
7453
|
|
|
7318
7454
|
// src/tools/token/transfer/schema.ts
|
|
7319
|
-
import { z as
|
|
7455
|
+
import { z as z17 } from "zod";
|
|
7320
7456
|
var tokenTransferSchema = defineToolSchema({
|
|
7321
7457
|
name: "token_transfer",
|
|
7322
7458
|
description: "Transfer tokens to another wallet on the same chain. Builds, signs locally, and broadcasts.",
|
|
7323
|
-
input:
|
|
7324
|
-
wallet:
|
|
7459
|
+
input: z17.object({
|
|
7460
|
+
wallet: z17.string().describe("Local wallet name to sign with"),
|
|
7325
7461
|
chain: chainSchema.describe("Chain to transfer on"),
|
|
7326
|
-
token:
|
|
7327
|
-
amount:
|
|
7328
|
-
to:
|
|
7462
|
+
token: z17.string().describe("Token address to transfer"),
|
|
7463
|
+
amount: z17.coerce.number().describe("Amount to transfer"),
|
|
7464
|
+
to: z17.string().describe("Recipient wallet name or address")
|
|
7329
7465
|
}),
|
|
7330
|
-
output:
|
|
7331
|
-
signature:
|
|
7332
|
-
message:
|
|
7466
|
+
output: z17.object({
|
|
7467
|
+
signature: z17.string().describe("Transaction hash/signature"),
|
|
7468
|
+
message: z17.string().describe("Human-readable transfer description")
|
|
7333
7469
|
})
|
|
7334
7470
|
});
|
|
7335
7471
|
|
|
@@ -7384,13 +7520,13 @@ import { createPublicClient as createPublicClient2, http as http2 } from "viem";
|
|
|
7384
7520
|
import * as viemChains2 from "viem/chains";
|
|
7385
7521
|
|
|
7386
7522
|
// src/tools/x402/request/schema.ts
|
|
7387
|
-
import { z as
|
|
7523
|
+
import { z as z18 } from "zod";
|
|
7388
7524
|
var x402RequestSchema = defineToolSchema({
|
|
7389
7525
|
name: "x402_request",
|
|
7390
7526
|
description: "Make an HTTP request to an x402-protected endpoint. Automatically handles payment when a 402 Payment Required response is received, signing the payment transaction with the local wallet.",
|
|
7391
|
-
input:
|
|
7392
|
-
method:
|
|
7393
|
-
url:
|
|
7527
|
+
input: z18.object({
|
|
7528
|
+
method: z18.enum(["GET", "POST", "PUT", "PATCH", "DELETE"]).describe("HTTP method"),
|
|
7529
|
+
url: z18.string().url().refine((u) => u.startsWith("https://"), { message: "URL must use HTTPS" }).refine(
|
|
7394
7530
|
(u) => {
|
|
7395
7531
|
try {
|
|
7396
7532
|
const host = new URL(u).hostname;
|
|
@@ -7403,15 +7539,15 @@ var x402RequestSchema = defineToolSchema({
|
|
|
7403
7539
|
).describe(
|
|
7404
7540
|
"Full HTTPS URL of the x402-protected endpoint (e.g., 'https://agents.moonpay.com/api/x402/tools/market_digest_retrieve')"
|
|
7405
7541
|
),
|
|
7406
|
-
body:
|
|
7407
|
-
params:
|
|
7408
|
-
wallet:
|
|
7409
|
-
chain:
|
|
7542
|
+
body: z18.record(z18.any()).nullable().describe("Request body (for POST, PUT, PATCH)"),
|
|
7543
|
+
params: z18.record(z18.any()).nullable().describe("Query parameters"),
|
|
7544
|
+
wallet: z18.string().describe("Wallet name or address to pay with"),
|
|
7545
|
+
chain: z18.enum(["solana", "base", "ethereum", "arbitrum", "polygon", "optimism"]).nullable().describe("Chain to pay from (default: solana). Use an EVM chain like 'base' to pay with an EVM wallet.")
|
|
7410
7546
|
}),
|
|
7411
|
-
output:
|
|
7412
|
-
status:
|
|
7413
|
-
data:
|
|
7414
|
-
headers:
|
|
7547
|
+
output: z18.object({
|
|
7548
|
+
status: z18.number().describe("HTTP status code"),
|
|
7549
|
+
data: z18.any().describe("Response data"),
|
|
7550
|
+
headers: z18.record(z18.any()).describe("Response headers")
|
|
7415
7551
|
})
|
|
7416
7552
|
});
|
|
7417
7553
|
|
|
@@ -7503,18 +7639,18 @@ var x402Request = createTool(
|
|
|
7503
7639
|
);
|
|
7504
7640
|
|
|
7505
7641
|
// src/tools/virtual-account/wallet/register/schema.ts
|
|
7506
|
-
import { z as
|
|
7642
|
+
import { z as z19 } from "zod";
|
|
7507
7643
|
var virtualAccountWalletRegisterSchema = defineToolSchema({
|
|
7508
7644
|
name: "virtual-account_wallet_register",
|
|
7509
7645
|
description: "Register a local wallet with your virtual account. Creates the verification message, signs it locally, and registers in one step.",
|
|
7510
|
-
input:
|
|
7511
|
-
wallet:
|
|
7646
|
+
input: z19.object({
|
|
7647
|
+
wallet: z19.string().describe("Local wallet name"),
|
|
7512
7648
|
chain: chainSchema.describe("Chain to register (solana, ethereum, etc.)")
|
|
7513
7649
|
}),
|
|
7514
|
-
output:
|
|
7515
|
-
success:
|
|
7516
|
-
address:
|
|
7517
|
-
chain:
|
|
7650
|
+
output: z19.object({
|
|
7651
|
+
success: z19.literal(true),
|
|
7652
|
+
address: z19.string().describe("Registered wallet address"),
|
|
7653
|
+
chain: z19.string().describe("Chain registered on")
|
|
7518
7654
|
})
|
|
7519
7655
|
});
|
|
7520
7656
|
|
|
@@ -7556,14 +7692,14 @@ import * as os3 from "os";
|
|
|
7556
7692
|
import * as path3 from "path";
|
|
7557
7693
|
|
|
7558
7694
|
// src/tools/consent/accept/schema.ts
|
|
7559
|
-
import { z as
|
|
7695
|
+
import { z as z20 } from "zod";
|
|
7560
7696
|
var consentAcceptSchema = defineToolSchema({
|
|
7561
7697
|
name: "consent_accept",
|
|
7562
7698
|
description: "Accept the MoonPay Terms of Service and Privacy Policy. Required before using any CLI command.",
|
|
7563
|
-
input:
|
|
7564
|
-
output:
|
|
7565
|
-
tosVersion:
|
|
7566
|
-
acceptedAt:
|
|
7699
|
+
input: z20.object({}),
|
|
7700
|
+
output: z20.object({
|
|
7701
|
+
tosVersion: z20.string(),
|
|
7702
|
+
acceptedAt: z20.string()
|
|
7567
7703
|
})
|
|
7568
7704
|
});
|
|
7569
7705
|
|
|
@@ -7587,41 +7723,45 @@ var consentAccept = createTool(consentAcceptSchema, async () => {
|
|
|
7587
7723
|
});
|
|
7588
7724
|
|
|
7589
7725
|
// src/tools/login/schema.ts
|
|
7590
|
-
import { z as
|
|
7726
|
+
import { z as z21 } from "zod";
|
|
7591
7727
|
var loginSchema = defineToolSchema({
|
|
7592
7728
|
name: "login",
|
|
7593
7729
|
description: "Send a login verification code to your email.",
|
|
7594
|
-
input:
|
|
7595
|
-
email:
|
|
7730
|
+
input: z21.object({
|
|
7731
|
+
email: z21.string().describe("Email address")
|
|
7596
7732
|
}),
|
|
7597
|
-
output:
|
|
7598
|
-
email:
|
|
7599
|
-
message:
|
|
7733
|
+
output: z21.object({
|
|
7734
|
+
email: z21.string(),
|
|
7735
|
+
message: z21.string()
|
|
7600
7736
|
})
|
|
7601
7737
|
});
|
|
7602
7738
|
|
|
7603
7739
|
// src/tools/login/tool.ts
|
|
7604
7740
|
var login = createTool(loginSchema, async (params) => {
|
|
7605
7741
|
const { baseUrl } = getConfigOrDefault();
|
|
7606
|
-
|
|
7742
|
+
const url = `${baseUrl}/login?email=${encodeURIComponent(params.email)}`;
|
|
7607
7743
|
return {
|
|
7608
7744
|
email: params.email,
|
|
7609
|
-
message: `
|
|
7745
|
+
message: `Open this link to verify:
|
|
7746
|
+
|
|
7747
|
+
${url}
|
|
7748
|
+
|
|
7749
|
+
Then run: mp verify --email ${params.email} --code <code>`
|
|
7610
7750
|
};
|
|
7611
7751
|
});
|
|
7612
7752
|
|
|
7613
7753
|
// src/tools/verify/schema.ts
|
|
7614
|
-
import { z as
|
|
7754
|
+
import { z as z22 } from "zod";
|
|
7615
7755
|
var verifySchema = defineToolSchema({
|
|
7616
7756
|
name: "verify",
|
|
7617
7757
|
description: "Verify login code and store encrypted credentials.",
|
|
7618
|
-
input:
|
|
7619
|
-
email:
|
|
7620
|
-
code:
|
|
7758
|
+
input: z22.object({
|
|
7759
|
+
email: z22.string().describe("Email address"),
|
|
7760
|
+
code: z22.string().describe("Verification code")
|
|
7621
7761
|
}),
|
|
7622
|
-
output:
|
|
7623
|
-
email:
|
|
7624
|
-
message:
|
|
7762
|
+
output: z22.object({
|
|
7763
|
+
email: z22.string(),
|
|
7764
|
+
message: z22.string()
|
|
7625
7765
|
})
|
|
7626
7766
|
});
|
|
7627
7767
|
|
|
@@ -7643,14 +7783,14 @@ var verify = createTool(verifySchema, async (params) => {
|
|
|
7643
7783
|
});
|
|
7644
7784
|
|
|
7645
7785
|
// src/tools/logout/schema.ts
|
|
7646
|
-
import { z as
|
|
7786
|
+
import { z as z23 } from "zod";
|
|
7647
7787
|
var logoutSchema = defineToolSchema({
|
|
7648
7788
|
name: "logout",
|
|
7649
7789
|
description: "Log out and clear stored credentials.",
|
|
7650
|
-
input:
|
|
7651
|
-
output:
|
|
7652
|
-
success:
|
|
7653
|
-
message:
|
|
7790
|
+
input: z23.object({}),
|
|
7791
|
+
output: z23.object({
|
|
7792
|
+
success: z23.literal(true),
|
|
7793
|
+
message: z23.string()
|
|
7654
7794
|
})
|
|
7655
7795
|
});
|
|
7656
7796
|
|
|
@@ -7664,15 +7804,15 @@ var logout = createTool(logoutSchema, async () => {
|
|
|
7664
7804
|
import { createRequire } from "module";
|
|
7665
7805
|
|
|
7666
7806
|
// src/tools/qr/schema.ts
|
|
7667
|
-
import { z as
|
|
7807
|
+
import { z as z24 } from "zod";
|
|
7668
7808
|
var qrGenerateSchema = defineToolSchema({
|
|
7669
7809
|
name: "qr_generate",
|
|
7670
7810
|
description: "Display a QR code in the terminal. Pass any text \u2014 wallet address, URL, token address, etc.",
|
|
7671
|
-
input:
|
|
7672
|
-
value:
|
|
7811
|
+
input: z24.object({
|
|
7812
|
+
value: z24.string().describe("Text to encode as a QR code")
|
|
7673
7813
|
}),
|
|
7674
|
-
output:
|
|
7675
|
-
value:
|
|
7814
|
+
output: z24.object({
|
|
7815
|
+
value: z24.string()
|
|
7676
7816
|
})
|
|
7677
7817
|
});
|
|
7678
7818
|
|
|
@@ -7723,4 +7863,4 @@ export {
|
|
|
7723
7863
|
consentCheck,
|
|
7724
7864
|
LOCAL_TOOLS
|
|
7725
7865
|
};
|
|
7726
|
-
//# sourceMappingURL=chunk-
|
|
7866
|
+
//# sourceMappingURL=chunk-7KJP7F5Q.js.map
|