@quackai/q402-mcp 0.5.3 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.js +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -120,8 +120,8 @@ The server has no client-specific code. If your client speaks stdio MCP, point i
|
|
|
120
120
|
| `q402_pay` | API key + private key + flag | Send a gasless payment to a single recipient. **Sandbox by default** — see [Sandbox vs live mode](#sandbox-vs-live-mode). |
|
|
121
121
|
| `q402_batch_pay` | API key + private key + flag | Send a gasless payment to **multiple** recipients in one call on a single chain × token. Trial keys: 5 rows max. Paid keys: 20 rows max. **Auto-routing:** same rule as `q402_pay` (BNB + Trial key set ⇒ Trial, else Multichain). **Ambiguity gate:** 6+ recipient BNB batches with Trial set return `status="ambiguous"` instead of executing — the agent asks the user to pick `keyScope="trial"` (first 5), `"multichain"` (all paid), or two calls (5 free + remainder paid). **Supported chains: avax, bnb, eth, mantle, injective, monad, scroll** (default EIP-7702 mode). xlayer + stable are NOT batchable — use `q402_pay` in a loop for those. Same sandbox gating as `q402_pay`. **Rate-limit note:** the inner `/api/relay` budget (30/min per key) is consumed per row, so a paid 20-row batch leaves ~10 inner slots for the next minute. |
|
|
122
122
|
| `q402_receipt` | none | Look up a Trust Receipt by `rct_…` id and locally verify its ECDSA signature against the relayer EOA. Returns the public settlement record + a `verified` boolean. *receiptId-only today; tx-hash lookup reserved for a future release.* |
|
|
123
|
-
| `q402_wallet_status` | private key | Per-chain EIP-7702 delegation status for the EOA derived from `Q402_PRIVATE_KEY`, across all 9 Q402 chains. Read-only — no on-chain action, no quota consumption.
|
|
124
|
-
| `q402_clear_delegation` |
|
|
123
|
+
| `q402_wallet_status` | private key | Per-chain EIP-7702 delegation status for the EOA derived from `Q402_PRIVATE_KEY`, across all 9 Q402 chains. Read-only — no on-chain action, no quota consumption. Useful as the diagnostic step before `q402_clear_delegation`. |
|
|
124
|
+
| `q402_clear_delegation` | private key | Clear the EIP-7702 delegation on a single chain for the configured wallet. Local signing with `Q402_PRIVATE_KEY`; Q402 sponsors the on-chain TX so the user pays $0 gas. After clearing, the next `q402_pay` on that chain recreates a fresh delegation automatically. |
|
|
125
125
|
|
|
126
126
|
`q402_pay` and `q402_batch_pay` follow a "confirm in chat first" contract: the tool description instructs the model to never call it without explicit user approval of the recipient address(es), amount(s), chain, and token. For batch calls the user must approve the **full batch**, not the individual rows.
|
|
127
127
|
|
package/dist/index.js
CHANGED
|
@@ -1295,7 +1295,7 @@ async function runWalletStatus() {
|
|
|
1295
1295
|
}
|
|
1296
1296
|
var WALLET_STATUS_TOOL = {
|
|
1297
1297
|
name: "q402_wallet_status",
|
|
1298
|
-
description: "Report the EIP-7702 delegation status of your Q402 wallet (the EOA derived from Q402_PRIVATE_KEY) across all 9 Q402-supported chains. Returns per-chain { delegated, impl } and a one-line summary. Read-only \u2014 no signing, no on-chain TX, no quota consumption.
|
|
1298
|
+
description: "Report the EIP-7702 delegation status of your Q402 wallet (the EOA derived from Q402_PRIVATE_KEY) across all 9 Q402-supported chains. Returns per-chain { delegated, impl } and a one-line summary. Read-only \u2014 no signing, no on-chain TX, no quota consumption. Pair with q402_clear_delegation when the user wants to reset a specific chain. Requires Q402_PRIVATE_KEY in env (same as q402_pay).",
|
|
1299
1299
|
inputSchema: {
|
|
1300
1300
|
type: "object",
|
|
1301
1301
|
properties: {},
|
|
@@ -1429,7 +1429,7 @@ async function runClearDelegation(input) {
|
|
|
1429
1429
|
}
|
|
1430
1430
|
var CLEAR_DELEGATION_TOOL = {
|
|
1431
1431
|
name: "q402_clear_delegation",
|
|
1432
|
-
description: "Clear the EIP-7702 delegation on a Q402 chain for the configured wallet.
|
|
1432
|
+
description: "Clear the EIP-7702 delegation on a Q402 chain for the configured wallet. Call this only when the user explicitly asks to reset or clean up their Q402 wallet on a chain \u2014 the next q402_pay will recreate the delegation automatically, so calling clear right before another payment just wastes a TX. Pair with q402_wallet_status first to see which chains actually have an active delegation. Signing happens locally with Q402_PRIVATE_KEY (same key q402_pay uses); Q402 sponsors the on-chain TX so the user pays zero gas.",
|
|
1433
1433
|
inputSchema: {
|
|
1434
1434
|
type: "object",
|
|
1435
1435
|
properties: {
|
|
@@ -1446,7 +1446,7 @@ var CLEAR_DELEGATION_TOOL = {
|
|
|
1446
1446
|
|
|
1447
1447
|
// src/index.ts
|
|
1448
1448
|
var PACKAGE_NAME = "@quackai/q402-mcp";
|
|
1449
|
-
var PACKAGE_VERSION = "0.5.
|
|
1449
|
+
var PACKAGE_VERSION = "0.5.4";
|
|
1450
1450
|
function jsonText(value) {
|
|
1451
1451
|
return { type: "text", text: JSON.stringify(value, null, 2) };
|
|
1452
1452
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quackai/q402-mcp",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.4",
|
|
4
4
|
"description": "MCP server for Q402 — gasless USDC, USDT, and RLUSD payments across 9 EVM chains, 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": [
|