@quackai/q402-mcp 0.8.20 → 0.8.21

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 (2) hide show
  1. package/dist/index.js +17 -3
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -130,8 +130,7 @@ function loadConfig() {
130
130
  const walletId = typeof walletIdRaw === "string" && walletIdRaw.length > 0 ? walletIdRaw.toLowerCase() : null;
131
131
  const realPaymentsRequested = ENV.Q402_ENABLE_REAL_PAYMENTS === "1";
132
132
  const anyLiveKey = classifyApiKey(trialApiKey) === "live" || classifyApiKey(multichainApiKey) === "live" || classifyApiKey(legacyApiKey) === "live";
133
- const hasAnySignerKey = typeof privateKey === "string" && privateKey.length > 0 || typeof agenticPrivateKey === "string" && agenticPrivateKey.length > 0;
134
- const live = realPaymentsRequested && anyLiveKey && hasAnySignerKey;
133
+ const live = realPaymentsRequested && anyLiveKey;
135
134
  return {
136
135
  trialApiKey,
137
136
  multichainApiKey,
@@ -212,7 +211,7 @@ var isValidPrivateKey = (s) => typeof s === "string" && PRIVATE_KEY_RE.test(s);
212
211
  // package.json
213
212
  var package_default = {
214
213
  name: "@quackai/q402-mcp",
215
- version: "0.8.20",
214
+ version: "0.8.21",
216
215
  description: "MCP server for Q402 \u2014 gasless USDC/USDT/RLUSD payments on 10 EVM chains + Chainlink CCIP USDC bridge on the eth/avax/arbitrum triangle, callable from Claude (Desktop / Code), OpenAI Codex CLI, and any other Model Context Protocol client.",
217
216
  mcpName: "io.github.bitgett/q402-mcp",
218
217
  keywords: [
@@ -1648,6 +1647,21 @@ async function runBatchPay(input) {
1648
1647
  const data = await resp.json().catch(() => ({}));
1649
1648
  if (!resp.ok) {
1650
1649
  const errMsg = data && typeof data === "object" && "error" in data ? String(data.error) : `relay_http_${resp.status}`;
1650
+ if (data.status === "uncertain") {
1651
+ return {
1652
+ mode: "live",
1653
+ status: "settlement_uncertain",
1654
+ guardsApplied: [
1655
+ ...guardsApplied,
1656
+ "wallet=agentic-server",
1657
+ "mode=live",
1658
+ `http=${resp.status}`
1659
+ ],
1660
+ senderWallet,
1661
+ error: errMsg,
1662
+ setupHint: "The relay did not confirm whether these payments settled \u2014 they MAY have been sent. DO NOT retry this batch; verify the recipients' on-chain balances first. Re-sending could double-pay."
1663
+ };
1664
+ }
1651
1665
  return {
1652
1666
  mode: "live",
1653
1667
  status: "aborted",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quackai/q402-mcp",
3
- "version": "0.8.20",
3
+ "version": "0.8.21",
4
4
  "description": "MCP server for Q402 — gasless USDC/USDT/RLUSD payments on 10 EVM chains + Chainlink CCIP USDC bridge on the eth/avax/arbitrum triangle, callable from Claude (Desktop / Code), OpenAI Codex CLI, and any other Model Context Protocol client.",
5
5
  "mcpName": "io.github.bitgett/q402-mcp",
6
6
  "keywords": [