run402-mcp 1.27.0 → 1.29.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.
Files changed (64) hide show
  1. package/README.md +15 -0
  2. package/dist/index.js +34 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/tools/buy-email-pack.d.ts +16 -0
  5. package/dist/tools/buy-email-pack.d.ts.map +1 -0
  6. package/dist/tools/buy-email-pack.js +34 -0
  7. package/dist/tools/buy-email-pack.js.map +1 -0
  8. package/dist/tools/contract-call.d.ts +30 -0
  9. package/dist/tools/contract-call.d.ts.map +1 -0
  10. package/dist/tools/contract-call.js +38 -0
  11. package/dist/tools/contract-call.js.map +1 -0
  12. package/dist/tools/contract-read.d.ts +22 -0
  13. package/dist/tools/contract-read.d.ts.map +1 -0
  14. package/dist/tools/contract-read.js +27 -0
  15. package/dist/tools/contract-read.js.map +1 -0
  16. package/dist/tools/create-email-billing-account.d.ts +14 -0
  17. package/dist/tools/create-email-billing-account.d.ts.map +1 -0
  18. package/dist/tools/create-email-billing-account.js +22 -0
  19. package/dist/tools/create-email-billing-account.js.map +1 -0
  20. package/dist/tools/delete-contract-wallet.d.ts +16 -0
  21. package/dist/tools/delete-contract-wallet.d.ts.map +1 -0
  22. package/dist/tools/delete-contract-wallet.js +24 -0
  23. package/dist/tools/delete-contract-wallet.js.map +1 -0
  24. package/dist/tools/drain-contract-wallet.d.ts +18 -0
  25. package/dist/tools/drain-contract-wallet.d.ts.map +1 -0
  26. package/dist/tools/drain-contract-wallet.js +26 -0
  27. package/dist/tools/drain-contract-wallet.js.map +1 -0
  28. package/dist/tools/get-contract-call-status.d.ts +16 -0
  29. package/dist/tools/get-contract-call-status.d.ts.map +1 -0
  30. package/dist/tools/get-contract-call-status.js +21 -0
  31. package/dist/tools/get-contract-call-status.js.map +1 -0
  32. package/dist/tools/get-contract-wallet.d.ts +16 -0
  33. package/dist/tools/get-contract-wallet.d.ts.map +1 -0
  34. package/dist/tools/get-contract-wallet.js +21 -0
  35. package/dist/tools/get-contract-wallet.js.map +1 -0
  36. package/dist/tools/link-wallet-to-account.d.ts +16 -0
  37. package/dist/tools/link-wallet-to-account.d.ts.map +1 -0
  38. package/dist/tools/link-wallet-to-account.js +22 -0
  39. package/dist/tools/link-wallet-to-account.js.map +1 -0
  40. package/dist/tools/list-contract-wallets.d.ts +14 -0
  41. package/dist/tools/list-contract-wallets.d.ts.map +1 -0
  42. package/dist/tools/list-contract-wallets.js +20 -0
  43. package/dist/tools/list-contract-wallets.js.map +1 -0
  44. package/dist/tools/provision-contract-wallet.d.ts +18 -0
  45. package/dist/tools/provision-contract-wallet.d.ts.map +1 -0
  46. package/dist/tools/provision-contract-wallet.js +26 -0
  47. package/dist/tools/provision-contract-wallet.js.map +1 -0
  48. package/dist/tools/set-auto-recharge.d.ts +18 -0
  49. package/dist/tools/set-auto-recharge.d.ts.map +1 -0
  50. package/dist/tools/set-auto-recharge.js +29 -0
  51. package/dist/tools/set-auto-recharge.js.map +1 -0
  52. package/dist/tools/set-low-balance-alert.d.ts +18 -0
  53. package/dist/tools/set-low-balance-alert.d.ts.map +1 -0
  54. package/dist/tools/set-low-balance-alert.js +23 -0
  55. package/dist/tools/set-low-balance-alert.js.map +1 -0
  56. package/dist/tools/set-recovery-address.d.ts +18 -0
  57. package/dist/tools/set-recovery-address.d.ts.map +1 -0
  58. package/dist/tools/set-recovery-address.js +23 -0
  59. package/dist/tools/set-recovery-address.js.map +1 -0
  60. package/dist/tools/tier-checkout.d.ts +18 -0
  61. package/dist/tools/tier-checkout.d.ts.map +1 -0
  62. package/dist/tools/tier-checkout.js +35 -0
  63. package/dist/tools/tier-checkout.js.map +1 -0
  64. package/package.json +1 -1
package/README.md CHANGED
@@ -90,6 +90,21 @@ npx run402-mcp
90
90
  | `register_sender_domain` | Register a custom email sending domain (DKIM verification). |
91
91
  | `sender_domain_status` | Check sender domain verification status. |
92
92
  | `remove_sender_domain` | Remove a custom sender domain. |
93
+ | `create_email_billing_account` | Create a Stripe-only billing account by email (no wallet required). |
94
+ | `link_wallet_to_account` | Link a wallet to an email account for hybrid Stripe + x402 access. |
95
+ | `tier_checkout` | Subscribe/renew/upgrade to a tier via Stripe (alternative to x402). |
96
+ | `buy_email_pack` | Buy a $5 email pack (10,000 emails, never expire). |
97
+ | `set_auto_recharge` | Enable/disable auto-recharge for email packs when credits run low. |
98
+ | `provision_contract_wallet` | Provision an AWS KMS-backed Ethereum wallet ($0.04/day rental, $1.20 prepay required). |
99
+ | `get_contract_wallet` | Get a KMS contract wallet's metadata + live native balance. |
100
+ | `list_contract_wallets` | List KMS contract wallets owned by the project. |
101
+ | `set_recovery_address` | Set/clear the optional recovery address for auto-drain on day-90 deletion. |
102
+ | `set_low_balance_alert` | Set the low-balance alert threshold (in wei). |
103
+ | `contract_call` | Submit a smart-contract write call (chain gas + $0.000005 KMS sign fee). |
104
+ | `contract_read` | Read-only smart-contract call (free, no signing). |
105
+ | `get_contract_call_status` | Look up a contract call by ID — status, gas, receipt. |
106
+ | `drain_contract_wallet` | Drain native balance to a destination address (works on suspended wallets). |
107
+ | `delete_contract_wallet` | Schedule the KMS key for deletion (refused if balance ≥ dust). |
93
108
 
94
109
  ## Client Configuration
95
110
 
package/dist/index.js CHANGED
@@ -71,6 +71,12 @@ import { authSettingsSchema, handleAuthSettings } from "./tools/auth-settings.js
71
71
  import { registerSenderDomainSchema, handleRegisterSenderDomain } from "./tools/register-sender-domain.js";
72
72
  import { senderDomainStatusSchema, handleSenderDomainStatus } from "./tools/sender-domain-status.js";
73
73
  import { removeSenderDomainSchema, handleRemoveSenderDomain } from "./tools/remove-sender-domain.js";
74
+ // New tools — email billing accounts + Stripe tier checkout + email packs
75
+ import { createEmailBillingAccountSchema, handleCreateEmailBillingAccount } from "./tools/create-email-billing-account.js";
76
+ import { linkWalletToAccountSchema, handleLinkWalletToAccount } from "./tools/link-wallet-to-account.js";
77
+ import { tierCheckoutSchema, handleTierCheckout } from "./tools/tier-checkout.js";
78
+ import { buyEmailPackSchema, handleBuyEmailPack } from "./tools/buy-email-pack.js";
79
+ import { setAutoRechargeSchema, handleSetAutoRecharge } from "./tools/set-auto-recharge.js";
74
80
  // New tools — AI
75
81
  import { aiTranslateSchema, handleAiTranslate } from "./tools/ai-translate.js";
76
82
  import { aiModerateSchema, handleAiModerate } from "./tools/ai-moderate.js";
@@ -90,6 +96,17 @@ import { statusSchema, handleStatus } from "./tools/status.js";
90
96
  import { projectInfoSchema, handleProjectInfo } from "./tools/project-info.js";
91
97
  import { projectUseSchema, handleProjectUse } from "./tools/project-use.js";
92
98
  import { projectKeysSchema, handleProjectKeys } from "./tools/project-keys.js";
99
+ // New tools — KMS contract wallets
100
+ import { provisionContractWalletSchema, handleProvisionContractWallet } from "./tools/provision-contract-wallet.js";
101
+ import { getContractWalletSchema, handleGetContractWallet } from "./tools/get-contract-wallet.js";
102
+ import { listContractWalletsSchema, handleListContractWallets } from "./tools/list-contract-wallets.js";
103
+ import { setRecoveryAddressSchema, handleSetRecoveryAddress } from "./tools/set-recovery-address.js";
104
+ import { setLowBalanceAlertSchema, handleSetLowBalanceAlert } from "./tools/set-low-balance-alert.js";
105
+ import { contractCallSchema, handleContractCall } from "./tools/contract-call.js";
106
+ import { contractReadSchema, handleContractRead } from "./tools/contract-read.js";
107
+ import { getContractCallStatusSchema, handleGetContractCallStatus } from "./tools/get-contract-call-status.js";
108
+ import { drainContractWalletSchema, handleDrainContractWallet } from "./tools/drain-contract-wallet.js";
109
+ import { deleteContractWalletSchema, handleDeleteContractWallet } from "./tools/delete-contract-wallet.js";
93
110
  const server = new McpServer({
94
111
  name: "run402",
95
112
  version: "1.3.0",
@@ -191,6 +208,23 @@ server.tool("auth_settings", "Update project auth settings. Currently supports a
191
208
  server.tool("register_sender_domain", "Register a custom email sending domain for a project. Returns DNS records (DKIM CNAMEs + SPF/DMARC) to add. Once verified, email sends from your domain instead of mail.run402.com.", registerSenderDomainSchema, async (args) => handleRegisterSenderDomain(args));
192
209
  server.tool("sender_domain_status", "Check the verification status of a project's custom sender domain. Polls SES for pending domains.", senderDomainStatusSchema, async (args) => handleSenderDomainStatus(args));
193
210
  server.tool("remove_sender_domain", "Remove a project's custom sender domain. Email reverts to sending from mail.run402.com.", removeSenderDomainSchema, async (args) => handleRemoveSenderDomain(args));
211
+ // --- Email billing accounts + Stripe tier checkout + email packs ---
212
+ server.tool("create_email_billing_account", "Create an email-based billing account (Stripe-only, no wallet required). Sends a verification email. Idempotent — duplicate emails return the existing account.", createEmailBillingAccountSchema, async (args) => handleCreateEmailBillingAccount(args));
213
+ server.tool("link_wallet_to_account", "Link a wallet to an existing email billing account, enabling hybrid Stripe + x402 access. Fails if the wallet is already linked elsewhere.", linkWalletToAccountSchema, async (args) => handleLinkWalletToAccount(args));
214
+ server.tool("tier_checkout", "Subscribe/renew/upgrade to a run402 tier via Stripe credit card. Alternative to x402 on-chain payment. Supports wallet or email identifier. Returns a Stripe checkout URL.", tierCheckoutSchema, async (args) => handleTierCheckout(args));
215
+ server.tool("buy_email_pack", "Buy a $5 email pack (10,000 emails, never expire). Pack credits activate when tier daily limit is exhausted AND a custom sender domain is verified. Returns a Stripe checkout URL.", buyEmailPackSchema, async (args) => handleBuyEmailPack(args));
216
+ server.tool("set_auto_recharge", "Enable or disable automatic email pack repurchase when credits drop below a threshold. Requires a saved Stripe payment method.", setAutoRechargeSchema, async (args) => handleSetAutoRecharge(args));
217
+ // ─── KMS contract wallets ──────────────────────────────────────────────────
218
+ server.tool("provision_contract_wallet", "Provision an AWS KMS-backed Ethereum wallet for signing smart-contract write transactions. Private keys never leave KMS. Cost: $0.04/day rental ($1.20/month) plus $0.000005 per contract call. Requires $1.20 in cash credit at creation (30 days of rent). Non-custodial.", provisionContractWalletSchema, async (args) => handleProvisionContractWallet(args));
219
+ server.tool("get_contract_wallet", "Get a KMS contract wallet's metadata + live native-token balance + USD-micros (Chainlink-cached price).", getContractWalletSchema, async (args) => handleGetContractWallet(args));
220
+ server.tool("list_contract_wallets", "List all KMS contract wallets owned by the project, including deleted ones.", listContractWalletsSchema, async (args) => handleListContractWallets(args));
221
+ server.tool("set_recovery_address", "Set or clear the optional recovery address used for auto-drain on day-90 deletion of a KMS contract wallet.", setRecoveryAddressSchema, async (args) => handleSetRecoveryAddress(args));
222
+ server.tool("set_low_balance_alert", "Set the low-balance threshold (in wei) for a KMS contract wallet. Email alerts fire when the wallet's native balance drops below this threshold.", setLowBalanceAlertSchema, async (args) => handleSetLowBalanceAlert(args));
223
+ server.tool("contract_call", "Submit a smart-contract write call from a KMS wallet. The gateway encodes via viem, signs the digest via AWS KMS, and broadcasts. Idempotent on optional idempotency_key. Cost: chain gas at-cost + $0.000005 KMS sign fee per call.", contractCallSchema, async (args) => handleContractCall(args));
224
+ server.tool("contract_read", "Read-only smart-contract call (view/pure functions). No signing, no gas, no billing — pure RPC convenience.", contractReadSchema, async (args) => handleContractRead(args));
225
+ server.tool("get_contract_call_status", "Look up a previously submitted contract call by call_id. Returns lifecycle state (pending/confirmed/failed), block number, gas used, gas cost in USD-micros, receipt, and any error.", getContractCallStatusSchema, async (args) => handleGetContractCallStatus(args));
226
+ server.tool("drain_contract_wallet", "Drain a KMS contract wallet's entire native-token balance to a destination address. Works on suspended wallets — the safety valve. Cost: chain gas + $0.000005 KMS sign fee.", drainContractWalletSchema, async (args) => handleDrainContractWallet(args));
227
+ server.tool("delete_contract_wallet", "Schedule the KMS key for a contract wallet for deletion (7-day AWS minimum window). Refused if the wallet has on-chain balance ≥ dust — drain first.", deleteContractWalletSchema, async (args) => handleDeleteContractWallet(args));
194
228
  const transport = new StdioServerTransport();
195
229
  await server.connect(transport);
196
230
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const buyEmailPackSchema: {
3
+ email: z.ZodOptional<z.ZodString>;
4
+ wallet: z.ZodOptional<z.ZodString>;
5
+ };
6
+ export declare function handleBuyEmailPack(args: {
7
+ email?: string;
8
+ wallet?: string;
9
+ }): Promise<{
10
+ content: Array<{
11
+ type: "text";
12
+ text: string;
13
+ }>;
14
+ isError?: boolean;
15
+ }>;
16
+ //# sourceMappingURL=buy-email-pack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buy-email-pack.d.ts","sourceRoot":"","sources":["../../src/tools/buy-email-pack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,kBAAkB;;;CAG9B,CAAC;AAEF,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA0BjF"}
@@ -0,0 +1,34 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { formatApiError } from "../errors.js";
4
+ export const buyEmailPackSchema = {
5
+ email: z.string().optional().describe("Email address (for email-based accounts)"),
6
+ wallet: z.string().optional().describe("Wallet address (for wallet-based accounts)"),
7
+ };
8
+ export async function handleBuyEmailPack(args) {
9
+ if (!args.email && !args.wallet) {
10
+ return {
11
+ content: [{ type: "text", text: "Error: Provide either `email` or `wallet`." }],
12
+ isError: true,
13
+ };
14
+ }
15
+ const body = {};
16
+ if (args.wallet)
17
+ body.wallet = args.wallet;
18
+ else if (args.email)
19
+ body.email = args.email;
20
+ const res = await apiRequest(`/billing/v1/email-packs/checkout`, {
21
+ method: "POST",
22
+ body,
23
+ });
24
+ if (!res.ok)
25
+ return formatApiError(res, "creating email pack checkout");
26
+ const result = res.body;
27
+ return {
28
+ content: [{
29
+ type: "text",
30
+ text: `## Email Pack Checkout Created\n\n**\$5 = 10,000 emails** (never expire)\n\n- **Topup ID:** \`${result.topup_id}\`\n\n**Send your human to complete payment:**\n${result.checkout_url}\n\nOnce paid, credits will be added to the account. Note: pack credits can only be consumed when the project has a verified custom sender domain (see \`register_sender_domain\`).`,
31
+ }],
32
+ };
33
+ }
34
+ //# sourceMappingURL=buy-email-pack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buy-email-pack.js","sourceRoot":"","sources":["../../src/tools/buy-email-pack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACjF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;CACrF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAGxC;IACC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4CAA4C,EAAE,CAAC;YAC/E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,IAAI,IAAI,CAAC,MAAM;QAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SACtC,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAE7C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,kCAAkC,EAAE;QAC/D,MAAM,EAAE,MAAM;QACd,IAAI;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,8BAA8B,CAAC,CAAC;IAExE,MAAM,MAAM,GAAG,GAAG,CAAC,IAAkD,CAAC;IACtE,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,iGAAiG,MAAM,CAAC,QAAQ,mDAAmD,MAAM,CAAC,YAAY,qLAAqL;aAClX,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { z } from "zod";
2
+ export declare const contractCallSchema: {
3
+ project_id: z.ZodString;
4
+ wallet_id: z.ZodString;
5
+ chain: z.ZodEnum<["base-mainnet", "base-sepolia"]>;
6
+ contract_address: z.ZodString;
7
+ abi_fragment: z.ZodArray<z.ZodUnknown, "many">;
8
+ function_name: z.ZodString;
9
+ args: z.ZodArray<z.ZodUnknown, "many">;
10
+ value: z.ZodOptional<z.ZodString>;
11
+ idempotency_key: z.ZodOptional<z.ZodString>;
12
+ };
13
+ export declare function handleContractCall(args: {
14
+ project_id: string;
15
+ wallet_id: string;
16
+ chain: "base-mainnet" | "base-sepolia";
17
+ contract_address: string;
18
+ abi_fragment: unknown[];
19
+ function_name: string;
20
+ args: unknown[];
21
+ value?: string;
22
+ idempotency_key?: string;
23
+ }): Promise<{
24
+ content: Array<{
25
+ type: "text";
26
+ text: string;
27
+ }>;
28
+ isError?: boolean;
29
+ }>;
30
+ //# sourceMappingURL=contract-call.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-call.d.ts","sourceRoot":"","sources":["../../src/tools/contract-call.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,kBAAkB;;;;;;;;;;CAU9B,CAAC;AAEF,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,OAAO,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAiBrV"}
@@ -0,0 +1,38 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const contractCallSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ wallet_id: z.string().describe("The KMS contract wallet ID"),
8
+ chain: z.enum(["base-mainnet", "base-sepolia"]).describe("EVM chain"),
9
+ contract_address: z.string().describe("0x-prefixed contract address"),
10
+ abi_fragment: z.array(z.unknown()).describe("ABI fragment containing the function definition"),
11
+ function_name: z.string().describe("Function name to invoke"),
12
+ args: z.array(z.unknown()).describe("Function arguments (must match ABI)"),
13
+ value: z.string().optional().describe("Optional native-token value in wei (decimal string)"),
14
+ idempotency_key: z.string().optional().describe("Optional idempotency key — same key returns same call_id without re-broadcasting"),
15
+ };
16
+ export async function handleContractCall(args) {
17
+ const project = getProject(args.project_id);
18
+ if (!project)
19
+ return projectNotFound(args.project_id);
20
+ const headers = { Authorization: `Bearer ${project.service_key}` };
21
+ if (args.idempotency_key)
22
+ headers["Idempotency-Key"] = args.idempotency_key;
23
+ const body = {
24
+ wallet_id: args.wallet_id,
25
+ chain: args.chain,
26
+ contract_address: args.contract_address,
27
+ abi_fragment: args.abi_fragment,
28
+ function_name: args.function_name,
29
+ args: args.args,
30
+ };
31
+ if (args.value)
32
+ body.value = args.value;
33
+ const res = await apiRequest("/contracts/v1/call", { method: "POST", headers, body });
34
+ if (!res.ok)
35
+ return formatApiError(res, "submitting contract call");
36
+ return { content: [{ type: "text", text: "## Contract Call Submitted\n\n```json\n" + JSON.stringify(res.body, null, 2) + "\n```\n\n**Cost**: chain gas at-cost + $0.000005 KMS sign fee" }] };
37
+ }
38
+ //# sourceMappingURL=contract-call.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-call.js","sourceRoot":"","sources":["../../src/tools/contract-call.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC5D,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IACrE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACrE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAC9F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAC7D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IAC1E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IAC5F,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kFAAkF,CAAC;CACpI,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAA4N;IACnQ,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,OAAO,GAA2B,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,eAAe;QAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;IAC5E,MAAM,IAAI,GAA4B;QACpC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;IACF,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACtF,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;IACpE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yCAAyC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,+DAA+D,EAAE,CAAC,EAAE,CAAC;AAChM,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { z } from "zod";
2
+ export declare const contractReadSchema: {
3
+ chain: z.ZodEnum<["base-mainnet", "base-sepolia"]>;
4
+ contract_address: z.ZodString;
5
+ abi_fragment: z.ZodArray<z.ZodUnknown, "many">;
6
+ function_name: z.ZodString;
7
+ args: z.ZodArray<z.ZodUnknown, "many">;
8
+ };
9
+ export declare function handleContractRead(args: {
10
+ chain: "base-mainnet" | "base-sepolia";
11
+ contract_address: string;
12
+ abi_fragment: unknown[];
13
+ function_name: string;
14
+ args: unknown[];
15
+ }): Promise<{
16
+ content: Array<{
17
+ type: "text";
18
+ text: string;
19
+ }>;
20
+ isError?: boolean;
21
+ }>;
22
+ //# sourceMappingURL=contract-read.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-read.d.ts","sourceRoot":"","sources":["../../src/tools/contract-read.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,kBAAkB;;;;;;CAM9B,CAAC;AAEF,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,OAAO,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,EAAE,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAcpQ"}
@@ -0,0 +1,27 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { formatApiError } from "../errors.js";
4
+ export const contractReadSchema = {
5
+ chain: z.enum(["base-mainnet", "base-sepolia"]).describe("EVM chain"),
6
+ contract_address: z.string().describe("0x-prefixed contract address"),
7
+ abi_fragment: z.array(z.unknown()).describe("ABI fragment containing the view/pure function"),
8
+ function_name: z.string().describe("Function name"),
9
+ args: z.array(z.unknown()).describe("Function arguments"),
10
+ };
11
+ export async function handleContractRead(args) {
12
+ const res = await apiRequest("/contracts/v1/read", {
13
+ method: "POST",
14
+ headers: {},
15
+ body: {
16
+ chain: args.chain,
17
+ contract_address: args.contract_address,
18
+ abi_fragment: args.abi_fragment,
19
+ function_name: args.function_name,
20
+ args: args.args,
21
+ },
22
+ });
23
+ if (!res.ok)
24
+ return formatApiError(res, "reading contract");
25
+ return { content: [{ type: "text", text: "```json\n" + JSON.stringify(res.body, null, 2) + "\n```" }] };
26
+ }
27
+ //# sourceMappingURL=contract-read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-read.js","sourceRoot":"","sources":["../../src/tools/contract-read.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IACrE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACrE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAC7F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC1D,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAA2I;IAClL,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,oBAAoB,EAAE;QACjD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE;QACX,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB;KACF,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC5D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAC1G,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from "zod";
2
+ export declare const createEmailBillingAccountSchema: {
3
+ email: z.ZodString;
4
+ };
5
+ export declare function handleCreateEmailBillingAccount(args: {
6
+ email: string;
7
+ }): Promise<{
8
+ content: Array<{
9
+ type: "text";
10
+ text: string;
11
+ }>;
12
+ isError?: boolean;
13
+ }>;
14
+ //# sourceMappingURL=create-email-billing-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-email-billing-account.d.ts","sourceRoot":"","sources":["../../src/tools/create-email-billing-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,+BAA+B;;CAE3C,CAAC;AAEF,wBAAsB,+BAA+B,CAAC,IAAI,EAAE;IAC1D,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAqBjF"}
@@ -0,0 +1,22 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { formatApiError } from "../errors.js";
4
+ export const createEmailBillingAccountSchema = {
5
+ email: z.string().describe("Email address to create a billing account for (Stripe-only, no wallet)"),
6
+ };
7
+ export async function handleCreateEmailBillingAccount(args) {
8
+ const res = await apiRequest(`/billing/v1/accounts`, {
9
+ method: "POST",
10
+ body: { email: args.email },
11
+ });
12
+ if (!res.ok)
13
+ return formatApiError(res, "creating email billing account");
14
+ const body = res.body;
15
+ return {
16
+ content: [{
17
+ type: "text",
18
+ text: `## Email Billing Account Created\n\n- **Account ID:** \`${body.id}\`\n- **Email:** ${body.email}\n- **Email credits:** ${body.email_credits_remaining}\n${body.verification_sent ? "\nA verification email has been sent. Check your inbox." : ""}\n\nThis account can pay via Stripe for tier subscriptions and email packs. To add on-chain x402 access later, link a wallet with \`link_wallet_to_account\`.`,
19
+ }],
20
+ };
21
+ }
22
+ //# sourceMappingURL=create-email-billing-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-email-billing-account.js","sourceRoot":"","sources":["../../src/tools/create-email-billing-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;CACrG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,IAErD;IACC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,sBAAsB,EAAE;QACnD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;KAC5B,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAC;IAE1E,MAAM,IAAI,GAAG,GAAG,CAAC,IAKhB,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,2DAA2D,IAAI,CAAC,EAAE,oBAAoB,IAAI,CAAC,KAAK,0BAA0B,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,yDAAyD,CAAC,CAAC,CAAC,EAAE,+JAA+J;aACxZ,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const deleteContractWalletSchema: {
3
+ project_id: z.ZodString;
4
+ wallet_id: z.ZodString;
5
+ };
6
+ export declare function handleDeleteContractWallet(args: {
7
+ project_id: string;
8
+ wallet_id: string;
9
+ }): Promise<{
10
+ content: Array<{
11
+ type: "text";
12
+ text: string;
13
+ }>;
14
+ isError?: boolean;
15
+ }>;
16
+ //# sourceMappingURL=delete-contract-wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-contract-wallet.d.ts","sourceRoot":"","sources":["../../src/tools/delete-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,0BAA0B;;;CAGtC,CAAC;AAEF,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAYhL"}
@@ -0,0 +1,24 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const deleteContractWalletSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ wallet_id: z.string().describe("The KMS contract wallet ID. Schedules KMS key deletion (7-day window). Refused if balance >= dust — drain first."),
8
+ };
9
+ export async function handleDeleteContractWallet(args) {
10
+ const project = getProject(args.project_id);
11
+ if (!project)
12
+ return projectNotFound(args.project_id);
13
+ const res = await apiRequest(`/contracts/v1/wallets/${encodeURIComponent(args.wallet_id)}`, {
14
+ method: "DELETE",
15
+ headers: {
16
+ Authorization: `Bearer ${project.service_key}`,
17
+ "X-Confirm-Delete": args.wallet_id,
18
+ },
19
+ });
20
+ if (!res.ok)
21
+ return formatApiError(res, "deleting wallet");
22
+ return { content: [{ type: "text", text: "## Wallet Deleted\n\n```json\n" + JSON.stringify(res.body, null, 2) + "\n```" }] };
23
+ }
24
+ //# sourceMappingURL=delete-contract-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-contract-wallet.js","sourceRoot":"","sources":["../../src/tools/delete-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kHAAkH,CAAC;CACnJ,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,IAA+C;IAC9F,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE;QAC1F,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE;YAC9C,kBAAkB,EAAE,IAAI,CAAC,SAAS;SACnC;KACF,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC3D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gCAAgC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAC/H,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const drainContractWalletSchema: {
3
+ project_id: z.ZodString;
4
+ wallet_id: z.ZodString;
5
+ destination_address: z.ZodString;
6
+ };
7
+ export declare function handleDrainContractWallet(args: {
8
+ project_id: string;
9
+ wallet_id: string;
10
+ destination_address: string;
11
+ }): Promise<{
12
+ content: Array<{
13
+ type: "text";
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ //# sourceMappingURL=drain-contract-wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drain-contract-wallet.d.ts","sourceRoot":"","sources":["../../src/tools/drain-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,yBAAyB;;;;CAIrC,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,mBAAmB,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAa5M"}
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const drainContractWalletSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ wallet_id: z.string().describe("The KMS contract wallet ID"),
8
+ destination_address: z.string().describe("Where to send the entire native-token balance. Cost: chain gas + $0.000005 KMS sign fee. Works on suspended wallets."),
9
+ };
10
+ export async function handleDrainContractWallet(args) {
11
+ const project = getProject(args.project_id);
12
+ if (!project)
13
+ return projectNotFound(args.project_id);
14
+ const res = await apiRequest(`/contracts/v1/wallets/${encodeURIComponent(args.wallet_id)}/drain`, {
15
+ method: "POST",
16
+ headers: {
17
+ Authorization: `Bearer ${project.service_key}`,
18
+ "X-Confirm-Drain": args.wallet_id,
19
+ },
20
+ body: { destination_address: args.destination_address },
21
+ });
22
+ if (!res.ok)
23
+ return formatApiError(res, "draining wallet");
24
+ return { content: [{ type: "text", text: "## Drain Submitted\n\n```json\n" + JSON.stringify(res.body, null, 2) + "\n```" }] };
25
+ }
26
+ //# sourceMappingURL=drain-contract-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drain-contract-wallet.js","sourceRoot":"","sources":["../../src/tools/drain-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC5D,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sHAAsH,CAAC;CACjK,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAA4E;IAC1H,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QAChG,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE;YAC9C,iBAAiB,EAAE,IAAI,CAAC,SAAS;SAClC;QACD,IAAI,EAAE,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE;KACxD,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC3D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAChI,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const getContractCallStatusSchema: {
3
+ project_id: z.ZodString;
4
+ call_id: z.ZodString;
5
+ };
6
+ export declare function handleGetContractCallStatus(args: {
7
+ project_id: string;
8
+ call_id: string;
9
+ }): Promise<{
10
+ content: Array<{
11
+ type: "text";
12
+ text: string;
13
+ }>;
14
+ isError?: boolean;
15
+ }>;
16
+ //# sourceMappingURL=get-contract-call-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-contract-call-status.d.ts","sourceRoot":"","sources":["../../src/tools/get-contract-call-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,2BAA2B;;;CAGvC,CAAC;AAEF,wBAAsB,2BAA2B,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAS/K"}
@@ -0,0 +1,21 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const getContractCallStatusSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ call_id: z.string().describe("The contract call ID (ccall_...)"),
8
+ };
9
+ export async function handleGetContractCallStatus(args) {
10
+ const project = getProject(args.project_id);
11
+ if (!project)
12
+ return projectNotFound(args.project_id);
13
+ const res = await apiRequest(`/contracts/v1/calls/${encodeURIComponent(args.call_id)}`, {
14
+ method: "GET",
15
+ headers: { Authorization: `Bearer ${project.service_key}` },
16
+ });
17
+ if (!res.ok)
18
+ return formatApiError(res, "fetching call status");
19
+ return { content: [{ type: "text", text: "```json\n" + JSON.stringify(res.body, null, 2) + "\n```" }] };
20
+ }
21
+ //# sourceMappingURL=get-contract-call-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-contract-call-status.js","sourceRoot":"","sources":["../../src/tools/get-contract-call-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;CACjE,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAA6C;IAC7F,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,uBAAuB,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;QACtF,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;KAC5D,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IAChE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAC1G,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const getContractWalletSchema: {
3
+ project_id: z.ZodString;
4
+ wallet_id: z.ZodString;
5
+ };
6
+ export declare function handleGetContractWallet(args: {
7
+ project_id: string;
8
+ wallet_id: string;
9
+ }): Promise<{
10
+ content: Array<{
11
+ type: "text";
12
+ text: string;
13
+ }>;
14
+ isError?: boolean;
15
+ }>;
16
+ //# sourceMappingURL=get-contract-wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-contract-wallet.d.ts","sourceRoot":"","sources":["../../src/tools/get-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,uBAAuB;;;CAGnC,CAAC;AAEF,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAS7K"}
@@ -0,0 +1,21 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const getContractWalletSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ wallet_id: z.string().describe("The KMS contract wallet ID (cwlt_...)"),
8
+ };
9
+ export async function handleGetContractWallet(args) {
10
+ const project = getProject(args.project_id);
11
+ if (!project)
12
+ return projectNotFound(args.project_id);
13
+ const res = await apiRequest(`/contracts/v1/wallets/${encodeURIComponent(args.wallet_id)}`, {
14
+ method: "GET",
15
+ headers: { Authorization: `Bearer ${project.service_key}` },
16
+ });
17
+ if (!res.ok)
18
+ return formatApiError(res, "fetching wallet");
19
+ return { content: [{ type: "text", text: "```json\n" + JSON.stringify(res.body, null, 2) + "\n```" }] };
20
+ }
21
+ //# sourceMappingURL=get-contract-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-contract-wallet.js","sourceRoot":"","sources":["../../src/tools/get-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;CACxE,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAA+C;IAC3F,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE;QAC1F,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;KAC5D,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC3D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAC1G,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ export declare const linkWalletToAccountSchema: {
3
+ billing_account_id: z.ZodString;
4
+ wallet: z.ZodString;
5
+ };
6
+ export declare function handleLinkWalletToAccount(args: {
7
+ billing_account_id: string;
8
+ wallet: string;
9
+ }): Promise<{
10
+ content: Array<{
11
+ type: "text";
12
+ text: string;
13
+ }>;
14
+ isError?: boolean;
15
+ }>;
16
+ //# sourceMappingURL=link-wallet-to-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-wallet-to-account.d.ts","sourceRoot":"","sources":["../../src/tools/link-wallet-to-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,yBAAyB;;;CAGrC,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAcjF"}
@@ -0,0 +1,22 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { formatApiError } from "../errors.js";
4
+ export const linkWalletToAccountSchema = {
5
+ billing_account_id: z.string().describe("The billing account ID (from create_email_billing_account)"),
6
+ wallet: z.string().describe("The wallet address to link (0x...)"),
7
+ };
8
+ export async function handleLinkWalletToAccount(args) {
9
+ const res = await apiRequest(`/billing/v1/accounts/${args.billing_account_id}/link-wallet`, {
10
+ method: "POST",
11
+ body: { wallet: args.wallet },
12
+ });
13
+ if (!res.ok)
14
+ return formatApiError(res, "linking wallet");
15
+ return {
16
+ content: [{
17
+ type: "text",
18
+ text: `## Wallet Linked\n\n- **Billing account:** \`${args.billing_account_id}\`\n- **Wallet:** \`${args.wallet.toLowerCase()}\`\n\nThe account now supports both Stripe checkout and x402 on-chain payments.`,
19
+ }],
20
+ };
21
+ }
22
+ //# sourceMappingURL=link-wallet-to-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-wallet-to-account.js","sourceRoot":"","sources":["../../src/tools/link-wallet-to-account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IACrG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;CAClE,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAG/C;IACC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,wBAAwB,IAAI,CAAC,kBAAkB,cAAc,EAAE;QAC1F,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;KAC9B,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAE1D,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,gDAAgD,IAAI,CAAC,kBAAkB,uBAAuB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,iFAAiF;aAC/M,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from "zod";
2
+ export declare const listContractWalletsSchema: {
3
+ project_id: z.ZodString;
4
+ };
5
+ export declare function handleListContractWallets(args: {
6
+ project_id: string;
7
+ }): Promise<{
8
+ content: Array<{
9
+ type: "text";
10
+ text: string;
11
+ }>;
12
+ isError?: boolean;
13
+ }>;
14
+ //# sourceMappingURL=list-contract-wallets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-contract-wallets.d.ts","sourceRoot":"","sources":["../../src/tools/list-contract-wallets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,yBAAyB;;CAErC,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAS5J"}
@@ -0,0 +1,20 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const listContractWalletsSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ };
8
+ export async function handleListContractWallets(args) {
9
+ const project = getProject(args.project_id);
10
+ if (!project)
11
+ return projectNotFound(args.project_id);
12
+ const res = await apiRequest("/contracts/v1/wallets", {
13
+ method: "GET",
14
+ headers: { Authorization: `Bearer ${project.service_key}` },
15
+ });
16
+ if (!res.ok)
17
+ return formatApiError(res, "listing wallets");
18
+ return { content: [{ type: "text", text: "```json\n" + JSON.stringify(res.body, null, 2) + "\n```" }] };
19
+ }
20
+ //# sourceMappingURL=list-contract-wallets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-contract-wallets.js","sourceRoot":"","sources":["../../src/tools/list-contract-wallets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAClD,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,IAA4B;IAC1E,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,uBAAuB,EAAE;QACpD,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;KAC5D,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAC3D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAC1G,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const provisionContractWalletSchema: {
3
+ project_id: z.ZodString;
4
+ chain: z.ZodEnum<["base-mainnet", "base-sepolia"]>;
5
+ recovery_address: z.ZodOptional<z.ZodString>;
6
+ };
7
+ export declare function handleProvisionContractWallet(args: {
8
+ project_id: string;
9
+ chain: "base-mainnet" | "base-sepolia";
10
+ recovery_address?: string;
11
+ }): Promise<{
12
+ content: Array<{
13
+ type: "text";
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ //# sourceMappingURL=provision-contract-wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provision-contract-wallet.d.ts","sourceRoot":"","sources":["../../src/tools/provision-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,6BAA6B;;;;CAIzC,CAAC;AAEF,wBAAsB,6BAA6B,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAYnO"}
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const provisionContractWalletSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ chain: z.enum(["base-mainnet", "base-sepolia"]).describe("Which EVM chain. Cost: $0.04/day rental, requires $1.20 in cash credit at creation."),
8
+ recovery_address: z.string().optional().describe("Optional 0x-prefixed address for auto-drain on day-90 deletion"),
9
+ };
10
+ export async function handleProvisionContractWallet(args) {
11
+ const project = getProject(args.project_id);
12
+ if (!project)
13
+ return projectNotFound(args.project_id);
14
+ const body = { chain: args.chain };
15
+ if (args.recovery_address)
16
+ body.recovery_address = args.recovery_address;
17
+ const res = await apiRequest("/contracts/v1/wallets", {
18
+ method: "POST",
19
+ headers: { Authorization: `Bearer ${project.service_key}` },
20
+ body,
21
+ });
22
+ if (!res.ok)
23
+ return formatApiError(res, "provisioning KMS contract wallet");
24
+ return { content: [{ type: "text", text: "## KMS Contract Wallet Provisioned\n\n```json\n" + JSON.stringify(res.body, null, 2) + "\n```\n\n**Cost**: $0.04/day rental ($1.20/month) + $0.000005 per contract call. **Non-custodial** — see https://run402.com/humans/terms.html#non-custodial-kms-wallets" }] };
25
+ }
26
+ //# sourceMappingURL=provision-contract-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provision-contract-wallet.js","sourceRoot":"","sources":["../../src/tools/provision-contract-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,qFAAqF,CAAC;IAC/I,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;CACnH,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,IAA+F;IACjJ,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,IAAI,GAA4B,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC5D,IAAI,IAAI,CAAC,gBAAgB;QAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACzE,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,uBAAuB,EAAE;QACpD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;QAC3D,IAAI;KACL,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAC;IAC5E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iDAAiD,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,yKAAyK,EAAE,CAAC,EAAE,CAAC;AAClT,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const setAutoRechargeSchema: {
3
+ billing_account_id: z.ZodString;
4
+ enabled: z.ZodBoolean;
5
+ threshold: z.ZodOptional<z.ZodNumber>;
6
+ };
7
+ export declare function handleSetAutoRecharge(args: {
8
+ billing_account_id: string;
9
+ enabled: boolean;
10
+ threshold?: number;
11
+ }): Promise<{
12
+ content: Array<{
13
+ type: "text";
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ //# sourceMappingURL=set-auto-recharge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-auto-recharge.d.ts","sourceRoot":"","sources":["../../src/tools/set-auto-recharge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,qBAAqB;;;;CAIjC,CAAC;AAEF,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAoBjF"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { formatApiError } from "../errors.js";
4
+ export const setAutoRechargeSchema = {
5
+ billing_account_id: z.string().describe("The billing account ID"),
6
+ enabled: z.boolean().describe("Enable (true) or disable (false) auto-recharge"),
7
+ threshold: z.number().optional().describe("Credit threshold to trigger auto-recharge (default 2000)"),
8
+ };
9
+ export async function handleSetAutoRecharge(args) {
10
+ const body = {
11
+ billing_account_id: args.billing_account_id,
12
+ enabled: args.enabled,
13
+ };
14
+ if (args.threshold !== undefined)
15
+ body.threshold = args.threshold;
16
+ const res = await apiRequest(`/billing/v1/email-packs/auto-recharge`, {
17
+ method: "POST",
18
+ body,
19
+ });
20
+ if (!res.ok)
21
+ return formatApiError(res, "setting auto-recharge");
22
+ return {
23
+ content: [{
24
+ type: "text",
25
+ text: `## Auto-Recharge ${args.enabled ? "Enabled" : "Disabled"}\n\n- **Account:** \`${args.billing_account_id}\`\n${args.threshold ? `- **Threshold:** ${args.threshold} credits\n` : ""}${args.enabled ? "\nA new \$5 email pack will be charged automatically when credits drop below the threshold. Requires a saved Stripe payment method. 3 consecutive failures will auto-disable.\n" : ""}`,
26
+ }],
27
+ };
28
+ }
29
+ //# sourceMappingURL=set-auto-recharge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-auto-recharge.js","sourceRoot":"","sources":["../../src/tools/set-auto-recharge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAC/E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;CACtG,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAI3C;IACC,MAAM,IAAI,GAA4B;QACpC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;QAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;IACF,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAElE,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,uCAAuC,EAAE;QACpE,MAAM,EAAE,MAAM;QACd,IAAI;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,oBAAoB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,wBAAwB,IAAI,CAAC,kBAAkB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,iLAAiL,CAAC,CAAC,CAAC,EAAE,EAAE;aACpY,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const setLowBalanceAlertSchema: {
3
+ project_id: z.ZodString;
4
+ wallet_id: z.ZodString;
5
+ threshold_wei: z.ZodString;
6
+ };
7
+ export declare function handleSetLowBalanceAlert(args: {
8
+ project_id: string;
9
+ wallet_id: string;
10
+ threshold_wei: string;
11
+ }): Promise<{
12
+ content: Array<{
13
+ type: "text";
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ //# sourceMappingURL=set-low-balance-alert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-low-balance-alert.d.ts","sourceRoot":"","sources":["../../src/tools/set-low-balance-alert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,wBAAwB;;;;CAIpC,CAAC;AAEF,wBAAsB,wBAAwB,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAUrM"}
@@ -0,0 +1,23 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const setLowBalanceAlertSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ wallet_id: z.string().describe("The KMS contract wallet ID"),
8
+ threshold_wei: z.string().describe("Low-balance threshold in wei (decimal string)"),
9
+ };
10
+ export async function handleSetLowBalanceAlert(args) {
11
+ const project = getProject(args.project_id);
12
+ if (!project)
13
+ return projectNotFound(args.project_id);
14
+ const res = await apiRequest(`/contracts/v1/wallets/${encodeURIComponent(args.wallet_id)}/alert`, {
15
+ method: "POST",
16
+ headers: { Authorization: `Bearer ${project.service_key}` },
17
+ body: { threshold_wei: args.threshold_wei },
18
+ });
19
+ if (!res.ok)
20
+ return formatApiError(res, "setting low-balance threshold");
21
+ return { content: [{ type: "text", text: "Low-balance threshold set to " + args.threshold_wei + " wei" }] };
22
+ }
23
+ //# sourceMappingURL=set-low-balance-alert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-low-balance-alert.js","sourceRoot":"","sources":["../../src/tools/set-low-balance-alert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC5D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;CACpF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAAsE;IACnH,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QAChG,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;QAC3D,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;KAC5C,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;IACzE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,GAAG,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC;AAC9G,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const setRecoveryAddressSchema: {
3
+ project_id: z.ZodString;
4
+ wallet_id: z.ZodString;
5
+ recovery_address: z.ZodNullable<z.ZodString>;
6
+ };
7
+ export declare function handleSetRecoveryAddress(args: {
8
+ project_id: string;
9
+ wallet_id: string;
10
+ recovery_address: string | null;
11
+ }): Promise<{
12
+ content: Array<{
13
+ type: "text";
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ //# sourceMappingURL=set-recovery-address.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-recovery-address.d.ts","sourceRoot":"","sources":["../../src/tools/set-recovery-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,wBAAwB;;;;CAIpC,CAAC;AAEF,wBAAsB,wBAAwB,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAU/M"}
@@ -0,0 +1,23 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { getProject } from "../keystore.js";
4
+ import { formatApiError, projectNotFound } from "../errors.js";
5
+ export const setRecoveryAddressSchema = {
6
+ project_id: z.string().describe("The project ID"),
7
+ wallet_id: z.string().describe("The KMS contract wallet ID"),
8
+ recovery_address: z.string().nullable().describe("0x-prefixed address (or null to clear). Used for auto-drain on day-90 deletion."),
9
+ };
10
+ export async function handleSetRecoveryAddress(args) {
11
+ const project = getProject(args.project_id);
12
+ if (!project)
13
+ return projectNotFound(args.project_id);
14
+ const res = await apiRequest(`/contracts/v1/wallets/${encodeURIComponent(args.wallet_id)}/recovery-address`, {
15
+ method: "POST",
16
+ headers: { Authorization: `Bearer ${project.service_key}` },
17
+ body: { recovery_address: args.recovery_address },
18
+ });
19
+ if (!res.ok)
20
+ return formatApiError(res, "setting recovery address");
21
+ return { content: [{ type: "text", text: "Recovery address " + (args.recovery_address ? "set to " + args.recovery_address : "cleared") }] };
22
+ }
23
+ //# sourceMappingURL=set-recovery-address.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-recovery-address.js","sourceRoot":"","sources":["../../src/tools/set-recovery-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC5D,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;CACpI,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAAgF;IAC7H,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE;QAC3G,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,OAAO,CAAC,WAAW,EAAE,EAAE;QAC3D,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;KAClD,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;IACpE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;AAC9I,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ export declare const tierCheckoutSchema: {
3
+ tier: z.ZodEnum<["prototype", "hobby", "team"]>;
4
+ email: z.ZodOptional<z.ZodString>;
5
+ wallet: z.ZodOptional<z.ZodString>;
6
+ };
7
+ export declare function handleTierCheckout(args: {
8
+ tier: string;
9
+ email?: string;
10
+ wallet?: string;
11
+ }): Promise<{
12
+ content: Array<{
13
+ type: "text";
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ //# sourceMappingURL=tier-checkout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier-checkout.d.ts","sourceRoot":"","sources":["../../src/tools/tier-checkout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,kBAAkB;;;;CAI9B,CAAC;AAEF,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA0BjF"}
@@ -0,0 +1,35 @@
1
+ import { z } from "zod";
2
+ import { apiRequest } from "../client.js";
3
+ import { formatApiError } from "../errors.js";
4
+ export const tierCheckoutSchema = {
5
+ tier: z.enum(["prototype", "hobby", "team"]).describe("Tier name: prototype ($0.10/7d), hobby ($5/30d), team ($20/30d)"),
6
+ email: z.string().optional().describe("Email address (for email-based accounts)"),
7
+ wallet: z.string().optional().describe("Wallet address (for wallet-based accounts)"),
8
+ };
9
+ export async function handleTierCheckout(args) {
10
+ if (!args.email && !args.wallet) {
11
+ return {
12
+ content: [{ type: "text", text: "Error: Provide either `email` or `wallet`." }],
13
+ isError: true,
14
+ };
15
+ }
16
+ const body = {};
17
+ if (args.wallet)
18
+ body.wallet = args.wallet;
19
+ else if (args.email)
20
+ body.email = args.email;
21
+ const res = await apiRequest(`/billing/v1/tiers/${args.tier}/checkout`, {
22
+ method: "POST",
23
+ body,
24
+ });
25
+ if (!res.ok)
26
+ return formatApiError(res, "creating tier checkout");
27
+ const result = res.body;
28
+ return {
29
+ content: [{
30
+ type: "text",
31
+ text: `## Tier Checkout Created\n\n- **Tier:** ${args.tier}\n- **Topup ID:** \`${result.topup_id}\`\n\n**Send your human to complete payment:**\n${result.checkout_url}\n\nOn successful payment, the ${args.tier} tier will be applied automatically (subscribe, renew, or upgrade with prorated refund).`,
32
+ }],
33
+ };
34
+ }
35
+ //# sourceMappingURL=tier-checkout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier-checkout.js","sourceRoot":"","sources":["../../src/tools/tier-checkout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,iEAAiE,CAAC;IACxH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACjF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;CACrF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAIxC;IACC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4CAA4C,EAAE,CAAC;YAC/E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,IAAI,IAAI,CAAC,MAAM;QAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;SACtC,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAE7C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,qBAAqB,IAAI,CAAC,IAAI,WAAW,EAAE;QACtE,MAAM,EAAE,MAAM;QACd,IAAI;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;IAElE,MAAM,MAAM,GAAG,GAAG,CAAC,IAAkD,CAAC;IACtE,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,2CAA2C,IAAI,CAAC,IAAI,uBAAuB,MAAM,CAAC,QAAQ,mDAAmD,MAAM,CAAC,YAAY,kCAAkC,IAAI,CAAC,IAAI,0FAA0F;aAC5S,CAAC;KACH,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "run402-mcp",
3
- "version": "1.27.0",
3
+ "version": "1.29.0",
4
4
  "description": "MCP server for Run402 — AI-native Postgres databases with REST API, auth, storage, and row-level security. Pay with x402 USDC micropayments.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",