@atxp/client 0.2.8 → 0.2.9

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,9 @@
1
+ import type { Account, PaymentMaker } from './types.js';
2
+ export declare class BaseAccount implements Account {
3
+ accountId: string;
4
+ paymentMakers: {
5
+ [key: string]: PaymentMaker;
6
+ };
7
+ constructor(baseRPCUrl: string, sourceSecretKey: `0x${string}`);
8
+ }
9
+ //# sourceMappingURL=baseAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseAccount.d.ts","sourceRoot":"","sources":["../src/baseAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAIxD,qBAAa,WAAY,YAAW,OAAO;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAC;gBAEnC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,MAAM,EAAE;CAe/D"}
@@ -0,0 +1,18 @@
1
+ import { privateKeyToAccount } from 'viem/accounts';
2
+ import { BasePaymentMaker } from './basePaymentMaker.js';
3
+ export class BaseAccount {
4
+ constructor(baseRPCUrl, sourceSecretKey) {
5
+ if (!baseRPCUrl) {
6
+ throw new Error('Base RPC URL is required');
7
+ }
8
+ if (!sourceSecretKey) {
9
+ throw new Error('Source secret key is required');
10
+ }
11
+ const account = privateKeyToAccount(sourceSecretKey);
12
+ this.accountId = account.address;
13
+ this.paymentMakers = {
14
+ 'base': new BasePaymentMaker(baseRPCUrl, sourceSecretKey),
15
+ };
16
+ }
17
+ }
18
+ //# sourceMappingURL=baseAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseAccount.js","sourceRoot":"","sources":["../src/baseAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,OAAO,WAAW;IAItB,YAAY,UAAkB,EAAE,eAA8B;QAC5D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAErD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG;YACnB,MAAM,EAAE,IAAI,gBAAgB,CAAC,UAAU,EAAE,eAAe,CAAC;SAC1D,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ import type { PaymentMaker } from './types.js';
2
+ import { Logger } from '@atxp/common';
3
+ export declare class BasePaymentMaker implements PaymentMaker {
4
+ private signingClient;
5
+ private account;
6
+ private logger;
7
+ constructor(baseRPCUrl: string, sourceSecretKey: `0x${string}`, logger?: Logger);
8
+ generateJWT: ({ paymentRequestId, codeChallenge }: {
9
+ paymentRequestId: string;
10
+ codeChallenge: string;
11
+ }) => Promise<string>;
12
+ makePayment: (amount: BigNumber, currency: string, receiver: string) => Promise<string>;
13
+ }
14
+ //# sourceMappingURL=basePaymentMaker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basePaymentMaker.d.ts","sourceRoot":"","sources":["../src/basePaymentMaker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AA+CtC,qBAAa,gBAAiB,YAAW,YAAY;IAEnD,OAAO,CAAC,aAAa,CAAM;IAC3B,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,MAAM,CAAS;gBAEX,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM;IAiB/E,WAAW,GAAS,qCAAmC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAC,KAAG,OAAO,CAAC,MAAM,CAAC,CA6BzH;IAED,WAAW,GAAU,QAAQ,SAAS,EAAE,UAAU,MAAM,EAAE,UAAU,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC,CAsC3F;CACF"}
@@ -0,0 +1,113 @@
1
+ import { ConsoleLogger } from '@atxp/common';
2
+ import { createWalletClient, http, parseEther, publicActions, encodeFunctionData, } from "viem";
3
+ import { privateKeyToAccount } from "viem/accounts";
4
+ import { base } from "viem/chains";
5
+ const USDC_CONTRACT_ADDRESS = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"; // USDC on Base mainnet
6
+ const USDC_DECIMALS = 6;
7
+ const ERC20_ABI = [
8
+ {
9
+ constant: false,
10
+ inputs: [
11
+ { name: "_to", type: "address" },
12
+ { name: "_value", type: "uint256" },
13
+ ],
14
+ name: "transfer",
15
+ outputs: [{ name: "", type: "bool" }],
16
+ type: "function",
17
+ },
18
+ {
19
+ "constant": true,
20
+ "inputs": [
21
+ {
22
+ "name": "_owner",
23
+ "type": "address"
24
+ }
25
+ ],
26
+ "name": "balanceOf",
27
+ "outputs": [
28
+ {
29
+ "name": "balance",
30
+ "type": "uint256"
31
+ }
32
+ ],
33
+ "payable": false,
34
+ "stateMutability": "view",
35
+ "type": "function"
36
+ }
37
+ ];
38
+ export class BasePaymentMaker {
39
+ constructor(baseRPCUrl, sourceSecretKey, logger) {
40
+ this.generateJWT = async ({ paymentRequestId, codeChallenge }) => {
41
+ const headerObj = { alg: 'ES256K' }; // this value is specific to Base
42
+ const payloadObj = {
43
+ sub: this.account.address,
44
+ iss: 'accounts.atxp.ai',
45
+ aud: 'https://auth.atxp.ai',
46
+ iat: Math.floor(Date.now() / 1000),
47
+ exp: Math.floor(Date.now() / 1000) + 60 * 60,
48
+ ...(codeChallenge ? { code_challenge: codeChallenge } : {}),
49
+ ...(paymentRequestId ? { payment_request_id: paymentRequestId } : {}),
50
+ };
51
+ const header = Buffer.from(JSON.stringify(headerObj)).toString('base64url');
52
+ const payload = Buffer.from(JSON.stringify(payloadObj)).toString('base64url');
53
+ const message = `${header}.${payload}`;
54
+ // For Ethereum wallets, we need to use personal_sign format
55
+ const messageBytes = Buffer.from(message, 'utf8');
56
+ const signResult = await this.signingClient.signMessage({
57
+ account: this.account,
58
+ message: { raw: messageBytes },
59
+ });
60
+ // The paymcp server expects ES256K signatures as hex strings with 0x prefix
61
+ // The signResult from viem is already in hex format with 0x prefix (65 bytes)
62
+ // We encode the hex string itself (including 0x) as base64url
63
+ const signature = Buffer.from(signResult, 'utf8').toString('base64url');
64
+ return `${header}.${payload}.${signature}`;
65
+ };
66
+ this.makePayment = async (amount, currency, receiver) => {
67
+ currency = currency.toLowerCase();
68
+ if (currency !== 'usdc') {
69
+ throw new Error('Only usdc currency is supported; received ' + currency);
70
+ }
71
+ this.logger.info(`Making payment of ${amount} ${currency} to ${receiver} on Base`);
72
+ // Convert amount to USDC units (6 decimals) as BigInt
73
+ const amountInUSDCUnits = BigInt(amount.multipliedBy(10 ** USDC_DECIMALS).toFixed(0));
74
+ const data = encodeFunctionData({
75
+ abi: ERC20_ABI,
76
+ functionName: "transfer",
77
+ args: [receiver, amountInUSDCUnits],
78
+ });
79
+ const hash = await this.signingClient.sendTransaction({
80
+ chain: base,
81
+ account: this.account,
82
+ to: USDC_CONTRACT_ADDRESS,
83
+ data: data,
84
+ value: parseEther('0'),
85
+ });
86
+ // Wait for transaction confirmation with more blocks to ensure propagation
87
+ this.logger.info(`Waiting for transaction confirmation: ${hash}`);
88
+ const receipt = await this.signingClient.waitForTransactionReceipt({
89
+ hash: hash,
90
+ confirmations: 3 // Wait for 3 confirmations to ensure better propagation
91
+ });
92
+ if (receipt.status === 'reverted') {
93
+ throw new Error(`Transaction reverted: ${hash}`);
94
+ }
95
+ this.logger.info(`Transaction confirmed: ${hash} in block ${receipt.blockNumber}`);
96
+ return hash;
97
+ };
98
+ if (!baseRPCUrl) {
99
+ throw new Error('Base RPC URL is required');
100
+ }
101
+ if (!sourceSecretKey) {
102
+ throw new Error('Source secret key is required');
103
+ }
104
+ this.account = privateKeyToAccount(sourceSecretKey);
105
+ this.signingClient = createWalletClient({
106
+ account: this.account,
107
+ chain: base,
108
+ transport: http(baseRPCUrl),
109
+ }).extend(publicActions);
110
+ this.logger = logger ?? new ConsoleLogger();
111
+ }
112
+ }
113
+ //# sourceMappingURL=basePaymentMaker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basePaymentMaker.js","sourceRoot":"","sources":["../src/basePaymentMaker.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,5 +4,7 @@ export * from './atxpFetcher.js';
4
4
  export * from './solanaPaymentMaker.js';
5
5
  export * from './solanaAccount.js';
6
6
  export * from './atxpAccount.js';
7
+ export * from './baseAccount.js';
8
+ export * from './basePaymentMaker.js';
7
9
  export * from './types.js';
8
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -4,5 +4,7 @@ export * from './atxpFetcher.js';
4
4
  export * from './solanaPaymentMaker.js';
5
5
  export * from './solanaAccount.js';
6
6
  export * from './atxpAccount.js';
7
+ export * from './baseAccount.js';
8
+ export * from './basePaymentMaker.js';
7
9
  export * from './types.js';
8
10
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,YAAY,CAAC"}
@@ -37,7 +37,7 @@ export class SolanaPaymentMaker {
37
37
  const addPriorityFee = ComputeBudgetProgram.setComputeUnitPrice({
38
38
  microLamports: 20000,
39
39
  });
40
- this.logger.info(`Making payment of ${amount} ${currency} to ${receiver}`);
40
+ this.logger.info(`Making payment of ${amount} ${currency} to ${receiver} on Solana`);
41
41
  const transaction = await createTransfer(this.connection, this.source.publicKey, {
42
42
  amount: amount,
43
43
  recipient: receiverKey,
@@ -1 +1 @@
1
- {"version":3,"file":"solanaPaymentMaker.js","sourceRoot":"","sources":["../src/solanaPaymentMaker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solanaPaymentMaker.js","sourceRoot":"","sources":["../src/solanaPaymentMaker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atxp/client",
3
- "version": "0.2.8",
3
+ "version": "0.2.9",
4
4
  "description": "ATXP Client - MCP client with OAuth authentication and payment processing",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -22,7 +22,7 @@
22
22
  "test": "vitest run"
23
23
  },
24
24
  "dependencies": {
25
- "@atxp/common": "0.2.8",
25
+ "@atxp/common": "0.2.9",
26
26
  "@modelcontextprotocol/sdk": "^1.15.0",
27
27
  "@solana/pay": "^0.2.5",
28
28
  "@solana/web3.js": "^1.98.1",
@@ -30,7 +30,8 @@
30
30
  "bignumber.js": "^9.3.0",
31
31
  "bs58": "^6.0.0",
32
32
  "oauth4webapi": "^3.5.0",
33
- "react-native-url-polyfill": "^2.0.0"
33
+ "react-native-url-polyfill": "^2.0.0",
34
+ "viem": "^2.34.0"
34
35
  },
35
36
  "peerDependencies": {
36
37
  "expo-crypto": ">=14.0.0",