@agent-shield/mcp 0.4.4 → 0.4.8
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/dist/config.d.ts +38 -3
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +95 -7
- package/dist/config.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +108 -72
- package/dist/errors.js.map +1 -1
- package/dist/index.js +71 -36
- package/dist/index.js.map +1 -1
- package/dist/resources/activity.d.ts.map +1 -1
- package/dist/resources/activity.js +10 -14
- package/dist/resources/activity.js.map +1 -1
- package/dist/resources/policy.d.ts.map +1 -1
- package/dist/resources/policy.js +6 -4
- package/dist/resources/policy.js.map +1 -1
- package/dist/resources/spending.d.ts.map +1 -1
- package/dist/resources/spending.js +17 -12
- package/dist/resources/spending.js.map +1 -1
- package/dist/tools/agent-transfer.d.ts.map +1 -1
- package/dist/tools/agent-transfer.js +1 -0
- package/dist/tools/agent-transfer.js.map +1 -1
- package/dist/tools/check-pending-policy.d.ts.map +1 -1
- package/dist/tools/check-pending-policy.js +6 -10
- package/dist/tools/check-pending-policy.js.map +1 -1
- package/dist/tools/check-spending.d.ts.map +1 -1
- package/dist/tools/check-spending.js +15 -21
- package/dist/tools/check-spending.js.map +1 -1
- package/dist/tools/check-vault.d.ts.map +1 -1
- package/dist/tools/check-vault.js +6 -4
- package/dist/tools/check-vault.js.map +1 -1
- package/dist/tools/close-position.d.ts +2 -2
- package/dist/tools/close-position.d.ts.map +1 -1
- package/dist/tools/close-position.js +14 -6
- package/dist/tools/close-position.js.map +1 -1
- package/dist/tools/configure-from-file.d.ts +1 -1
- package/dist/tools/configure-from-file.d.ts.map +1 -1
- package/dist/tools/configure-from-file.js +10 -6
- package/dist/tools/configure-from-file.js.map +1 -1
- package/dist/tools/configure.d.ts +6 -4
- package/dist/tools/configure.d.ts.map +1 -1
- package/dist/tools/configure.js +104 -42
- package/dist/tools/configure.js.map +1 -1
- package/dist/tools/create-vault.d.ts +4 -4
- package/dist/tools/create-vault.d.ts.map +1 -1
- package/dist/tools/create-vault.js +13 -15
- package/dist/tools/create-vault.js.map +1 -1
- package/dist/tools/execute-swap.d.ts +2 -2
- package/dist/tools/execute-swap.d.ts.map +1 -1
- package/dist/tools/execute-swap.js +16 -4
- package/dist/tools/execute-swap.js.map +1 -1
- package/dist/tools/open-position.d.ts +2 -2
- package/dist/tools/open-position.d.ts.map +1 -1
- package/dist/tools/open-position.js +14 -6
- package/dist/tools/open-position.js.map +1 -1
- package/dist/tools/provision.d.ts +4 -2
- package/dist/tools/provision.d.ts.map +1 -1
- package/dist/tools/provision.js +6 -2
- package/dist/tools/provision.js.map +1 -1
- package/dist/tools/queue-policy-update.d.ts +4 -4
- package/dist/tools/queue-policy-update.d.ts.map +1 -1
- package/dist/tools/queue-policy-update.js +9 -16
- package/dist/tools/queue-policy-update.js.map +1 -1
- package/dist/tools/setup-status.d.ts.map +1 -1
- package/dist/tools/setup-status.js +4 -2
- package/dist/tools/setup-status.js.map +1 -1
- package/dist/tools/update-policy.d.ts +4 -4
- package/dist/tools/update-policy.d.ts.map +1 -1
- package/dist/tools/update-policy.js +9 -16
- package/dist/tools/update-policy.js.map +1 -1
- package/dist/tools/x402-fetch.d.ts +2 -2
- package/dist/tools/x402-fetch.d.ts.map +1 -1
- package/dist/tools/x402-fetch.js +41 -27
- package/dist/tools/x402-fetch.js.map +1 -1
- package/package.json +10 -10
|
@@ -17,9 +17,21 @@ exports.executeSwapSchema = zod_1.z.object({
|
|
|
17
17
|
.default(50)
|
|
18
18
|
.describe("Slippage tolerance in basis points (default: 50 = 0.5%)"),
|
|
19
19
|
});
|
|
20
|
-
async function executeSwap(client, config, input) {
|
|
20
|
+
async function executeSwap(client, config, input, custodyWallet) {
|
|
21
21
|
try {
|
|
22
|
-
|
|
22
|
+
let agentPubkey;
|
|
23
|
+
let signers;
|
|
24
|
+
if (custodyWallet) {
|
|
25
|
+
// Custody: provider.wallet IS the agent signer
|
|
26
|
+
agentPubkey = custodyWallet.publicKey;
|
|
27
|
+
signers = []; // provider.wallet handles signing via custody API
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
// Keypair: load from config
|
|
31
|
+
const agentKeypair = (0, config_1.loadAgentKeypair)(config);
|
|
32
|
+
agentPubkey = agentKeypair.publicKey;
|
|
33
|
+
signers = [agentKeypair];
|
|
34
|
+
}
|
|
23
35
|
const vaultAddress = (0, utils_1.toPublicKey)(input.vault);
|
|
24
36
|
// Fetch vault to get owner and vaultId for the swap params
|
|
25
37
|
const vault = await client.fetchVaultByAddress(vaultAddress);
|
|
@@ -28,12 +40,12 @@ async function executeSwap(client, config, input) {
|
|
|
28
40
|
const sig = await client.executeJupiterSwap({
|
|
29
41
|
owner: vault.owner,
|
|
30
42
|
vaultId: vault.vaultId,
|
|
31
|
-
agent:
|
|
43
|
+
agent: agentPubkey,
|
|
32
44
|
inputMint: (0, utils_1.toPublicKey)(input.inputMint),
|
|
33
45
|
outputMint: (0, utils_1.toPublicKey)(input.outputMint),
|
|
34
46
|
amount: (0, utils_1.toBN)(input.amount),
|
|
35
47
|
slippageBps: input.slippageBps,
|
|
36
|
-
},
|
|
48
|
+
}, signers);
|
|
37
49
|
return [
|
|
38
50
|
"## Swap Executed",
|
|
39
51
|
`- **Vault:** ${input.vault}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute-swap.js","sourceRoot":"","sources":["../../src/tools/execute-swap.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"execute-swap.js","sourceRoot":"","sources":["../../src/tools/execute-swap.ts"],"names":[],"mappings":";;;AAwBA,kCAoDC;AA5ED,6BAAwB;AAExB,oCAA6C;AAC7C,sCAAwC;AACxC,sCAImB;AAEN,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACxD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACnE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IACrE,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC/D,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,yDAAyD,CAAC;CACvE,CAAC,CAAC;AAII,KAAK,UAAU,WAAW,CAC/B,MAAyB,EACzB,MAAiB,EACjB,KAAuB,EACvB,aAAwC;IAExC,IAAI,CAAC;QACH,IAAI,WAAgD,CAAC;QACrD,IAAI,OAA4C,CAAC;QAEjD,IAAI,aAAa,EAAE,CAAC;YAClB,+CAA+C;YAC/C,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;YACtC,OAAO,GAAG,EAAE,CAAC,CAAC,kDAAkD;QAClE,CAAC;aAAM,CAAC;YACN,4BAA4B;YAC5B,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,MAAM,CAAC,CAAC;YAC9C,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC;YACrC,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE9C,2DAA2D;QAC3D,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAE7D,mCAAmC;QACnC,kEAAkE;QAClE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,kBAAkB,CACzC;YACE,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,IAAA,mBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;YACvC,UAAU,EAAE,IAAA,mBAAW,EAAC,KAAK,CAAC,UAAU,CAAC;YACzC,MAAM,EAAE,IAAA,YAAI,EAAC,KAAK,CAAC,MAAM,CAAC;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,EACD,OAAO,CACR,CAAC;QAEF,OAAO;YACL,kBAAkB;YAClB,gBAAgB,KAAK,CAAC,KAAK,EAAE;YAC7B,gBAAgB,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,SAAS,EAAE;YACpD,uBAAuB,KAAK,CAAC,UAAU,EAAE;YACzC,mBAAmB,KAAK,CAAC,WAAW,MAAM;YAC1C,sBAAsB,GAAG,EAAE;SAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAA,oBAAW,EAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAEY,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,6DAA6D;QAC7D,qDAAqD;QACrD,gGAAgG;IAClG,MAAM,EAAE,yBAAiB;IACzB,OAAO,EAAE,WAAW;CACrB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import type { AgentShieldClient } from "@agent-shield/sdk";
|
|
3
|
-
import { type McpConfig } from "../config";
|
|
3
|
+
import { type McpConfig, type CustodyWalletLike } from "../config";
|
|
4
4
|
export declare const openPositionSchema: z.ZodObject<{
|
|
5
5
|
vault: z.ZodString;
|
|
6
6
|
market: z.ZodString;
|
|
@@ -14,7 +14,7 @@ export declare const openPositionSchema: z.ZodObject<{
|
|
|
14
14
|
leverageBps: z.ZodNumber;
|
|
15
15
|
}, z.core.$strip>;
|
|
16
16
|
export type OpenPositionInput = z.infer<typeof openPositionSchema>;
|
|
17
|
-
export declare function openPosition(client: AgentShieldClient, config: McpConfig, input: OpenPositionInput): Promise<string>;
|
|
17
|
+
export declare function openPosition(client: AgentShieldClient, config: McpConfig, input: OpenPositionInput, custodyWallet?: CustodyWalletLike | null): Promise<string>;
|
|
18
18
|
export declare const openPositionTool: {
|
|
19
19
|
name: string;
|
|
20
20
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-position.d.ts","sourceRoot":"","sources":["../../src/tools/open-position.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,
|
|
1
|
+
{"version":3,"file":"open-position.d.ts","sourceRoot":"","sources":["../../src/tools/open-position.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,iBAAiB,EACvB,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,kBAAkB;;;;;;;;;;;iBAY7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAQnE,wBAAsB,YAAY,CAChC,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,iBAAiB,EACxB,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACvC,OAAO,CAAC,MAAM,CAAC,CA6CjB;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;CAQ5B,CAAC"}
|
|
@@ -22,15 +22,25 @@ exports.openPositionSchema = zod_1.z.object({
|
|
|
22
22
|
function parseSide(side) {
|
|
23
23
|
return side === "long" ? { long: {} } : { short: {} };
|
|
24
24
|
}
|
|
25
|
-
async function openPosition(client, config, input) {
|
|
25
|
+
async function openPosition(client, config, input, custodyWallet) {
|
|
26
26
|
try {
|
|
27
|
-
|
|
27
|
+
let agentPubkey;
|
|
28
|
+
let signers;
|
|
29
|
+
if (custodyWallet) {
|
|
30
|
+
agentPubkey = custodyWallet.publicKey;
|
|
31
|
+
signers = [];
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
const agentKeypair = (0, config_1.loadAgentKeypair)(config);
|
|
35
|
+
agentPubkey = agentKeypair.publicKey;
|
|
36
|
+
signers = [agentKeypair];
|
|
37
|
+
}
|
|
28
38
|
const vaultAddress = (0, utils_1.toPublicKey)(input.vault);
|
|
29
39
|
const vault = await client.fetchVaultByAddress(vaultAddress);
|
|
30
40
|
const result = await client.flashTradeOpen({
|
|
31
41
|
owner: vault.owner,
|
|
32
42
|
vaultId: vault.vaultId,
|
|
33
|
-
agent:
|
|
43
|
+
agent: agentPubkey,
|
|
34
44
|
targetSymbol: input.market,
|
|
35
45
|
collateralSymbol: input.market,
|
|
36
46
|
collateralAmount: (0, utils_1.toBN)(input.collateralAmount),
|
|
@@ -39,9 +49,7 @@ async function openPosition(client, config, input) {
|
|
|
39
49
|
priceWithSlippage: { price: (0, utils_1.toBN)("0"), exponent: 0 },
|
|
40
50
|
leverageBps: input.leverageBps,
|
|
41
51
|
});
|
|
42
|
-
const sig = await client.executeFlashTrade(result,
|
|
43
|
-
agentKeypair,
|
|
44
|
-
]);
|
|
52
|
+
const sig = await client.executeFlashTrade(result, agentPubkey, signers);
|
|
45
53
|
return [
|
|
46
54
|
"## Position Opened",
|
|
47
55
|
`- **Vault:** ${input.vault}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-position.js","sourceRoot":"","sources":["../../src/tools/open-position.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"open-position.js","sourceRoot":"","sources":["../../src/tools/open-position.ts"],"names":[],"mappings":";;;AAgCA,oCAkDC;AAlFD,6BAAwB;AAExB,oCAA6C;AAC7C,sCAAwC;AACxC,sCAImB;AAEN,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACxD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACnE,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC7E,gBAAgB,EAAE,OAAC;SAChB,MAAM,EAAE;SACR,QAAQ,CAAC,uCAAuC,CAAC;IACpD,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC/D,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC5E,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,CAAC,4CAA4C,CAAC;CAC1D,CAAC,CAAC;AAIH,SAAS,SAAS,CAChB,IAAsB;IAEtB,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AACxD,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,MAAyB,EACzB,MAAiB,EACjB,KAAwB,EACxB,aAAwC;IAExC,IAAI,CAAC;QACH,IAAI,WAAgD,CAAC;QACrD,IAAI,OAA4C,CAAC;QAEjD,IAAI,aAAa,EAAE,CAAC;YAClB,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;YACtC,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,MAAM,CAAC,CAAC;YAC9C,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC;YACrC,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC;YACzC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,KAAK,CAAC,MAAM;YAC1B,gBAAgB,EAAE,KAAK,CAAC,MAAM;YAC9B,gBAAgB,EAAE,IAAA,YAAI,EAAC,KAAK,CAAC,gBAAgB,CAAC;YAC9C,UAAU,EAAE,IAAA,YAAI,EAAC,KAAK,CAAC,OAAO,CAAC;YAC/B,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAC3B,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAA,YAAI,EAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;YACpD,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAEzE,OAAO;YACL,oBAAoB;YACpB,gBAAgB,KAAK,CAAC,KAAK,EAAE;YAC7B,iBAAiB,KAAK,CAAC,MAAM,EAAE;YAC/B,eAAe,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACzC,qBAAqB,KAAK,CAAC,gBAAgB,OAAO,KAAK,CAAC,cAAc,EAAE;YACxE,qBAAqB,KAAK,CAAC,OAAO,EAAE;YACpC,mBAAmB,KAAK,CAAC,WAAW,MAAM;YAC1C,sBAAsB,GAAG,EAAE;SAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAA,oBAAW,EAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAEY,QAAA,gBAAgB,GAAG;IAC9B,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,oFAAoF;QACpF,2CAA2C;QAC3C,uEAAuE;IACzE,MAAM,EAAE,0BAAkB;IAC1B,OAAO,EAAE,YAAY;CACtB,CAAC"}
|
|
@@ -8,7 +8,8 @@ export declare const provisionSchema: z.ZodObject<{
|
|
|
8
8
|
}>>>;
|
|
9
9
|
dailyCap: z.ZodOptional<z.ZodNumber>;
|
|
10
10
|
agentPubkey: z.ZodOptional<z.ZodString>;
|
|
11
|
-
|
|
11
|
+
protocolMode: z.ZodOptional<z.ZodNumber>;
|
|
12
|
+
protocols: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
12
13
|
maxLeverageBps: z.ZodOptional<z.ZodNumber>;
|
|
13
14
|
}, z.core.$strip>;
|
|
14
15
|
export type ProvisionInput = z.infer<typeof provisionSchema>;
|
|
@@ -32,7 +33,8 @@ export declare const provisionTool: {
|
|
|
32
33
|
}>>>;
|
|
33
34
|
dailyCap: z.ZodOptional<z.ZodNumber>;
|
|
34
35
|
agentPubkey: z.ZodOptional<z.ZodString>;
|
|
35
|
-
|
|
36
|
+
protocolMode: z.ZodOptional<z.ZodNumber>;
|
|
37
|
+
protocols: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
36
38
|
maxLeverageBps: z.ZodOptional<z.ZodNumber>;
|
|
37
39
|
}, z.core.$strip>;
|
|
38
40
|
handler: typeof provision;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../../src/tools/provision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../../src/tools/provision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;;;;;;;;;iBAwC1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7D;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,GAAG,EACZ,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,MAAM,CAAC,CAuCjB;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;CAQzB,CAAC"}
|
package/dist/tools/provision.js
CHANGED
|
@@ -23,10 +23,14 @@ exports.provisionSchema = zod_1.z.object({
|
|
|
23
23
|
.optional()
|
|
24
24
|
.describe("Agent public key (base58) to register in the vault. " +
|
|
25
25
|
"If not provided, uses the MCP server's agent keypair."),
|
|
26
|
-
|
|
26
|
+
protocolMode: zod_1.z
|
|
27
|
+
.number()
|
|
28
|
+
.optional()
|
|
29
|
+
.describe("Protocol access mode: 0 = all allowed, 1 = allowlist, 2 = denylist. Overrides template."),
|
|
30
|
+
protocols: zod_1.z
|
|
27
31
|
.array(zod_1.z.string())
|
|
28
32
|
.optional()
|
|
29
|
-
.describe("Custom
|
|
33
|
+
.describe("Custom protocol program IDs (base58). Overrides template."),
|
|
30
34
|
maxLeverageBps: zod_1.z
|
|
31
35
|
.number()
|
|
32
36
|
.optional()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provision.js","sourceRoot":"","sources":["../../src/tools/provision.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"provision.js","sourceRoot":"","sources":["../../src/tools/provision.ts"],"names":[],"mappings":";;;AAqDA,8BA0CC;AA/FD,6BAAwB;AAEX,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,qCAAqC,CAAC;SAC9C,QAAQ,CACP,+EAA+E,CAChF;IACH,QAAQ,EAAE,OAAC;SACR,IAAI,CAAC,CAAC,cAAc,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;SAChD,QAAQ,EAAE;SACV,OAAO,CAAC,cAAc,CAAC;SACvB,QAAQ,CACP,mFAAmF,CACpF;IACH,QAAQ,EAAE,OAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gEAAgE,CAAC;IAC7E,WAAW,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,sDAAsD;QACpD,uDAAuD,CAC1D;IACH,YAAY,EAAE,OAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,yFAAyF,CAC1F;IACH,SAAS,EAAE,OAAC;SACT,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC;IACxE,cAAc,EAAE,OAAC;SACd,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0DAA0D,CAAC;CACxE,CAAC,CAAC;AAIH;;;;;;GAMG;AACI,KAAK,UAAU,SAAS,CAC7B,OAAY,EACZ,KAAqB;IAErB,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAErD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,OAAO,0BAA0B,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC1E,MAAM,QAAQ,GAAG,yCAAyC,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;IAE1F,MAAM,QAAQ,GACZ,KAAK,CAAC,QAAQ;QACd;YACE,YAAY,EAAE,GAAG;YACjB,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,KAAK;SAClB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEpB,OAAO;QACL,+BAA+B;QAC/B,EAAE;QACF,mGAAmG;QACnG,EAAE;QACF,eAAe,KAAK,CAAC,QAAQ,KAAK,QAAQ,gBAAgB;QAC1D,EAAE;QACF,qBAAqB;QACrB,yDAAyD,QAAQ,EAAE;QACnE,8DAA8D,SAAS,EAAE;QACzE,EAAE;QACF,+EAA+E;QAC/E,mEAAmE;QACnE,EAAE;QACF,kEAAkE;KACnE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAEY,QAAA,aAAa,GAAG;IAC3B,IAAI,EAAE,kBAAkB;IACxB,WAAW,EACT,iEAAiE;QACjE,uGAAuG;QACvG,2GAA2G;IAC7G,MAAM,EAAE,uBAAe;IACvB,OAAO,EAAE,SAAS;CACnB,CAAC"}
|
|
@@ -4,8 +4,8 @@ export declare const queuePolicyUpdateSchema: z.ZodObject<{
|
|
|
4
4
|
vault: z.ZodString;
|
|
5
5
|
dailySpendingCapUsd: z.ZodOptional<z.ZodString>;
|
|
6
6
|
maxTransactionSizeUsd: z.ZodOptional<z.ZodString>;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
protocolMode: z.ZodOptional<z.ZodNumber>;
|
|
8
|
+
protocols: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
9
9
|
allowedDestinations: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
10
10
|
maxLeverageBps: z.ZodOptional<z.ZodNumber>;
|
|
11
11
|
canOpenPositions: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -22,8 +22,8 @@ export declare const queuePolicyUpdateTool: {
|
|
|
22
22
|
vault: z.ZodString;
|
|
23
23
|
dailySpendingCapUsd: z.ZodOptional<z.ZodString>;
|
|
24
24
|
maxTransactionSizeUsd: z.ZodOptional<z.ZodString>;
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
protocolMode: z.ZodOptional<z.ZodNumber>;
|
|
26
|
+
protocols: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
27
27
|
allowedDestinations: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
28
28
|
maxLeverageBps: z.ZodOptional<z.ZodNumber>;
|
|
29
29
|
canOpenPositions: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue-policy-update.d.ts","sourceRoot":"","sources":["../../src/tools/queue-policy-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"queue-policy-update.d.ts","sourceRoot":"","sources":["../../src/tools/queue-policy-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,mBAAmB,CAAC;AAI3B,eAAO,MAAM,uBAAuB;;;;;;;;;;;;iBA4ClC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE7E,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAuDjB;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;CAQjC,CAAC"}
|
|
@@ -4,7 +4,6 @@ exports.queuePolicyUpdateTool = exports.queuePolicyUpdateSchema = void 0;
|
|
|
4
4
|
exports.queuePolicyUpdate = queuePolicyUpdate;
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
6
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
7
|
-
const web3_js_1 = require("@solana/web3.js");
|
|
8
7
|
const utils_1 = require("../utils");
|
|
9
8
|
const errors_1 = require("../errors");
|
|
10
9
|
exports.queuePolicyUpdateSchema = zod_1.z.object({
|
|
@@ -17,14 +16,14 @@ exports.queuePolicyUpdateSchema = zod_1.z.object({
|
|
|
17
16
|
.string()
|
|
18
17
|
.optional()
|
|
19
18
|
.describe("New max transaction size in USD base units"),
|
|
20
|
-
|
|
21
|
-
.
|
|
19
|
+
protocolMode: zod_1.z
|
|
20
|
+
.number()
|
|
22
21
|
.optional()
|
|
23
|
-
.describe("New allowed
|
|
24
|
-
|
|
22
|
+
.describe("New protocol access mode: 0 = all allowed, 1 = allowlist, 2 = denylist"),
|
|
23
|
+
protocols: zod_1.z
|
|
25
24
|
.array(zod_1.z.string())
|
|
26
25
|
.optional()
|
|
27
|
-
.describe("New
|
|
26
|
+
.describe("New protocol program IDs (base58). Max 10."),
|
|
28
27
|
allowedDestinations: zod_1.z
|
|
29
28
|
.array(zod_1.z.string())
|
|
30
29
|
.optional()
|
|
@@ -59,17 +58,11 @@ async function queuePolicyUpdate(client, input) {
|
|
|
59
58
|
if (input.maxTransactionSizeUsd !== undefined) {
|
|
60
59
|
params.maxTransactionAmountUsd = (0, utils_1.toBN)(input.maxTransactionSizeUsd);
|
|
61
60
|
}
|
|
62
|
-
if (input.
|
|
63
|
-
params.
|
|
64
|
-
mint: (0, utils_1.toPublicKey)(addr),
|
|
65
|
-
oracleFeed: web3_js_1.PublicKey.default,
|
|
66
|
-
decimals: 6,
|
|
67
|
-
dailyCapBase: new anchor_1.BN(0),
|
|
68
|
-
maxTxBase: new anchor_1.BN(0),
|
|
69
|
-
}));
|
|
61
|
+
if (input.protocolMode !== undefined) {
|
|
62
|
+
params.protocolMode = input.protocolMode;
|
|
70
63
|
}
|
|
71
|
-
if (input.
|
|
72
|
-
params.
|
|
64
|
+
if (input.protocols !== undefined) {
|
|
65
|
+
params.protocols = input.protocols.map(utils_1.toPublicKey);
|
|
73
66
|
}
|
|
74
67
|
if (input.allowedDestinations !== undefined) {
|
|
75
68
|
params.allowedDestinations = input.allowedDestinations.map(utils_1.toPublicKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue-policy-update.js","sourceRoot":"","sources":["../../src/tools/queue-policy-update.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"queue-policy-update.js","sourceRoot":"","sources":["../../src/tools/queue-policy-update.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-status.d.ts","sourceRoot":"","sources":["../../src/tools/setup-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,iBAAiB,gCAAe,CAAC;AAE9C,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"setup-status.d.ts","sourceRoot":"","sources":["../../src/tools/setup-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,iBAAiB,gCAAe,CAAC;AAE9C,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,MAAM,CAAC,CA6FjB;AAED,eAAO,MAAM,eAAe;;;;;CAQ3B,CAAC"}
|
|
@@ -52,8 +52,10 @@ async function setupStatus(_client, _input) {
|
|
|
52
52
|
const shield = config.layers.shield;
|
|
53
53
|
lines.push(`- **Enabled:** ${shield.enabled}`);
|
|
54
54
|
if (shield.enabled) {
|
|
55
|
-
lines.push(`- **Daily Cap:** $${shield.
|
|
56
|
-
|
|
55
|
+
lines.push(`- **Daily Cap:** $${shield.dailySpendingCapUsd}`);
|
|
56
|
+
const protocolModeLabels = ["All Allowed", "Allowlist", "Denylist"];
|
|
57
|
+
lines.push(`- **Protocol Mode:** ${protocolModeLabels[shield.protocolMode] ?? `Unknown (${shield.protocolMode})`}`);
|
|
58
|
+
lines.push(`- **Protocols:** ${shield.protocols.length > 0 ? shield.protocols.join(", ") : "None"}`);
|
|
57
59
|
lines.push(`- **Max Leverage:** ${shield.maxLeverageBps} BPS`);
|
|
58
60
|
lines.push(`- **Rate Limit:** ${shield.rateLimit} tx/min`);
|
|
59
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-status.js","sourceRoot":"","sources":["../../src/tools/setup-status.ts"],"names":[],"mappings":";;;AAiBA,
|
|
1
|
+
{"version":3,"file":"setup-status.js","sourceRoot":"","sources":["../../src/tools/setup-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,8 @@ export declare const updatePolicySchema: z.ZodObject<{
|
|
|
4
4
|
vault: z.ZodString;
|
|
5
5
|
dailySpendingCapUsd: z.ZodOptional<z.ZodString>;
|
|
6
6
|
maxTransactionSizeUsd: z.ZodOptional<z.ZodString>;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
protocolMode: z.ZodOptional<z.ZodNumber>;
|
|
8
|
+
protocols: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
9
9
|
maxLeverageBps: z.ZodOptional<z.ZodNumber>;
|
|
10
10
|
canOpenPositions: z.ZodOptional<z.ZodBoolean>;
|
|
11
11
|
maxConcurrentPositions: z.ZodOptional<z.ZodNumber>;
|
|
@@ -22,8 +22,8 @@ export declare const updatePolicyTool: {
|
|
|
22
22
|
vault: z.ZodString;
|
|
23
23
|
dailySpendingCapUsd: z.ZodOptional<z.ZodString>;
|
|
24
24
|
maxTransactionSizeUsd: z.ZodOptional<z.ZodString>;
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
protocolMode: z.ZodOptional<z.ZodNumber>;
|
|
26
|
+
protocols: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
27
27
|
maxLeverageBps: z.ZodOptional<z.ZodNumber>;
|
|
28
28
|
canOpenPositions: z.ZodOptional<z.ZodBoolean>;
|
|
29
29
|
maxConcurrentPositions: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-policy.d.ts","sourceRoot":"","sources":["../../src/tools/update-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"update-policy.d.ts","sourceRoot":"","sources":["../../src/tools/update-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAK3D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;iBAmD7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEnE,wBAAsB,YAAY,CAChC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,MAAM,CAAC,CAgDjB;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;CAO5B,CAAC"}
|
|
@@ -4,7 +4,6 @@ exports.updatePolicyTool = exports.updatePolicySchema = void 0;
|
|
|
4
4
|
exports.updatePolicy = updatePolicy;
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
6
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
7
|
-
const web3_js_1 = require("@solana/web3.js");
|
|
8
7
|
const utils_1 = require("../utils");
|
|
9
8
|
const errors_1 = require("../errors");
|
|
10
9
|
exports.updatePolicySchema = zod_1.z.object({
|
|
@@ -17,14 +16,14 @@ exports.updatePolicySchema = zod_1.z.object({
|
|
|
17
16
|
.string()
|
|
18
17
|
.optional()
|
|
19
18
|
.describe("New max transaction size in USD base units"),
|
|
20
|
-
|
|
21
|
-
.
|
|
19
|
+
protocolMode: zod_1.z
|
|
20
|
+
.number()
|
|
22
21
|
.optional()
|
|
23
|
-
.describe("New
|
|
24
|
-
|
|
22
|
+
.describe("New protocol access mode: 0 = all allowed, 1 = allowlist, 2 = denylist"),
|
|
23
|
+
protocols: zod_1.z
|
|
25
24
|
.array(zod_1.z.string())
|
|
26
25
|
.optional()
|
|
27
|
-
.describe("New
|
|
26
|
+
.describe("New protocol program IDs (base58). Max 10. Replaces existing list."),
|
|
28
27
|
maxLeverageBps: zod_1.z
|
|
29
28
|
.number()
|
|
30
29
|
.optional()
|
|
@@ -60,17 +59,11 @@ async function updatePolicy(client, input) {
|
|
|
60
59
|
if (input.maxTransactionSizeUsd !== undefined) {
|
|
61
60
|
params.maxTransactionSizeUsd = (0, utils_1.toBN)(input.maxTransactionSizeUsd);
|
|
62
61
|
}
|
|
63
|
-
if (input.
|
|
64
|
-
params.
|
|
65
|
-
mint: (0, utils_1.toPublicKey)(addr),
|
|
66
|
-
oracleFeed: web3_js_1.PublicKey.default,
|
|
67
|
-
decimals: 6,
|
|
68
|
-
dailyCapBase: new anchor_1.BN(0),
|
|
69
|
-
maxTxBase: new anchor_1.BN(0),
|
|
70
|
-
}));
|
|
62
|
+
if (input.protocolMode !== undefined) {
|
|
63
|
+
params.protocolMode = input.protocolMode;
|
|
71
64
|
}
|
|
72
|
-
if (input.
|
|
73
|
-
params.
|
|
65
|
+
if (input.protocols !== undefined) {
|
|
66
|
+
params.protocols = input.protocols.map(utils_1.toPublicKey);
|
|
74
67
|
}
|
|
75
68
|
if (input.maxLeverageBps !== undefined) {
|
|
76
69
|
params.maxLeverageBps = input.maxLeverageBps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-policy.js","sourceRoot":"","sources":["../../src/tools/update-policy.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"update-policy.js","sourceRoot":"","sources":["../../src/tools/update-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import type { AgentShieldClient } from "@agent-shield/sdk";
|
|
3
|
-
import type { McpConfig } from "../config";
|
|
3
|
+
import type { McpConfig, CustodyWalletLike } from "../config";
|
|
4
4
|
export declare const x402FetchSchema: z.ZodObject<{
|
|
5
5
|
url: z.ZodString;
|
|
6
6
|
method: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
@@ -9,7 +9,7 @@ export declare const x402FetchSchema: z.ZodObject<{
|
|
|
9
9
|
maxPayment: z.ZodOptional<z.ZodString>;
|
|
10
10
|
}, z.core.$strip>;
|
|
11
11
|
export type X402FetchInput = z.input<typeof x402FetchSchema>;
|
|
12
|
-
export declare function x402Fetch(_client: AgentShieldClient, config: McpConfig, input: X402FetchInput): Promise<string>;
|
|
12
|
+
export declare function x402Fetch(_client: AgentShieldClient, config: McpConfig, input: X402FetchInput, custodyWallet?: CustodyWalletLike | null): Promise<string>;
|
|
13
13
|
export declare const x402FetchTool: {
|
|
14
14
|
name: string;
|
|
15
15
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x402-fetch.d.ts","sourceRoot":"","sources":["../../src/tools/x402-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"x402-fetch.d.ts","sourceRoot":"","sources":["../../src/tools/x402-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9D,eAAO,MAAM,eAAe;;;;;;iBAmB1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAa7D,wBAAsB,SAAS,CAC7B,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,cAAc,EACrB,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,GACvC,OAAO,CAAC,MAAM,CAAC,CAiGjB;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;CAQzB,CAAC"}
|
package/dist/tools/x402-fetch.js
CHANGED
|
@@ -61,41 +61,55 @@ function getConfigKey(config) {
|
|
|
61
61
|
const cfgAny = config;
|
|
62
62
|
return `${config.rpcUrl}|${config.walletPath ?? ""}|${config.agentKeypairPath ?? ""}|${typeof cfgAny.keypair === "string" ? cfgAny.keypair : ""}`;
|
|
63
63
|
}
|
|
64
|
-
async function x402Fetch(_client, config, input) {
|
|
64
|
+
async function x402Fetch(_client, config, input, custodyWallet) {
|
|
65
65
|
try {
|
|
66
|
-
const {
|
|
66
|
+
const { shieldedFetch } = await Promise.resolve().then(() => __importStar(require("@agent-shield/sdk")));
|
|
67
|
+
// V2: shield() is internal to the wrapper. We access it from the compiled
|
|
68
|
+
// dist output since the MCP server runs in the same monorepo.
|
|
69
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
70
|
+
const wrapperMod = require("@agent-shield/sdk/dist/wrapper/index");
|
|
71
|
+
const shieldWallet = wrapperMod.shieldWallet;
|
|
67
72
|
const { Connection, Keypair } = await Promise.resolve().then(() => __importStar(require("@solana/web3.js")));
|
|
68
73
|
const configKey = getConfigKey(config);
|
|
69
74
|
// Create or refresh cached wallet when config changes
|
|
70
75
|
if (!_cachedWallet || configKey !== _cachedConfigKey) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
else if (config.walletPath) {
|
|
79
|
-
const { loadKeypair } = await Promise.resolve().then(() => __importStar(require("../config")));
|
|
80
|
-
keypair = loadKeypair(config.walletPath);
|
|
81
|
-
}
|
|
82
|
-
else if (config.agentKeypairPath) {
|
|
83
|
-
const { loadKeypair } = await Promise.resolve().then(() => __importStar(require("../config")));
|
|
84
|
-
keypair = loadKeypair(config.agentKeypairPath);
|
|
76
|
+
if (custodyWallet) {
|
|
77
|
+
// Custody: use custody wallet directly with shieldWallet()
|
|
78
|
+
const connection = new Connection(config.rpcUrl, "confirmed");
|
|
79
|
+
_cachedWallet = shieldWallet(custodyWallet, undefined, {
|
|
80
|
+
connection,
|
|
81
|
+
});
|
|
85
82
|
}
|
|
86
83
|
else {
|
|
87
|
-
|
|
84
|
+
// Load keypair (preserve ALL existing paths including cfgAny.keypair for tests)
|
|
85
|
+
let keypair;
|
|
86
|
+
const cfgAny = config;
|
|
87
|
+
if (typeof cfgAny.keypair === "string") {
|
|
88
|
+
// Direct keypair bytes (JSON array string) — programmatic/test usage
|
|
89
|
+
keypair = Keypair.fromSecretKey(new Uint8Array(JSON.parse(cfgAny.keypair)));
|
|
90
|
+
}
|
|
91
|
+
else if (config.walletPath) {
|
|
92
|
+
const { loadKeypair } = await Promise.resolve().then(() => __importStar(require("../config")));
|
|
93
|
+
keypair = loadKeypair(config.walletPath);
|
|
94
|
+
}
|
|
95
|
+
else if (config.agentKeypairPath) {
|
|
96
|
+
const { loadKeypair } = await Promise.resolve().then(() => __importStar(require("../config")));
|
|
97
|
+
keypair = loadKeypair(config.agentKeypairPath);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
return "## Error\n\nNo agent keypair configured. Run `shield_configure` first.";
|
|
101
|
+
}
|
|
102
|
+
const wallet = {
|
|
103
|
+
publicKey: keypair.publicKey,
|
|
104
|
+
signTransaction: async (tx) => {
|
|
105
|
+
tx.partialSign?.(keypair);
|
|
106
|
+
return tx;
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
const connection = new Connection(config.rpcUrl, "confirmed");
|
|
110
|
+
// undefined policies → secure defaults (1000 USDC/day, 1000 USDT/day, 10 SOL/day)
|
|
111
|
+
_cachedWallet = shieldWallet(wallet, undefined, { connection });
|
|
88
112
|
}
|
|
89
|
-
const wallet = {
|
|
90
|
-
publicKey: keypair.publicKey,
|
|
91
|
-
signTransaction: async (tx) => {
|
|
92
|
-
tx.partialSign?.(keypair);
|
|
93
|
-
return tx;
|
|
94
|
-
},
|
|
95
|
-
};
|
|
96
|
-
const connection = new Connection(config.rpcUrl, "confirmed");
|
|
97
|
-
// undefined policies → secure defaults (1000 USDC/day, 1000 USDT/day, 10 SOL/day)
|
|
98
|
-
_cachedWallet = shieldWallet(wallet, undefined, { connection });
|
|
99
113
|
_cachedConfigKey = configKey;
|
|
100
114
|
}
|
|
101
115
|
// Use cached wallet (persistent ShieldState across calls)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x402-fetch.js","sourceRoot":"","sources":["../../src/tools/x402-fetch.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"x402-fetch.js","sourceRoot":"","sources":["../../src/tools/x402-fetch.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-shield/mcp",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.8",
|
|
4
4
|
"author": "Kaleb Rupe (https://x.com/MightieMags)",
|
|
5
5
|
"homepage": "https://github.com/Kaleb-Rupe/agentshield#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
"node": ">=18.0.0"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
26
|
+
"@modelcontextprotocol/sdk": "^1.27.0"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"@agent-shield/sdk": ">=0.5.2",
|
|
30
29
|
"@agent-shield/custody-crossmint": ">=0.1.4",
|
|
30
|
+
"@agent-shield/sdk": ">=0.5.4",
|
|
31
31
|
"@coral-xyz/anchor": ">=0.32.1",
|
|
32
32
|
"@solana/spl-token": ">=0.4.0",
|
|
33
33
|
"@solana/web3.js": ">=1.95.0",
|
|
@@ -44,15 +44,15 @@
|
|
|
44
44
|
"@solana/web3.js": "^1.95.0",
|
|
45
45
|
"@types/chai": "^4.3.11",
|
|
46
46
|
"@types/mocha": "^10.0.6",
|
|
47
|
-
"@types/sinon": "^
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"sinon": "^17.0.1",
|
|
47
|
+
"@types/sinon": "^21.0.0",
|
|
48
|
+
"chai": "^6.2.2",
|
|
49
|
+
"mocha": "^11.7.5",
|
|
50
|
+
"sinon": "^21.0.1",
|
|
52
51
|
"ts-node": "^10.9.2",
|
|
53
52
|
"typescript": "^5.3.3",
|
|
54
|
-
"
|
|
55
|
-
"@agent-shield/custody-crossmint": "0.1.4"
|
|
53
|
+
"zod": "^4.3.6",
|
|
54
|
+
"@agent-shield/custody-crossmint": "0.1.4",
|
|
55
|
+
"@agent-shield/sdk": "0.5.4"
|
|
56
56
|
},
|
|
57
57
|
"keywords": [
|
|
58
58
|
"mcp",
|