@aifinpay/mcp 2.10.0 → 2.11.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.
@@ -0,0 +1,84 @@
1
+ import type { ToolContext } from "../server.js";
2
+ import { type McpConfig } from "../config.js";
3
+ /**
4
+ * The one read-only checklist between "server connected" and "first payment".
5
+ *
6
+ * A fresh agent (Codex + MCP 2.10.0, 2026-10-19) was told it could pay $0.10
7
+ * and never did: tools/list showed no payment tool, every start minted a new
8
+ * ephemeral wallet, and nothing said which of the owner settings was missing.
9
+ * This tool answers all of that at once and names exactly one next step, so
10
+ * the agent never has to guess the order. It signs nothing and writes nothing;
11
+ * its only network traffic is an optional balance read over the pay chain's
12
+ * RPC, and only for a persistent wallet (an ephemeral balance is meaningless).
13
+ */
14
+ /** The smallest AIFP-1 batch the backend sells, in USD. */
15
+ export declare const SMALLEST_BATCH_USD = 0.1;
16
+ export declare const PAYMENT_ENV: Readonly<{
17
+ AIFINPAY_PAYMENTS_ENABLED: "1";
18
+ AIFINPAY_GATEWAY_ORIGINS: "https://merchant.example";
19
+ AIFINPAY_GATEWAY_PATH_MODE: "direct";
20
+ AIFINPAY_MAX_USD: "0.15";
21
+ AIFINPAY_DAILY_USD: "1.00";
22
+ AIFINPAY_MAX_GAS_POL: "0.3";
23
+ }>;
24
+ export declare const INIT_COMMAND = "npx @aifinpay/mcp init";
25
+ interface Limit {
26
+ env: string;
27
+ set: boolean;
28
+ value?: string | number | string[];
29
+ }
30
+ export interface PaymentSetupStatus {
31
+ ready: boolean;
32
+ wallet: {
33
+ persistent: boolean;
34
+ source: string;
35
+ evm_address: string;
36
+ };
37
+ payments_enabled: boolean;
38
+ pay_chain: string;
39
+ pay_asset: string;
40
+ limits: {
41
+ max_usd: Limit;
42
+ daily_usd: Limit;
43
+ gas_cap: Limit;
44
+ origins: Limit;
45
+ };
46
+ /** The first owner setting the server would refuse, if payments were enabled now. */
47
+ config_error?: string;
48
+ balance: {
49
+ amount: string;
50
+ asset: string;
51
+ chain: string;
52
+ rpc: string;
53
+ } | "unknown";
54
+ balance_error?: string;
55
+ next_step: string;
56
+ }
57
+ export declare function paymentSetupStatusTool(): {
58
+ name: string;
59
+ description: string;
60
+ inputSchema: {
61
+ type: string;
62
+ properties: {};
63
+ additionalProperties: boolean;
64
+ };
65
+ annotations: {
66
+ readOnlyHint: boolean;
67
+ openWorldHint: boolean;
68
+ destructiveHint: boolean;
69
+ };
70
+ };
71
+ export declare function runPaymentSetupStatus(ctx: ToolContext, _args: Record<string, unknown>): Promise<{
72
+ content: {
73
+ type: string;
74
+ text: string;
75
+ }[];
76
+ structuredContent: PaymentSetupStatus;
77
+ }>;
78
+ /** The example block, with the owner's real origins kept when they already set some. */
79
+ export declare function paymentEnvFor(config: McpConfig): Record<string, string>;
80
+ export declare function paymentSetupStatus(ctx: ToolContext, options: {
81
+ readBalance: boolean;
82
+ }): Promise<PaymentSetupStatus>;
83
+ export {};
84
+ //# sourceMappingURL=payment-setup-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-setup-status.d.ts","sourceRoot":"","sources":["../../src/tools/payment-setup-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAyB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIrE;;;;;;;;;;GAUG;AAEH,2DAA2D;AAC3D,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAMtC,eAAO,MAAM,WAAW;;;;;;;EAOtB,CAAC;AAEH,eAAO,MAAM,YAAY,2BAA2B,CAAC;AAErD,UAAU,KAAK;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,SAAS,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,KAAK,CAAA;KAAE,CAAC;IAC7E,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,sBAAsB;IAElC,IAAI;IACJ,WAAW;IAIX,WAAW;QAAI,IAAI;QAAY,UAAU;QAAM,oBAAoB;;IACnE,WAAW;QAAI,YAAY;QAAQ,aAAa;QAAQ,eAAe;;EAE1E;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;GAG3F;AAYD,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOvE;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE;IAAE,WAAW,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAwF7B"}
@@ -0,0 +1,193 @@
1
+ import { validatePaymentConfig } from "../config.js";
2
+ import { independentNativeUsd } from "../native-price.js";
3
+ import { payChain } from "../pay-chains.js";
4
+ /**
5
+ * The one read-only checklist between "server connected" and "first payment".
6
+ *
7
+ * A fresh agent (Codex + MCP 2.10.0, 2026-10-19) was told it could pay $0.10
8
+ * and never did: tools/list showed no payment tool, every start minted a new
9
+ * ephemeral wallet, and nothing said which of the owner settings was missing.
10
+ * This tool answers all of that at once and names exactly one next step, so
11
+ * the agent never has to guess the order. It signs nothing and writes nothing;
12
+ * its only network traffic is an optional balance read over the pay chain's
13
+ * RPC, and only for a persistent wallet (an ephemeral balance is meaningless).
14
+ */
15
+ /** The smallest AIFP-1 batch the backend sells, in USD. */
16
+ export const SMALLEST_BATCH_USD = 0.1;
17
+ // The owner settings that let payable_fetch sign, as init prints them. README
18
+ // "Enable native paid GET requests" shows the same block; a test keeps the two
19
+ // equal and starts a server with it. The gas cap is a worst case at the current
20
+ // Polygon gas price, not the fee: 0.05 POL refused every payment at ~280 gwei.
21
+ export const PAYMENT_ENV = Object.freeze({
22
+ AIFINPAY_PAYMENTS_ENABLED: "1",
23
+ AIFINPAY_GATEWAY_ORIGINS: "https://merchant.example",
24
+ AIFINPAY_GATEWAY_PATH_MODE: "direct",
25
+ AIFINPAY_MAX_USD: "0.15",
26
+ AIFINPAY_DAILY_USD: "1.00",
27
+ AIFINPAY_MAX_GAS_POL: "0.3",
28
+ });
29
+ export const INIT_COMMAND = "npx @aifinpay/mcp init";
30
+ export function paymentSetupStatusTool() {
31
+ return {
32
+ name: "payment_setup_status",
33
+ description: "Read-only checklist for paying with payable_fetch: wallet (persistent or ephemeral), whether the owner enabled payments, which owner limits are set, the wallet's native balance on the pay chain when readable, and next_step — exactly one instruction for the first unmet item. " +
34
+ "First payment in five steps: (1) GET the resource and read its 402 (merchant, price, smallest batch); (2) call payment_setup_status; (3) no persistent wallet: run `npx @aifinpay/mcp init` without a terminal, put its printed env into the MCP client config, reconnect, agent_reload; (4) tell the owner the address and the amount to fund, and have the owner add the payment env (AIFINPAY_PAYMENTS_ENABLED=1, origins, USD limits, gas cap) and reconnect; (5) payable_fetch the URL. " +
35
+ "Signs nothing, moves nothing, never asks the owner's limits from the model.",
36
+ inputSchema: { type: "object", properties: {}, additionalProperties: false },
37
+ annotations: { readOnlyHint: true, openWorldHint: true, destructiveHint: false },
38
+ };
39
+ }
40
+ export async function runPaymentSetupStatus(ctx, _args) {
41
+ const status = await paymentSetupStatus(ctx, { readBalance: true });
42
+ return { content: [{ type: "text", text: JSON.stringify(status, null, 2) }], structuredContent: status };
43
+ }
44
+ function limit(env, value) {
45
+ return value === undefined ? { env, set: false } : { env, set: true, value };
46
+ }
47
+ function gasLimit(config, chain) {
48
+ if (chain.name === "solana")
49
+ return limit("AIFINPAY_MAX_FEE_LAMPORTS", config.maxFeeLamports);
50
+ if (config.maxGas !== undefined)
51
+ return limit("AIFINPAY_MAX_GAS", config.maxGas);
52
+ return limit(chain.name === "polygon" ? "AIFINPAY_MAX_GAS_POL" : "AIFINPAY_MAX_GAS", config.maxGasPol);
53
+ }
54
+ /** The example block, with the owner's real origins kept when they already set some. */
55
+ export function paymentEnvFor(config) {
56
+ return {
57
+ ...PAYMENT_ENV,
58
+ ...(config.gatewayOrigins?.length ? { AIFINPAY_GATEWAY_ORIGINS: config.gatewayOrigins.join(",") } : {}),
59
+ ...(config.maxAmountUsd !== undefined ? { AIFINPAY_MAX_USD: String(config.maxAmountUsd) } : {}),
60
+ ...(config.dailyAmountUsd !== undefined ? { AIFINPAY_DAILY_USD: String(config.dailyAmountUsd) } : {}),
61
+ };
62
+ }
63
+ export async function paymentSetupStatus(ctx, options) {
64
+ const { config } = ctx;
65
+ // The server names the identity it loaded; a context built without one is
66
+ // persistent only when it carries the journal a persistent wallet gets.
67
+ const source = ctx.walletSource ?? (ctx.paymentState ? "configured" : "ephemeral");
68
+ const persistent = source !== "ephemeral";
69
+ let chain;
70
+ try {
71
+ chain = payChain(config.payChain);
72
+ }
73
+ catch (error) {
74
+ chain = payChain(undefined);
75
+ return unready(ctx, source, chain, error.message);
76
+ }
77
+ const limits = {
78
+ max_usd: limit("AIFINPAY_MAX_USD", config.maxAmountUsd),
79
+ daily_usd: limit("AIFINPAY_DAILY_USD", config.dailyAmountUsd),
80
+ gas_cap: gasLimit(config, chain),
81
+ origins: limit("AIFINPAY_GATEWAY_ORIGINS", config.gatewayOrigins),
82
+ };
83
+ // Validation is the server's own, run as if payments were enabled: it names
84
+ // the first limit the server would refuse instead of just "disabled".
85
+ let configError;
86
+ try {
87
+ validatePaymentConfig({ ...config, paymentsEnabled: true });
88
+ }
89
+ catch (error) {
90
+ configError = error.message;
91
+ }
92
+ const status = {
93
+ ready: false,
94
+ wallet: { persistent, source, evm_address: ctx.agent.evmAddress },
95
+ payments_enabled: Boolean(config.paymentsEnabled),
96
+ pay_chain: chain.name,
97
+ pay_asset: config.payAsset ?? chain.native,
98
+ limits,
99
+ ...(configError ? { config_error: configError } : {}),
100
+ balance: "unknown",
101
+ next_step: "",
102
+ };
103
+ if (!persistent) {
104
+ status.next_step =
105
+ `No persistent wallet: this server started with an ephemeral one — do not fund ${ctx.agent.evmAddress}. ` +
106
+ `Run \`${INIT_COMMAND}\` (without a terminal it prints JSON; copy its "env" into this server's env in the MCP client config), reconnect the server, then call agent_reload and payment_setup_status again.`;
107
+ return status;
108
+ }
109
+ if (!config.paymentsEnabled || configError) {
110
+ const block = JSON.stringify(paymentEnvFor(config));
111
+ status.next_step =
112
+ (configError && config.paymentsEnabled
113
+ ? `Owner setting refused: ${configError}. `
114
+ : `Payments are off until the owner enables them. `) +
115
+ `Have the owner add this to the server's env in the MCP client config (their real site origin and limits, not the example), then reconnect: ${block}` +
116
+ (configError && !config.paymentsEnabled ? ` Currently missing: ${configError}` : "");
117
+ return status;
118
+ }
119
+ const gasCap = Number(status.limits.gas_cap.value);
120
+ if (options.readBalance && chain.name !== "solana") {
121
+ const rpc = config.rpcUrl ?? chain.defaultRpc;
122
+ try {
123
+ const balance = await nativeBalance(ctx, rpc, ctx.agent.evmAddress);
124
+ status.balance = { amount: formatNative(balance), asset: chain.native, chain: chain.name, rpc };
125
+ const price = await independentNativeUsd({
126
+ fetchImpl: (input, init) => ctx.agent.inner.fetchImpl(input, init),
127
+ chain,
128
+ rpc,
129
+ }).catch(() => undefined);
130
+ const batchNative = price ? SMALLEST_BATCH_USD / price.usd : 0;
131
+ const needed = batchNative + gasCap;
132
+ if (Number(status.balance.amount) < needed) {
133
+ status.next_step =
134
+ `Fund ${ctx.agent.evmAddress} on ${chain.label} with about ${needed.toFixed(2)} ${chain.native}` +
135
+ (price
136
+ ? ` (the smallest batch is $${SMALLEST_BATCH_USD.toFixed(2)} ≈ ${batchNative.toFixed(4)} ${chain.native} plus up to ${gasCap} ${chain.native} gas; it holds ${status.balance.amount})`
137
+ : ` (at least the gas cap of ${gasCap} ${chain.native} plus the batch price; it holds ${status.balance.amount})`) +
138
+ `, then call payment_setup_status again.`;
139
+ return status;
140
+ }
141
+ }
142
+ catch (error) {
143
+ status.balance_error = `balance not read from ${rpc}: ${error.message}`;
144
+ }
145
+ }
146
+ status.ready = true;
147
+ status.next_step =
148
+ `Ready. Call payable_fetch({"url": "<HTTPS resource on ${config.gatewayOrigins.join(" or ")}>"}); ` +
149
+ `it pays at most $${config.maxAmountUsd} per call and $${config.dailyAmountUsd} per 24 hours, with gas capped at ${status.limits.gas_cap.value} ${chain.native}.` +
150
+ (status.balance === "unknown"
151
+ ? ` The wallet must hold the batch price plus up to the gas cap in ${chain.native} on ${chain.label}.`
152
+ : "");
153
+ return status;
154
+ }
155
+ function unready(ctx, source, chain, error) {
156
+ return {
157
+ ready: false,
158
+ wallet: { persistent: source !== "ephemeral", source, evm_address: ctx.agent.evmAddress },
159
+ payments_enabled: Boolean(ctx.config.paymentsEnabled),
160
+ pay_chain: String(ctx.config.payChain),
161
+ pay_asset: ctx.config.payAsset ?? chain.native,
162
+ limits: {
163
+ max_usd: limit("AIFINPAY_MAX_USD", ctx.config.maxAmountUsd),
164
+ daily_usd: limit("AIFINPAY_DAILY_USD", ctx.config.dailyAmountUsd),
165
+ gas_cap: limit("AIFINPAY_MAX_GAS", ctx.config.maxGas),
166
+ origins: limit("AIFINPAY_GATEWAY_ORIGINS", ctx.config.gatewayOrigins),
167
+ },
168
+ config_error: error,
169
+ balance: "unknown",
170
+ next_step: `Owner setting refused: ${error}. The owner fixes AIFINPAY_PAY_CHAIN in the MCP client config and reconnects.`,
171
+ };
172
+ }
173
+ /** eth_getBalance over the pay chain's RPC: a read, through the same guarded fetch as every other request. */
174
+ async function nativeBalance(ctx, rpc, address) {
175
+ const response = await ctx.agent.inner.fetchImpl(rpc, {
176
+ method: "POST",
177
+ headers: { "content-type": "application/json" },
178
+ body: JSON.stringify({ jsonrpc: "2.0", id: 1, method: "eth_getBalance", params: [address, "latest"] }),
179
+ signal: AbortSignal.timeout(ctx.config.timeoutMs ?? 10_000),
180
+ });
181
+ if (!response.ok)
182
+ throw new Error(`HTTP ${response.status}`);
183
+ const body = (await response.json());
184
+ if (typeof body.result !== "string" || !/^0x[0-9a-fA-F]+$/.test(body.result))
185
+ throw new Error(body.error?.message ?? "malformed eth_getBalance result");
186
+ return BigInt(body.result);
187
+ }
188
+ function formatNative(wei) {
189
+ const whole = wei / 10n ** 18n;
190
+ const fraction = (wei % 10n ** 18n).toString().padStart(18, "0").slice(0, 4);
191
+ return `${whole}.${fraction}`;
192
+ }
193
+ //# sourceMappingURL=payment-setup-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-setup-status.js","sourceRoot":"","sources":["../../src/tools/payment-setup-status.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"production-control.d.ts","sourceRoot":"","sources":["../../src/tools/production-control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"production-control.d.ts","sourceRoot":"","sources":["../../src/tools/production-control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AA4ChD,wBAAgB,wBAAwB;IAEpC,IAAI;IACJ,WAAW;IAGX,WAAW;QACT,IAAI;QACJ,UAAU;YACR,UAAU;gBACR,IAAI;gBACJ,WAAW;;;QAGf,QAAQ;;IAEV,WAAW;QAAI,YAAY;QAAQ,aAAa;QAAS,eAAe;;IACxE,YAAY;QAAI,IAAI;;EAEvB;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAS5F;AAED,wBAAgB,oBAAoB;IAEhC,IAAI;IACJ,WAAW;IAIX,WAAW;QACT,IAAI;QACJ,UAAU;YACR,WAAW;gBAAI,IAAI;gBAAY,IAAI;;;;IAGvC,WAAW;QAAI,YAAY;QAAQ,aAAa;QAAS,eAAe;;IACxE,YAAY;QAAI,IAAI;;EAEvB;AAqDD,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAoDxF;AAED,wBAAgB,qBAAqB;IAEjC,IAAI;IACJ,WAAW;IAGX,WAAW;QACT,IAAI;QACJ,UAAU;YACR,WAAW;gBAAI,IAAI;gBAAY,IAAI;;YACnC,KAAK;gBAAI,IAAI;gBAAY,IAAI;;YAC7B,KAAK;gBACH,IAAI;gBACJ,WAAW;;YAEb,YAAY;gBAAI,IAAI;gBAAY,WAAW;;YAC3C,eAAe;gBAAI,IAAI;gBAAY,WAAW;;YAC9C,QAAQ;gBAAI,IAAI;;YAChB,WAAW;gBACT,IAAI;gBACJ,WAAW;;;QAGf,QAAQ;;IAEV,WAAW;QAAI,YAAY;QAAQ,aAAa;QAAS,eAAe;;IACxE,YAAY;QAAI,IAAI;;EAEvB;AAED,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAyBzF;AAQD,wBAAgB,oBAAoB;IAEhC,IAAI;IACJ,WAAW;IAIX,WAAW;QACT,IAAI;QACJ,UAAU;YACR,WAAW;gBAAI,IAAI;gBAAY,IAAI;;YACnC,KAAK;gBAAI,IAAI;gBAAY,IAAI;;YAC7B,KAAK;gBACH,IAAI;gBACJ,IAAI;gBACJ,WAAW;;YAEb,YAAY;gBACV,IAAI;gBACJ,WAAW;;YAEb,eAAe;gBACb,IAAI;gBACJ,WAAW;;YAEb,QAAQ;gBAAI,IAAI;;YAChB,WAAW;gBACT,IAAI;gBACJ,WAAW;;;QAGf,QAAQ;;IAEV,WAAW;QAAI,YAAY;QAAQ,aAAa;QAAS,eAAe;;IACxE,YAAY;QAAI,IAAI;;EAEvB;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAoCxF;AAQD,wBAAgB,oBAAoB;IAEhC,IAAI;IACJ,WAAW;IAIX,WAAW;QACT,IAAI;QACJ,UAAU;YACR,WAAW;gBAAI,IAAI;gBAAY,IAAI;;YACnC,KAAK;gBAAI,IAAI;gBAAY,IAAI;;YAC7B,KAAK;gBACH,IAAI;gBACJ,IAAI;gBACJ,WAAW;;YAEb,YAAY;gBAAI,IAAI;gBAAY,WAAW;;YAC3C,eAAe;gBACb,IAAI;gBACJ,WAAW;;YAEb,QAAQ;gBAAI,IAAI;;YAChB,WAAW;gBACT,IAAI;gBACJ,WAAW;;;QAGf,QAAQ;;IAEV,WAAW;QAAI,YAAY;QAAQ,aAAa;QAAS,eAAe;;IACxE,YAAY;QAAI,IAAI;;EAEvB;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAoCxF"}
@@ -1,4 +1,6 @@
1
+ import { PAYMENT_CHAINS, V14_DEPLOYMENTS } from "@aifinpay/agent";
1
2
  import { apiUrl } from "../api.js";
3
+ import { PAY_CHAINS } from "../pay-chains.js";
2
4
  const DEFAULT_BASE = "https://aifinpay.io";
3
5
  const ROUTES = new Set(["AIFP-1", "AIFP-2"]);
4
6
  const EVM_CHAINS = new Set([
@@ -68,9 +70,9 @@ export async function runAgentPassportResolve(ctx, args) {
68
70
  export function settlementRoutesTool() {
69
71
  return {
70
72
  name: "settlement_routes",
71
- description: "Read AiFinPay's currently runtime-verified v1.3 settlement routes. " +
72
- "AIFP-1 is merchant monetisation (99% merchant / 1% AiFinPay / 0% creator). " +
73
- "AIFP-2/x402 is 100% provider / 0% AiFinPay / 0% creator.",
73
+ description: "Where an agent can pay today. Lists the splitter v1.4 AIFP-1 routes payable_fetch uses first — one per chain the backend serves (read from the issuer's /api/health and /.well-known/x402.json, pinned against the SDK's deployment registry) with chain_id, assets, quote_endpoint and pay_endpoint — then the legacy splitter v1.3 routes from GET /v1/settlement/routes under legacy_v13. " +
74
+ '"live": true means payable now through payable_fetch on that chain; a v1.3 entry being disabled says nothing about v1.4. ' +
75
+ "AIFP-1 is merchant monetisation (99% merchant / 1% AiFinPay / 0% creator). AIFP-2/x402 is 100% provider / 0% AiFinPay / 0% creator.",
74
76
  inputSchema: {
75
77
  type: "object",
76
78
  properties: {
@@ -81,16 +83,111 @@ export function settlementRoutesTool() {
81
83
  outputSchema: { type: "object" },
82
84
  };
83
85
  }
86
+ /** Chain names the discovery documents may use for a served chain. */
87
+ function servedAliases(chain) {
88
+ return [chain, `${chain}-mainnet`];
89
+ }
90
+ /** Every key and string value in a JSON document, lower-cased, to a bounded depth. */
91
+ function stringsIn(value, out, depth = 0) {
92
+ if (depth > 8)
93
+ return out;
94
+ if (typeof value === "string")
95
+ out.add(value.trim().toLowerCase());
96
+ else if (Array.isArray(value))
97
+ for (const entry of value)
98
+ stringsIn(entry, out, depth + 1);
99
+ else if (value && typeof value === "object")
100
+ for (const [key, entry] of Object.entries(value)) {
101
+ out.add(key.trim().toLowerCase());
102
+ stringsIn(entry, out, depth + 1);
103
+ }
104
+ return out;
105
+ }
106
+ /**
107
+ * Which v1.4 chains the backend serves, from its own discovery documents.
108
+ *
109
+ * The 2026-10-19 agent test read GET /v1/settlement/routes, which describes only
110
+ * splitter v1.3, saw every route disabled and concluded Polygon was off. The
111
+ * v1.4 path (/v1/quote → /v1/pay) is published on the issuer's health and
112
+ * x402 documents instead, so that is what decides "live" here. Returns null
113
+ * when neither document names a known chain, so a document the server cannot
114
+ * read or does not understand is reported as unknown, never as "not served".
115
+ */
116
+ async function servedV14Chains(ctx) {
117
+ const found = new Set();
118
+ const sources = [];
119
+ for (const path of ["/api/health", "/.well-known/x402.json"]) {
120
+ const url = apiUrl(base(ctx), path);
121
+ try {
122
+ const response = await ctx.agent.inner.fetchImpl(url);
123
+ const body = response.ok ? await response.json() : null;
124
+ if (body === null) {
125
+ sources.push(`${url}: HTTP ${response.status}`);
126
+ continue;
127
+ }
128
+ const strings = stringsIn(body, new Set());
129
+ for (const chain of Object.keys(PAY_CHAINS))
130
+ if (servedAliases(chain).some((alias) => strings.has(alias)))
131
+ found.add(chain);
132
+ sources.push(`${url}: read`);
133
+ }
134
+ catch (e) {
135
+ sources.push(`${url}: ${e.message}`);
136
+ }
137
+ }
138
+ return { chains: found.size ? found : null, sources };
139
+ }
84
140
  export async function runSettlementRoutes(ctx, args) {
85
141
  const route = args.route_class == null ? "" : String(args.route_class).toUpperCase();
86
142
  if (route && !ROUTES.has(route))
87
143
  return errorResult("route_class must be AIFP-1 or AIFP-2");
144
+ const served = await servedV14Chains(ctx);
145
+ // payable_fetch quotes and pays at the API origin, not the site origin.
146
+ const apiBase = (ctx.config.baseUrl ?? "https://api.aifinpay.io").replace(/\/+$/, "");
147
+ const v14 = route === "AIFP-2"
148
+ ? []
149
+ : Object.keys(PAY_CHAINS)
150
+ .map((name) => {
151
+ const chain = PAY_CHAINS[name];
152
+ const deployment = V14_DEPLOYMENTS[name];
153
+ const enabled = deployment?.environment === "prod" && deployment.settlementEnabled === true;
154
+ const servedNow = served.chains ? served.chains.has(name) : "unknown";
155
+ return {
156
+ route_class: "AIFP-1",
157
+ chain: name,
158
+ chain_id: deployment?.chainId ?? PAYMENT_CHAINS[name].chainId,
159
+ label: chain.label,
160
+ assets: [chain.native, ...(deployment?.splitter.assets.map((asset) => asset.symbol) ?? [])],
161
+ splitter_version: "1.4",
162
+ splitter: deployment?.splitter.address,
163
+ deployment_enabled: enabled,
164
+ served_by_backend: servedNow,
165
+ live: enabled && servedNow !== false,
166
+ quote_endpoint: `${apiBase}/v1/quote`,
167
+ pay_endpoint: `${apiBase}/v1/pay`,
168
+ pay_with: "payable_fetch",
169
+ };
170
+ })
171
+ // Served chains first, Polygon (the default pay chain) ahead of the rest.
172
+ .sort((a, b) => Number(b.live) - Number(a.live) || Number(a.chain !== "polygon") - Number(b.chain !== "polygon"));
173
+ let legacy;
88
174
  try {
89
- return result(await api(ctx, `/v1/settlement/routes${route ? `?route_class=${encodeURIComponent(route)}` : ""}`));
175
+ legacy = await api(ctx, `/v1/settlement/routes${route ? `?route_class=${encodeURIComponent(route)}` : ""}`);
90
176
  }
91
177
  catch (e) {
92
- return errorResult(`Settlement route lookup failed: ${e.message}`);
178
+ legacy = { error: `Settlement route lookup failed: ${e.message}` };
93
179
  }
180
+ return result({
181
+ v14: {
182
+ note: "Splitter v1.4 AIFP-1 routes: what payable_fetch pays with (402 → /v1/quote → signed transaction → /v1/pay → receipt). live:true is payable now on that chain; the owner selects it with AIFINPAY_PAY_CHAIN (polygon by default).",
183
+ served_from: served.sources,
184
+ routes: v14,
185
+ },
186
+ legacy_v13: {
187
+ note: "Splitter v1.3 routes from GET /v1/settlement/routes. Not used by payable_fetch; a disabled v1.3 route does not mean the chain cannot be paid on v1.4.",
188
+ ...(legacy && typeof legacy === "object" ? legacy : { body: legacy }),
189
+ },
190
+ });
94
191
  }
95
192
  export function settlementInvoiceTool() {
96
193
  return {
@@ -167,7 +264,10 @@ export function settlementSolanaTool() {
167
264
  enum: [...SOLANA_ASSETS],
168
265
  description: "SOL (native) or USDC (SPL token).",
169
266
  },
170
- gross_amount: { type: "string", description: "Gross payer amount in base units (lamports for SOL, 6 decimals for USDC)." },
267
+ gross_amount: {
268
+ type: "string",
269
+ description: "Gross payer amount in base units (lamports for SOL, 6 decimals for USDC).",
270
+ },
171
271
  merchant_wallet: {
172
272
  type: "string",
173
273
  description: "Merchant/provider Solana base58 public key.",
@@ -1 +1 @@
1
- {"version":3,"file":"production-control.js","sourceRoot":"","sources":["../../src/tools/production-control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"production-control.js","sourceRoot":"","sources":["../../src/tools/production-control.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aifinpay/mcp",
3
- "version": "2.10.0",
3
+ "version": "2.11.0",
4
4
  "mcpName": "io.github.daochild/aifinpay",
5
5
  "description": "AiFinPay MCP: persistent local agent wallets, owner-configured EVM and Solana payment adapters, durable budgets and receipt recovery.",
6
6
  "type": "module",
@@ -77,7 +77,7 @@
77
77
  "bugs": "https://github.com/AiFinPay/sdk/issues",
78
78
  "dependencies": {
79
79
  "@aifinpay/agent": "^2.8.0",
80
- "@aifinpay/skill": "^2.9.0",
80
+ "@aifinpay/skill": "^2.10.0",
81
81
  "@modelcontextprotocol/sdk": "^1.0.0",
82
82
  "bs58": "^6.0.0",
83
83
  "tweetnacl": "^1.0.3"