agentpay-mcp 4.1.1 → 4.1.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.
Files changed (34) hide show
  1. package/README.md +262 -2
  2. package/dist/index.js +19 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/tools/otel-budget.d.ts +265 -0
  5. package/dist/tools/otel-budget.d.ts.map +1 -0
  6. package/dist/tools/otel-budget.js +399 -0
  7. package/dist/tools/otel-budget.js.map +1 -0
  8. package/dist/tools/session.d.ts.map +1 -1
  9. package/dist/tools/session.js +2 -0
  10. package/dist/tools/session.js.map +1 -1
  11. package/dist/tools/x402.d.ts.map +1 -1
  12. package/dist/tools/x402.js +58 -0
  13. package/dist/tools/x402.js.map +1 -1
  14. package/dist/utils/client.d.ts.map +1 -1
  15. package/dist/utils/client.js +8 -1
  16. package/dist/utils/client.js.map +1 -1
  17. package/dist/utils/x402-networks.d.ts +12 -0
  18. package/dist/utils/x402-networks.d.ts.map +1 -0
  19. package/dist/utils/x402-networks.js +30 -0
  20. package/dist/utils/x402-networks.js.map +1 -0
  21. package/docs/channel-agent-affiliate-controls.md +142 -0
  22. package/docs/hitl-reference-architecture.md +140 -0
  23. package/docs/security-posture.md +74 -0
  24. package/docs/trust-architecture.md +127 -0
  25. package/docs/vercel-deployment-hardening.md +115 -0
  26. package/docs/whatsapp-smb-agent-controls.md +130 -0
  27. package/docs/x402-batch-settlement-channels.md +199 -0
  28. package/docs/x402-bazaar-observability.md +209 -0
  29. package/docs/x402-chain-drift-compatibility.md +63 -0
  30. package/docs/x402-mcp-funding-ux-benchmark.md +36 -0
  31. package/docs/x402-multi-sdk-batch-settlement-parity.md +167 -0
  32. package/docs/x402-scanner-readiness.md +110 -0
  33. package/docs/x402-tvm-readiness.md +53 -0
  34. package/package.json +6 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"otel-budget.d.ts","sourceRoot":"","sources":["../../src/tools/otel-budget.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,399 @@
1
+ "use strict";
2
+ /**
3
+ * otel-budget.ts — OpenTelemetry Budget Circuit-Breaker for AWS AgentCore
4
+ *
5
+ * Reads OTel span data from AgentCore-instrumented agents, applies per-agent
6
+ * and per-task budget policies against accumulated spend, emits budget
7
+ * enforcement decisions as OTel events, and supports circuit-breaker patterns
8
+ * (auto-kill agent runs exceeding budget thresholds).
9
+ *
10
+ * Why this exists: AWS AgentCore Policy Controls (GA March 2026) provide
11
+ * observability and guardrails but NO native per-agent/per-session spend cap
12
+ * APIs. This module fills that gap by sitting between the OTel telemetry
13
+ * pipeline and agentpay-mcp's existing budget enforcement.
14
+ *
15
+ * @module otel-budget
16
+ * @since 4.2.0
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.otelBudgetStatusTool = exports.OTelBudgetStatusSchema = exports.otelEvaluateSpendTool = exports.OTelEvaluateSpendSchema = exports.otelRegisterPolicyTool = exports.OTelRegisterPolicySchema = void 0;
20
+ exports._resetOTelBudgetState = _resetOTelBudgetState;
21
+ exports.registerPolicy = registerPolicy;
22
+ exports.evaluateSpan = evaluateSpan;
23
+ exports.invokeKillCallback = invokeKillCallback;
24
+ exports.decisionToOTelEvent = decisionToOTelEvent;
25
+ exports.getDecisionHistory = getDecisionHistory;
26
+ exports.listPolicies = listPolicies;
27
+ exports.handleOTelRegisterPolicy = handleOTelRegisterPolicy;
28
+ exports.handleOTelEvaluateSpend = handleOTelEvaluateSpend;
29
+ exports.handleOTelBudgetStatus = handleOTelBudgetStatus;
30
+ const zod_1 = require("zod");
31
+ const format_js_1 = require("../utils/format.js");
32
+ // ─── In-memory stores ──────────────────────────────────────────────────────
33
+ const _policies = new Map();
34
+ const _spendLedger = [];
35
+ const _decisions = [];
36
+ /** Build a policy key from agentId + optional taskId */
37
+ function policyKey(agentId, taskId) {
38
+ return taskId ? `${agentId}::${taskId}` : agentId;
39
+ }
40
+ /** Reset all state — useful for testing */
41
+ function _resetOTelBudgetState() {
42
+ _policies.clear();
43
+ _spendLedger.length = 0;
44
+ _decisions.length = 0;
45
+ }
46
+ // ─── Core Logic ────────────────────────────────────────────────────────────
47
+ /**
48
+ * Register a budget policy for an agent or agent+task combination.
49
+ */
50
+ function registerPolicy(policy) {
51
+ const key = policyKey(policy.agentId, policy.taskId);
52
+ _policies.set(key, policy);
53
+ }
54
+ function getApplicablePolicy(agentId, taskId) {
55
+ const taskPolicy = taskId ? _policies.get(policyKey(agentId, taskId)) : undefined;
56
+ const agentPolicy = _policies.get(policyKey(agentId));
57
+ return taskPolicy ?? agentPolicy;
58
+ }
59
+ /**
60
+ * Get accumulated spend for an agent within the policy's rolling window.
61
+ */
62
+ function getAccumulatedSpend(agentId, taskId, windowMs) {
63
+ const now = Date.now();
64
+ const cutoff = windowMs && windowMs > 0 ? now - windowMs : 0;
65
+ return _spendLedger
66
+ .filter((r) => r.agentId === agentId &&
67
+ (taskId === undefined || r.taskId === taskId) &&
68
+ r.timestamp >= cutoff)
69
+ .reduce((sum, r) => sum + r.amountUsd, 0);
70
+ }
71
+ /**
72
+ * Process an OTel span and evaluate budget. Returns a BudgetDecision.
73
+ *
74
+ * This is the main entry point: feed it span attributes from an
75
+ * AgentCore-instrumented agent, and it returns an enforcement decision.
76
+ */
77
+ function evaluateSpan(attrs) {
78
+ const agentId = attrs['agentcore.agent.id'];
79
+ if (!agentId)
80
+ return null;
81
+ const taskId = attrs['agentcore.task.id'];
82
+ const costUsd = attrs['agentcore.cost.usd'] ?? attrs['gen_ai.usage.cost'] ?? 0;
83
+ if (costUsd <= 0)
84
+ return null;
85
+ // Record spend
86
+ const record = {
87
+ agentId,
88
+ taskId,
89
+ amountUsd: costUsd,
90
+ timestamp: Date.now(),
91
+ spanId: attrs.spanId ?? 'unknown',
92
+ traceId: attrs.traceId ?? 'unknown',
93
+ };
94
+ _spendLedger.push(record);
95
+ // Find applicable policy (task-specific first, then agent-level)
96
+ const policy = getApplicablePolicy(agentId, taskId);
97
+ if (!policy) {
98
+ // No policy = allow (but we still recorded the spend)
99
+ return {
100
+ agentId,
101
+ taskId,
102
+ action: 'allow',
103
+ accumulatedSpendUsd: getAccumulatedSpend(agentId, taskId),
104
+ budgetLimitUsd: Infinity,
105
+ remainingUsd: Infinity,
106
+ utilizationPct: 0,
107
+ reason: 'No budget policy registered for this agent',
108
+ timestamp: Date.now(),
109
+ };
110
+ }
111
+ const spendScopeTaskId = policy.taskId === undefined ? undefined : taskId;
112
+ const accumulated = getAccumulatedSpend(agentId, spendScopeTaskId, policy.windowMs);
113
+ const remaining = Math.max(0, policy.maxSpendUsd - accumulated);
114
+ const utilization = (accumulated / policy.maxSpendUsd) * 100;
115
+ let action = 'allow';
116
+ let reason = 'Within budget';
117
+ if (accumulated > policy.maxSpendUsd) {
118
+ action = policy.breachAction;
119
+ reason = `Budget exceeded: $${accumulated.toFixed(4)} / $${policy.maxSpendUsd.toFixed(4)} (${utilization.toFixed(1)}%)`;
120
+ }
121
+ else if (utilization >= 90) {
122
+ action = 'warn';
123
+ reason = `Approaching budget limit: $${accumulated.toFixed(4)} / $${policy.maxSpendUsd.toFixed(4)} (${utilization.toFixed(1)}%)`;
124
+ }
125
+ const decision = {
126
+ agentId,
127
+ taskId,
128
+ action,
129
+ accumulatedSpendUsd: accumulated,
130
+ budgetLimitUsd: policy.maxSpendUsd,
131
+ remainingUsd: remaining,
132
+ utilizationPct: utilization,
133
+ reason,
134
+ timestamp: Date.now(),
135
+ };
136
+ _decisions.push(decision);
137
+ return decision;
138
+ }
139
+ async function invokeKillCallback(policy, decision) {
140
+ if (decision.action !== 'kill' || !policy.killCallbackUrl) {
141
+ return null;
142
+ }
143
+ try {
144
+ const response = await fetch(policy.killCallbackUrl, {
145
+ method: 'POST',
146
+ headers: {
147
+ 'content-type': 'application/json',
148
+ },
149
+ body: JSON.stringify({
150
+ event: 'agentpay.budget.kill',
151
+ decision,
152
+ policy: {
153
+ agentId: policy.agentId,
154
+ taskId: policy.taskId,
155
+ maxSpendUsd: policy.maxSpendUsd,
156
+ windowMs: policy.windowMs,
157
+ breachAction: policy.breachAction,
158
+ },
159
+ }),
160
+ });
161
+ return {
162
+ attempted: true,
163
+ ok: response.ok,
164
+ status: response.status,
165
+ ...(response.ok ? {} : { error: `Kill callback returned HTTP ${response.status}` }),
166
+ };
167
+ }
168
+ catch (error) {
169
+ return {
170
+ attempted: true,
171
+ ok: false,
172
+ error: error instanceof Error ? error.message : String(error),
173
+ };
174
+ }
175
+ }
176
+ /**
177
+ * Convert a BudgetDecision to OTel-compatible event attributes.
178
+ * These can be emitted as span events for AgentCore dashboard visibility.
179
+ */
180
+ function decisionToOTelEvent(decision) {
181
+ return {
182
+ 'event.name': 'agentpay.budget.decision',
183
+ 'agentpay.agent_id': decision.agentId,
184
+ 'agentpay.task_id': decision.taskId ?? '',
185
+ 'agentpay.action': decision.action,
186
+ 'agentpay.accumulated_spend_usd': decision.accumulatedSpendUsd,
187
+ 'agentpay.budget_limit_usd': decision.budgetLimitUsd,
188
+ 'agentpay.remaining_usd': decision.remainingUsd,
189
+ 'agentpay.utilization_pct': decision.utilizationPct,
190
+ 'agentpay.reason': decision.reason,
191
+ 'agentpay.circuit_breaker_tripped': decision.action === 'kill',
192
+ };
193
+ }
194
+ /**
195
+ * Get recent decisions for an agent (for dashboard/audit).
196
+ */
197
+ function getDecisionHistory(agentId, limit = 50) {
198
+ return _decisions
199
+ .filter((d) => d.agentId === agentId)
200
+ .slice(-limit);
201
+ }
202
+ /**
203
+ * Get all registered policies (for introspection).
204
+ */
205
+ function listPolicies() {
206
+ return Array.from(_policies.values());
207
+ }
208
+ // ─── MCP Tool Definitions ──────────────────────────────────────────────────
209
+ exports.OTelRegisterPolicySchema = zod_1.z.object({
210
+ agentId: zod_1.z.string().describe('Agent or session identifier from AgentCore'),
211
+ taskId: zod_1.z.string().optional().describe('Optional task-level identifier'),
212
+ maxSpendUsd: zod_1.z.number().positive().describe('Maximum spend in USD'),
213
+ windowMs: zod_1.z
214
+ .number()
215
+ .min(0)
216
+ .default(0)
217
+ .describe('Rolling window in ms (0 = lifetime budget)'),
218
+ breachAction: zod_1.z
219
+ .enum(['warn', 'block', 'kill'])
220
+ .default('block')
221
+ .describe('Action on budget breach: warn, block, or kill (circuit-breaker)'),
222
+ killCallbackUrl: zod_1.z
223
+ .string()
224
+ .optional()
225
+ .describe('Webhook URL to invoke when circuit-breaker trips (kill action)'),
226
+ });
227
+ exports.otelRegisterPolicyTool = {
228
+ name: 'otel_register_budget_policy',
229
+ description: 'Register a budget policy for an AWS AgentCore agent or task. ' +
230
+ 'When OTel spans report costs exceeding this budget, agentpay-mcp will ' +
231
+ 'enforce the configured action (warn/block/kill circuit-breaker). ' +
232
+ 'This fills the gap left by AgentCore Policy Controls which provide ' +
233
+ 'observability but no native per-agent spend caps.',
234
+ inputSchema: {
235
+ type: 'object',
236
+ properties: {
237
+ agentId: { type: 'string', description: 'Agent/session ID from AgentCore' },
238
+ taskId: { type: 'string', description: 'Optional task-level ID' },
239
+ maxSpendUsd: { type: 'number', description: 'Max spend in USD' },
240
+ windowMs: { type: 'number', description: 'Rolling window in ms (0 = lifetime)' },
241
+ breachAction: {
242
+ type: 'string',
243
+ enum: ['warn', 'block', 'kill'],
244
+ description: 'Action on breach',
245
+ },
246
+ killCallbackUrl: { type: 'string', description: 'Circuit-breaker webhook URL' },
247
+ },
248
+ required: ['agentId', 'maxSpendUsd'],
249
+ },
250
+ };
251
+ async function handleOTelRegisterPolicy(input) {
252
+ try {
253
+ const policy = {
254
+ agentId: input.agentId,
255
+ taskId: input.taskId,
256
+ maxSpendUsd: input.maxSpendUsd,
257
+ windowMs: input.windowMs ?? 0,
258
+ breachAction: input.breachAction ?? 'block',
259
+ killCallbackUrl: input.killCallbackUrl,
260
+ };
261
+ registerPolicy(policy);
262
+ return {
263
+ content: [
264
+ (0, format_js_1.textContent)(JSON.stringify({
265
+ success: true,
266
+ policy: {
267
+ key: policyKey(policy.agentId, policy.taskId),
268
+ ...policy,
269
+ },
270
+ })),
271
+ ],
272
+ };
273
+ }
274
+ catch (error) {
275
+ return {
276
+ content: [(0, format_js_1.textContent)((0, format_js_1.formatError)(error, 'otel_register_budget_policy'))],
277
+ isError: true,
278
+ };
279
+ }
280
+ }
281
+ // ─── otel_evaluate_spend ───────────────────────────────────────────────────
282
+ exports.OTelEvaluateSpendSchema = zod_1.z.object({
283
+ agentId: zod_1.z.string().describe('Agent ID from OTel span attribute agentcore.agent.id'),
284
+ taskId: zod_1.z.string().optional().describe('Task ID from OTel span attribute agentcore.task.id'),
285
+ costUsd: zod_1.z.number().describe('Cost in USD from this span'),
286
+ spanId: zod_1.z.string().optional().describe('OTel span ID'),
287
+ traceId: zod_1.z.string().optional().describe('OTel trace ID'),
288
+ });
289
+ exports.otelEvaluateSpendTool = {
290
+ name: 'otel_evaluate_spend',
291
+ description: 'Evaluate a spend event from an OTel span against registered budget policies. ' +
292
+ 'Returns a budget decision (allow/warn/block/kill) with utilization details. ' +
293
+ 'The decision is also formatted as OTel event attributes for re-emission ' +
294
+ 'into the AgentCore telemetry pipeline.',
295
+ inputSchema: {
296
+ type: 'object',
297
+ properties: {
298
+ agentId: { type: 'string', description: 'Agent ID from OTel span' },
299
+ taskId: { type: 'string', description: 'Task ID from OTel span' },
300
+ costUsd: { type: 'number', description: 'Span cost in USD' },
301
+ spanId: { type: 'string', description: 'OTel span ID' },
302
+ traceId: { type: 'string', description: 'OTel trace ID' },
303
+ },
304
+ required: ['agentId', 'costUsd'],
305
+ },
306
+ };
307
+ async function handleOTelEvaluateSpend(input) {
308
+ try {
309
+ const policy = getApplicablePolicy(input.agentId, input.taskId);
310
+ const decision = evaluateSpan({
311
+ 'agentcore.agent.id': input.agentId,
312
+ 'agentcore.task.id': input.taskId,
313
+ 'agentcore.cost.usd': input.costUsd,
314
+ spanId: input.spanId,
315
+ traceId: input.traceId,
316
+ });
317
+ if (!decision) {
318
+ return {
319
+ content: [
320
+ (0, format_js_1.textContent)(JSON.stringify({ action: 'skip', reason: 'No cost or agent ID in span' })),
321
+ ],
322
+ };
323
+ }
324
+ const otelEvent = decisionToOTelEvent(decision);
325
+ const killCallback = policy
326
+ ? await invokeKillCallback(policy, decision)
327
+ : null;
328
+ return {
329
+ content: [
330
+ (0, format_js_1.textContent)(JSON.stringify({
331
+ decision,
332
+ otelEvent,
333
+ killCallback,
334
+ })),
335
+ ],
336
+ };
337
+ }
338
+ catch (error) {
339
+ return {
340
+ content: [(0, format_js_1.textContent)((0, format_js_1.formatError)(error, 'otel_evaluate_spend'))],
341
+ isError: true,
342
+ };
343
+ }
344
+ }
345
+ // ─── otel_budget_status ────────────────────────────────────────────────────
346
+ exports.OTelBudgetStatusSchema = zod_1.z.object({
347
+ agentId: zod_1.z.string().describe('Agent ID to check budget status for'),
348
+ includeHistory: zod_1.z
349
+ .boolean()
350
+ .default(false)
351
+ .describe('Include recent decision history'),
352
+ historyLimit: zod_1.z.number().default(20).describe('Max history entries to return'),
353
+ });
354
+ exports.otelBudgetStatusTool = {
355
+ name: 'otel_budget_status',
356
+ description: 'Get the current budget status for an AgentCore agent, including ' +
357
+ 'accumulated spend, remaining budget, utilization percentage, and ' +
358
+ 'optional decision history. Useful for dashboards and audit trails.',
359
+ inputSchema: {
360
+ type: 'object',
361
+ properties: {
362
+ agentId: { type: 'string', description: 'Agent ID' },
363
+ includeHistory: { type: 'boolean', description: 'Include decision history' },
364
+ historyLimit: { type: 'number', description: 'Max history entries' },
365
+ },
366
+ required: ['agentId'],
367
+ },
368
+ };
369
+ async function handleOTelBudgetStatus(input) {
370
+ try {
371
+ const agentPolicies = Array.from(_policies.values()).filter((p) => p.agentId === input.agentId);
372
+ const statuses = agentPolicies.map((policy) => {
373
+ const accumulated = getAccumulatedSpend(policy.agentId, policy.taskId, policy.windowMs);
374
+ return {
375
+ policyKey: policyKey(policy.agentId, policy.taskId),
376
+ policy,
377
+ accumulatedSpendUsd: accumulated,
378
+ remainingUsd: Math.max(0, policy.maxSpendUsd - accumulated),
379
+ utilizationPct: (accumulated / policy.maxSpendUsd) * 100,
380
+ };
381
+ });
382
+ const result = {
383
+ agentId: input.agentId,
384
+ policies: statuses,
385
+ totalAccumulatedUsd: getAccumulatedSpend(input.agentId),
386
+ };
387
+ if (input.includeHistory) {
388
+ result.recentDecisions = getDecisionHistory(input.agentId, input.historyLimit ?? 20);
389
+ }
390
+ return { content: [(0, format_js_1.textContent)(JSON.stringify(result))] };
391
+ }
392
+ catch (error) {
393
+ return {
394
+ content: [(0, format_js_1.textContent)((0, format_js_1.formatError)(error, 'otel_budget_status'))],
395
+ isError: true,
396
+ };
397
+ }
398
+ }
399
+ //# sourceMappingURL=otel-budget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"otel-budget.js","sourceRoot":"","sources":["../../src/tools/otel-budget.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/tools/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAML,iBAAiB,EACjB,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAI/B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwDjC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDhC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,qBAAqB,GAC3B,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,CAkJhF;AAID,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;EA8BjC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ChC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,qBAAqB,GAC3B,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,CA8IhF;AAID,eAAO,MAAM,uBAAuB;;;;;;EAQlC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE7E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;CAiBjC,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,sBAAsB,GAC5B,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,CAoGhF;AAID,eAAO,MAAM,oBAAoB;;;;;;EAK/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;CAgB9B,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,mBAAmB,GACzB,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,CA6ChF;AA8CD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/tools/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAML,iBAAiB,EACjB,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAI/B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwDjC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDhC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,qBAAqB,GAC3B,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,CAmJhF;AAID,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;EA8BjC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ChC,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,qBAAqB,GAC3B,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,CA8IhF;AAID,eAAO,MAAM,uBAAuB;;;;;;EAQlC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE7E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;CAiBjC,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,sBAAsB,GAC5B,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,CAoGhF;AAID,eAAO,MAAM,oBAAoB;;;;;;EAK/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;CAgB9B,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,mBAAmB,GACzB,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,CA6ChF;AA8CD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC"}
@@ -24,6 +24,7 @@ const zod_1 = require("zod");
24
24
  const agentwallet_sdk_1 = require("agentwallet-sdk");
25
25
  const client_js_1 = require("../utils/client.js");
26
26
  const format_js_1 = require("../utils/format.js");
27
+ const x402_networks_js_1 = require("../utils/x402-networks.js");
27
28
  const manager_js_1 = require("../session/manager.js");
28
29
  Object.defineProperty(exports, "findSessionForUrl", { enumerable: true, get: function () { return manager_js_1.findSessionForUrl; } });
29
30
  Object.defineProperty(exports, "buildSessionHeaders", { enumerable: true, get: function () { return manager_js_1.buildSessionHeaders; } });
@@ -160,6 +161,7 @@ async function handleX402SessionStart(input) {
160
161
  const x402Client = (0, agentwallet_sdk_1.createX402Client)(wallet, {
161
162
  autoPay: true,
162
163
  maxRetries: 1,
164
+ supportedNetworks: (0, x402_networks_js_1.supportedX402NetworksForChainId)(config.chainId),
163
165
  globalPerRequestMax: maxPaymentWei,
164
166
  onBeforePayment: (req) => {
165
167
  const amount = BigInt(req.amount);
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/tools/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/tools/session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../../src/tools/x402.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;EA2CxB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAIzD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDvB,CAAC;AAIF,wBAAsB,aAAa,CACjC,KAAK,EAAE,YAAY,GAClB,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,CAgLhF"}
1
+ {"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../../src/tools/x402.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA4FxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;EA2CxB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAIzD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDvB,CAAC;AAIF,wBAAsB,aAAa,CACjC,KAAK,EAAE,YAAY,GAClB,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,CAwLhF"}
@@ -16,8 +16,59 @@ const zod_1 = require("zod");
16
16
  const agentwallet_sdk_1 = require("agentwallet-sdk");
17
17
  const client_js_1 = require("../utils/client.js");
18
18
  const format_js_1 = require("../utils/format.js");
19
+ const x402_networks_js_1 = require("../utils/x402-networks.js");
19
20
  const session_js_1 = require("./session.js");
20
21
  const manager_js_1 = require("../session/manager.js");
22
+ function parsePaymentRequiredFromHeader(headerValue) {
23
+ if (!headerValue)
24
+ return null;
25
+ try {
26
+ const decoded = Buffer.from(headerValue, 'base64').toString('utf8');
27
+ const parsed = JSON.parse(decoded);
28
+ return Array.isArray(parsed.accepts) ? parsed : null;
29
+ }
30
+ catch {
31
+ return null;
32
+ }
33
+ }
34
+ function parsePaymentRequiredFromBody(responseText) {
35
+ try {
36
+ const parsed = JSON.parse(responseText);
37
+ return Array.isArray(parsed.accepts) ? parsed : null;
38
+ }
39
+ catch {
40
+ return null;
41
+ }
42
+ }
43
+ function describeUnsupported402(input, response, responseText, chainId) {
44
+ const requirements = parsePaymentRequiredFromHeader(response.headers.get('payment-required')) ??
45
+ parsePaymentRequiredFromHeader(response.headers.get('x-payment-required')) ??
46
+ parsePaymentRequiredFromBody(responseText);
47
+ const supportedNetworks = (0, x402_networks_js_1.describeSupportedX402Networks)(chainId);
48
+ const offeredNetworks = Array.from(new Set((requirements?.accepts ?? []).map((req) => req.network).filter((network) => Boolean(network))));
49
+ const offeredSchemes = Array.from(new Set((requirements?.accepts ?? []).map((req) => req.scheme).filter((scheme) => Boolean(scheme))));
50
+ const tvmDetected = offeredNetworks.some(x402_networks_js_1.isTvmOrTonNetwork);
51
+ let out = `❌ **Unsupported x402 Payment Requirement - Failed Closed**\n\n`;
52
+ out += ` URL: ${input.url}\n`;
53
+ out += ` Method: ${input.method ?? 'GET'}\n`;
54
+ out += ` Status: ${response.status} ${response.statusText}\n`;
55
+ out += ` Supported: ${supportedNetworks}\n`;
56
+ out += ` Offered: ${offeredNetworks.length > 0 ? offeredNetworks.join(', ') : 'not parseable'}\n`;
57
+ if (offeredSchemes.length > 0)
58
+ out += ` Schemes: ${offeredSchemes.join(', ')}\n`;
59
+ out += `\nAgentPay MCP did not sign or send a payment. The server returned HTTP 402, ` +
60
+ `but none of the offered x402 payment options matched the configured AgentPay network.\n`;
61
+ if (tvmDetected) {
62
+ out += `\nTVM/TON exact-payment requirements are currently watch-only. AgentPay must add ` +
63
+ `explicit support for TVM signing, account deployment, gas, jettons, facilitator settlement, ` +
64
+ `and receipt audit rows before these payments can be enabled.\n`;
65
+ }
66
+ out += `\nGuidance: fund and publish a Base-compatible x402 exact option, or keep this ` +
67
+ `endpoint disabled for AgentPay MCP until TVM support ships deliberately.\n`;
68
+ out += `\n📄 **402 Response Body**\n`;
69
+ out += '```\n' + responseText.slice(0, 4000) + (responseText.length > 4000 ? '\n... [truncated]' : '') + '\n```';
70
+ return out;
71
+ }
21
72
  // ─── Schema ────────────────────────────────────────────────────────────────
22
73
  exports.X402PaySchema = zod_1.z.object({
23
74
  url: zod_1.z
@@ -188,6 +239,7 @@ async function handleX402Pay(input) {
188
239
  const x402Client = (0, agentwallet_sdk_1.createX402Client)(wallet, {
189
240
  autoPay: true,
190
241
  maxRetries: 1,
242
+ supportedNetworks: (0, x402_networks_js_1.supportedX402NetworksForChainId)(config.chainId),
191
243
  // If cap is set, use it as globalPerRequestMax
192
244
  globalPerRequestMax: maxPaymentWei,
193
245
  onBeforePayment: (req, url) => {
@@ -232,6 +284,12 @@ async function handleX402Pay(input) {
232
284
  const displayText = truncated
233
285
  ? responseText.slice(0, MAX_RESPONSE_LEN) + '\n\n... [response truncated]'
234
286
  : responseText;
287
+ if (response.status === 402 && !paymentMade) {
288
+ return {
289
+ content: [(0, format_js_1.textContent)(describeUnsupported402(input, response, responseText, config.chainId))],
290
+ isError: true,
291
+ };
292
+ }
235
293
  let out = `🌐 **x402 Fetch Result**\n\n`;
236
294
  out += ` URL: ${input.url}\n`;
237
295
  out += ` Method: ${method}\n`;