httpcat-cli 0.3.2 → 0.3.3

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.
@@ -44,7 +44,6 @@ jobs:
44
44
  && apt update \
45
45
  && apt install gh -y
46
46
  fi
47
- echo "${{ secrets.GITHUB_TOKEN }}" | gh auth login --with-token
48
47
  env:
49
48
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
50
49
 
package/README.md CHANGED
@@ -107,19 +107,59 @@ Your agent can now use all CLI commands as MCP tools. One integration, access to
107
107
 
108
108
  - `launchpad list` — List all launchpad tokens (FREE)
109
109
  - `launchpad info <identifier>` — Get launchpad token information (FREE)
110
- - `launchpad buy <identifier> <amount>` — Buy tokens from bonding curve
110
+ - `launchpad buy <identifier> <amount>` — Buy tokens from bonding curve (amount + 1% fee)
111
111
  - `launchpad sell <identifier> <amount>` — Sell tokens to bonding curve ($0.01)
112
112
  - `launchpad positions` — Get launchpad token positions (FREE)
113
- - `create <name> <symbol>` — Create a new token on the 402.cat launchpad
113
+ - `create <name> <symbol>` — Create a new token on the 402.cat launchpad ($0.01)
114
114
 
115
115
  **Shortcuts:** `list`, `info`, `buy`, `sell`, `positions`, `create`
116
116
 
117
117
  ### Entrypoints
118
118
 
119
- - `swap <tokenIn> <tokenOut> <amount>` — Execute swaps via 402.cat DEX aggregator
119
+ - `swap <tokenIn> <tokenOut> <amount>` — Execute swaps via 402.cat DEX aggregator ($0.10)
120
120
 
121
121
  ### Tools
122
122
 
123
+ EVM development & interaction tools for building and working with blockchain transactions:
124
+
125
+ - `tools address` — Address utilities
126
+ - `tools address validate <address>` — Validate Ethereum address format ($0.001)
127
+ - `tools address checksum <address>` — Convert address to EIP-55 checksum format ($0.001)
128
+ - `tools address derive <privateKey>` — Derive address from private key ($0.001)
129
+ - `tools address balance <address>` — Get address balance (ETH + tokens) ($0.001)
130
+ - `tools abi` — ABI encoding/decoding utilities
131
+ - `tools abi encode` — Encode function call from ABI and arguments ($0.001)
132
+ - `tools abi decode` — Decode function result or event log ($0.001)
133
+ - `tools abi parse` — Parse ABI JSON and return structured format ($0.001)
134
+ - `tools tx` — Transaction utilities
135
+ - `tools tx build` — Build complete transaction with auto-filled fields ($0.001)
136
+ - `tools tx encode` — Encode transaction to RLP format ($0.001)
137
+ - `tools tx decode` — Decode RLP transaction ($0.001)
138
+ - `tools tx simulate` — Enhanced transaction simulation with state analysis ($0.001)
139
+ - `tools tx estimate-gas` — Estimate gas for transaction ($0.001)
140
+ - `tools tx prepare` — Prepare transaction for signing ($0.001)
141
+ - `tools signature` — Signature utilities
142
+ - `tools signature eip191` — Prepare EIP-191 personal sign message ($0.001)
143
+ - `tools signature eip712` — Prepare EIP-712 structured data signature ($0.001)
144
+ - `tools signature permit2` — Prepare Permit2 signature message ($0.001)
145
+ - `tools multicall` — Multicall operations
146
+ - `tools multicall encode` — Encode multicall operation ($0.001)
147
+ - `tools multicall decode` — Decode multicall results ($0.001)
148
+ - `tools nonce` — Nonce management
149
+ - `tools nonce get <address>` — Get current nonce for address ($0.001)
150
+ - `tools nonce predict <address>` — Predict next nonce accounting for pending transactions ($0.001)
151
+ - `tools gas` — Gas utilities
152
+ - `tools gas price` — Get current gas price ($0.001)
153
+ - `tools gas estimate` — Estimate gas for operation ($0.001)
154
+ - `tools gas optimize` — Optimize gas settings for transaction ($0.001)
155
+ - `tools key` — Key utilities
156
+ - `tools key derive <privateKey>` — Derive address from private key ($0.001)
157
+ - `tools key validate <privateKey>` — Validate private key format ($0.001)
158
+ - `tools rpc` — RPC utilities
159
+ - `tools rpc proxy` — Enhanced JSON-RPC proxy ($0.001)
160
+ - `tools rpc batch` — Batch multiple RPC calls ($0.001)
161
+ - `tools rpc health` — Check RPC endpoint health ($0.001)
162
+ - `tools call <url>` — Call an arbitrary x402-protected HTTP endpoint with automatic payment handling (varies by endpoint)
123
163
  - `rpc` — JSON-RPC proxy for blockchain calls ($0.05)
124
164
 
125
165
  ### MCP
@@ -160,6 +200,8 @@ httpcat is built on the [x402 protocol](https://x402.org) — HTTP-native microp
160
200
 
161
201
  httpcat handles all of this automatically. You just make requests.
162
202
 
203
+ **Protocol Versions:** httpcat supports both x402 v1 (payment requirements in response body) and v2 (payment requirements in `PAYMENT-REQUIRED` header). The client automatically detects and handles both formats.
204
+
163
205
  ---
164
206
 
165
207
  ## MCP Server
@@ -215,7 +257,7 @@ Your agent can now:
215
257
 
216
258
  For detailed documentation, entrypoint reference, and deployment guides:
217
259
 
218
- **📖 [docs.402.cat](https://docs.402.cat)**
260
+ **📖 [docs.402.cat](https://www.402.cat/docs)**
219
261
 
220
262
  ---
221
263
 
@@ -244,4 +286,4 @@ MIT
244
286
  - Issues: https://github.com/hathbanger/httpcat-cli/issues
245
287
  - Agent: https://agent-test.402.cat
246
288
  - Protocol: https://x402.org
247
- - Docs: https://docs.402.cat
289
+ - Docs: https://www.402.cat/docs
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAIhC,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,GAAG;IACzC,MAAM,EAAE,CAAC,CAAC;CACX;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,gBAAgB,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO;WAcM,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC;IAgE7D;;;OAGG;YACW,iBAAiB;IAoO/B;;OAEG;YACW,sBAAsB;IA6I9B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG,EACtC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC;IA+W9C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAiJrC,WAAW,IAAI,MAAM;IAIrB,UAAU,IAAI,MAAM;IAIpB;;;OAGG;IACG,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,GAAG,CAAC;QACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC7B,GACL,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,EAAE,GAAG,CAAC;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CA6IH;AAED,qBAAa,YAAa,SAAQ,KAAK;IACD,MAAM,EAAE,MAAM;IAAS,OAAO,CAAC,EAAE,GAAG;gBAA5D,OAAO,EAAE,MAAM,EAAS,MAAM,EAAE,MAAM,EAAS,OAAO,CAAC,EAAE,GAAG,YAAA;CAIzE;AAED,qBAAa,oBAAqB,SAAQ,YAAY;gBACxC,OAAO,GAAE,MAA4E,EAAE,OAAO,CAAC,EAAE,GAAG;CAIjH"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAIhC,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,GAAG;IACzC,MAAM,EAAE,CAAC,CAAC;CACX;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,gBAAgB,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO;WAcM,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC;IAgE7D;;;;;OAKG;IACH,OAAO,CAAC,kCAAkC;IAgC1C;;;;OAIG;YACW,iBAAiB;IAkQ/B;;OAEG;YACW,sBAAsB;IA+I9B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG,EACtC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,WAAW,CAAA;KAAE,CAAC;IA+W9C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAiJrC,WAAW,IAAI,MAAM;IAIrB,UAAU,IAAI,MAAM;IAIpB;;;OAGG;IACG,gBAAgB,CACpB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,GAAG,CAAC;QACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC7B,GACL,OAAO,CAAC;QACT,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,EAAE,GAAG,CAAC;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CA6IH;AAED,qBAAa,YAAa,SAAQ,KAAK;IACD,MAAM,EAAE,MAAM;IAAS,OAAO,CAAC,EAAE,GAAG;gBAA5D,OAAO,EAAE,MAAM,EAAS,MAAM,EAAE,MAAM,EAAS,OAAO,CAAC,EAAE,GAAG,YAAA;CAIzE;AAED,qBAAa,oBAAqB,SAAQ,YAAY;gBACxC,OAAO,GAAE,MAA4E,EAAE,OAAO,CAAC,EAAE,GAAG;CAIjH"}
package/dist/client.js CHANGED
@@ -59,34 +59,104 @@ export class HttpcatClient {
59
59
  }
60
60
  return new HttpcatClient(fetchWithPayment, agentUrl, network, signer, networkCaip2);
61
61
  }
62
+ /**
63
+ * Parse payment requirements from x402 v2 PAYMENT-REQUIRED header
64
+ * Supports both direct format and wrapped format
65
+ * @param headerValue Base64-encoded JSON string from PAYMENT-REQUIRED header
66
+ * @returns Payment requirement object or null if parsing fails
67
+ */
68
+ parsePaymentRequirementsFromHeader(headerValue) {
69
+ try {
70
+ const decoded = Buffer.from(headerValue, "base64").toString("utf-8");
71
+ const headerData = JSON.parse(decoded);
72
+ // Handle wrapped format: { accepts: [{ ... }] }
73
+ if (headerData.accepts &&
74
+ Array.isArray(headerData.accepts) &&
75
+ headerData.accepts[0]) {
76
+ return headerData.accepts[0];
77
+ }
78
+ // Handle direct format: { network, maxAmountRequired, ... }
79
+ if (headerData.network && headerData.maxAmountRequired) {
80
+ return headerData;
81
+ }
82
+ return null;
83
+ }
84
+ catch (e) {
85
+ if (process.env.DEBUG) {
86
+ console.log(`[HttpcatClient] Failed to parse payment-required header: ${e instanceof Error ? e.message : "Unknown error"}`);
87
+ }
88
+ return null;
89
+ }
90
+ }
62
91
  /**
63
92
  * Handle 402 Payment Required response and retry with payment signature
64
93
  * This is a fallback implementation when wrapFetchWithPayment doesn't work
94
+ * Supports both x402 v1 (body) and v2 (header) formats
65
95
  */
66
96
  async handle402AndRetry(response, url, originalOptions) {
67
97
  if (process.env.DEBUG) {
68
98
  console.log(`[HttpcatClient.handle402AndRetry] Received 402 Payment Required - processing payment...`);
69
99
  }
70
- // Parse payment requirements from 402 response
71
- const responseText = await response.text();
72
- let paymentInfo;
73
- try {
74
- paymentInfo = JSON.parse(responseText);
75
- }
76
- catch (e) {
77
- throw new Error(`Failed to parse 402 response: ${e instanceof Error ? e.message : "Unknown error"}`);
100
+ // Try to parse payment requirements from header first (x402 v2 format)
101
+ let requirement = null;
102
+ // Check for payment-required header (case-insensitive)
103
+ const paymentRequiredHeader = response.headers.get("payment-required") ||
104
+ response.headers.get("Payment-Required") ||
105
+ response.headers.get("PAYMENT-REQUIRED");
106
+ if (paymentRequiredHeader) {
107
+ if (process.env.DEBUG) {
108
+ console.log(`[HttpcatClient.handle402AndRetry] Found payment-required header (x402 v2 format)`);
109
+ }
110
+ requirement = this.parsePaymentRequirementsFromHeader(paymentRequiredHeader);
111
+ if (requirement) {
112
+ if (process.env.DEBUG) {
113
+ console.log(`[HttpcatClient.handle402AndRetry] Parsed payment requirements from header:`, requirement);
114
+ }
115
+ }
116
+ else {
117
+ if (process.env.DEBUG) {
118
+ console.log(`[HttpcatClient.handle402AndRetry] Failed to parse payment-required header, falling back to body parsing`);
119
+ }
120
+ }
78
121
  }
79
- if (!paymentInfo.accepts || !paymentInfo.accepts[0]) {
80
- throw new Error("No payment requirements in 402 response");
122
+ // Fallback to body parsing (x402 v1 format)
123
+ if (!requirement) {
124
+ if (process.env.DEBUG) {
125
+ console.log(`[HttpcatClient.handle402AndRetry] No header found or header parsing failed, trying body parsing (x402 v1 format)`);
126
+ }
127
+ // Parse payment requirements from 402 response body
128
+ const responseText = await response.text();
129
+ let paymentInfo;
130
+ try {
131
+ paymentInfo = JSON.parse(responseText);
132
+ }
133
+ catch (e) {
134
+ throw new Error(`Failed to parse 402 response: ${e instanceof Error ? e.message : "Unknown error"}`);
135
+ }
136
+ if (!paymentInfo.accepts || !paymentInfo.accepts[0]) {
137
+ throw new Error("No payment requirements in 402 response (checked both header and body)");
138
+ }
139
+ requirement = paymentInfo.accepts[0];
81
140
  }
82
- const requirement = paymentInfo.accepts[0];
83
141
  // Extract payment details from requirement
84
- const network = requirement.network; // Already in CAIP-2 format from V2 server
85
- const maxAmount = requirement.maxAmountRequired; // Hex string
142
+ // Per x402 v2 spec: scheme, network, maxAmountRequired, asset, payTo, resource
143
+ const network = requirement.network; // CAIP-2 format (e.g., eip155:84532)
144
+ const maxAmount = requirement.maxAmountRequired ?? requirement.amount ?? "0"; // Hex string, fallback to "0" if missing
86
145
  const payTo = requirement.payTo; // Platform address
87
146
  const asset = requirement.asset; // USDC address
88
- const resource = requirement.resource; // Full resource URL
147
+ const resource = requirement.resource || url; // Full resource URL, fallback to request URL
148
+ // Validate required fields per x402 v2 spec
149
+ if (!network) {
150
+ throw new Error("Missing 'network' field in payment requirements (expected CAIP-2 format, e.g., eip155:84532)");
151
+ }
152
+ if (!payTo) {
153
+ throw new Error("Missing 'payTo' field in payment requirements (expected recipient address)");
154
+ }
155
+ if (!asset) {
156
+ throw new Error("Missing 'asset' field in payment requirements (expected USDC token address)");
157
+ }
89
158
  // Check if this is a free endpoint (maxAmount is "0" or "0x0")
159
+ // Note: Even free endpoints may require a payment signature for account identification
90
160
  const isFreeEndpoint = !maxAmount ||
91
161
  maxAmount === "0" ||
92
162
  maxAmount === "0x0" ||
@@ -104,28 +174,9 @@ export class HttpcatClient {
104
174
  isFreeEndpoint,
105
175
  });
106
176
  }
107
- // For free endpoints, just retry without payment header (vanilla endpoint)
108
- if (isFreeEndpoint) {
109
- if (process.env.DEBUG) {
110
- console.log(`[HttpcatClient.handle402AndRetry] Free endpoint detected - retrying without payment header`);
111
- }
112
- // Retry request without payment header (vanilla endpoint)
113
- const retryOptions = {
114
- ...originalOptions,
115
- };
116
- // Use raw fetch for retry
117
- await new Promise((resolve) => setTimeout(resolve, 100)); // Small delay
118
- const retryResponse = await fetch(url, retryOptions);
119
- if (process.env.DEBUG) {
120
- console.log(`[HttpcatClient.handle402AndRetry] Free endpoint retry response status: ${retryResponse.status}`);
121
- }
122
- if (!retryResponse.ok) {
123
- const errorBody = (await retryResponse.json().catch(() => ({})));
124
- throw new HttpcatError(`Request failed: ${errorBody?.error || errorBody?.message || "Unknown error"}`, retryResponse.status, errorBody);
125
- }
126
- return retryResponse;
127
- }
128
- // For paid endpoints, create payment signature
177
+ // Always create payment signature when we receive a 402 response
178
+ // Even if the amount is 0, the signature is needed for account identification
179
+ // The server explicitly requires PAYMENT-SIGNATURE header in the 402 response
129
180
  const paymentHeader = await this.createPaymentSignature({
130
181
  network,
131
182
  maxAmount,
@@ -134,7 +185,7 @@ export class HttpcatClient {
134
185
  resource,
135
186
  });
136
187
  if (process.env.DEBUG) {
137
- console.log(`[HttpcatClient.handle402AndRetry] Payment signature created, retrying request...`);
188
+ console.log(`[HttpcatClient.handle402AndRetry] Payment signature created (amount: ${maxAmount}), retrying request...`);
138
189
  }
139
190
  // Retry request with payment header
140
191
  // Use raw fetch (not fetchWithPayment) to avoid any caching or reuse of payment state
@@ -260,13 +311,15 @@ export class HttpcatClient {
260
311
  // Normalize maxAmount to hex format
261
312
  // Server may return "0" (decimal) or "0x0" (hex) for free endpoints
262
313
  // Convert to hex format for consistency
314
+ // Per x402 v2 spec: amount encoding can be hex vs decimal string
315
+ const maxAmountValue = paymentInfo.maxAmount || "0";
263
316
  let valueHex;
264
- if (paymentInfo.maxAmount.startsWith("0x")) {
265
- valueHex = paymentInfo.maxAmount;
317
+ if (typeof maxAmountValue === "string" && maxAmountValue.startsWith("0x")) {
318
+ valueHex = maxAmountValue;
266
319
  }
267
320
  else {
268
321
  // Convert decimal string to hex (e.g., "0" -> "0x0")
269
- const valueBigInt = BigInt(paymentInfo.maxAmount);
322
+ const valueBigInt = BigInt(maxAmountValue);
270
323
  valueHex = `0x${valueBigInt.toString(16)}`;
271
324
  }
272
325
  // Keep values as strings/hex strings as received from server
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -4901,10 +4901,16 @@ async function displayGroupedHelp(program, showAll = false) {
4901
4901
  // Check subcommand paths
4902
4902
  const subcommandPath = `${parentName}.${cmdName}`;
4903
4903
  const parentIsAdmin = adminCommandList.includes(parentName?.split(".")[0] || "");
4904
+ // For subcommands, only hide if:
4905
+ // 1. Parent is admin, OR
4906
+ // 2. Full path (e.g., "tools.address") is in admin list, OR
4907
+ // 3. Command name is in admin list AND it's not a subcommand of a non-admin parent
4908
+ // Special case: if parent is "tools" and tools is not admin, allow all tools subcommands
4909
+ const isToolsSubcommand = parentName === "tools" && !adminCommandList.includes("tools");
4904
4910
  cmd._hidden =
4905
4911
  parentIsAdmin ||
4906
4912
  adminCommandList.includes(subcommandPath) ||
4907
- adminCommandList.includes(cmdName);
4913
+ (adminCommandList.includes(cmdName) && !isToolsSubcommand);
4908
4914
  }
4909
4915
  }
4910
4916
  // Recursively update subcommands
@@ -4941,7 +4947,7 @@ async function displayGroupedHelp(program, showAll = false) {
4941
4947
  // Define ordered command groups for non-admin users
4942
4948
  const launchpadInfoCommands = ["list", "info", "buy", "sell", "create", "positions", "claim"];
4943
4949
  const tradingCommands = ["swap"];
4944
- const otherCommands = ["accounts", "mcp", "config"];
4950
+ const otherCommands = ["tools", "accounts", "mcp", "config"];
4945
4951
  // Custom descriptions for non-admin users
4946
4952
  const nonAdminDescriptions = {
4947
4953
  list: "List all tokens on the 402.cat launchpad",
@@ -4952,6 +4958,7 @@ async function displayGroupedHelp(program, showAll = false) {
4952
4958
  buy: "Buy tokens from launchpad or any token with USDC via Uniswap V4 pools",
4953
4959
  sell: "Sell tokens back to launchpad or any token with USDC via Uniswap V4 pools",
4954
4960
  swap: "Execute swaps via 402.cat DEX aggregator",
4961
+ tools: "EVM development & interaction tools (address, abi, tx, signature, etc.)",
4955
4962
  accounts: "List all configured accounts",
4956
4963
  mcp: "MCP (Model Context Protocol) server and installation",
4957
4964
  config: "Configure httpcat settings and accounts",