@gblin-protocol/mcp-server 0.4.2 → 0.5.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.
Files changed (63) hide show
  1. package/AGENTS.md +49 -20
  2. package/README.md +110 -11
  3. package/dist/abi.d.ts +27 -0
  4. package/dist/abi.d.ts.map +1 -1
  5. package/dist/abi.js +1 -0
  6. package/dist/abi.js.map +1 -1
  7. package/dist/actions.d.ts +306 -0
  8. package/dist/actions.d.ts.map +1 -0
  9. package/dist/actions.js +740 -0
  10. package/dist/actions.js.map +1 -0
  11. package/dist/auction.d.ts.map +1 -1
  12. package/dist/auction.js +5 -4
  13. package/dist/auction.js.map +1 -1
  14. package/dist/config.d.ts +20 -3
  15. package/dist/config.d.ts.map +1 -1
  16. package/dist/config.js +23 -6
  17. package/dist/config.js.map +1 -1
  18. package/dist/helpers.d.ts +6 -0
  19. package/dist/helpers.d.ts.map +1 -1
  20. package/dist/helpers.js +37 -13
  21. package/dist/helpers.js.map +1 -1
  22. package/dist/index.d.ts +3 -4
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +53 -20
  25. package/dist/index.js.map +1 -1
  26. package/dist/output-schemas.d.ts +18 -0
  27. package/dist/output-schemas.d.ts.map +1 -0
  28. package/dist/output-schemas.js +243 -0
  29. package/dist/output-schemas.js.map +1 -0
  30. package/dist/payments.d.ts +170 -0
  31. package/dist/payments.d.ts.map +1 -0
  32. package/dist/payments.js +524 -0
  33. package/dist/payments.js.map +1 -0
  34. package/dist/paywall.d.ts +10 -1
  35. package/dist/paywall.d.ts.map +1 -1
  36. package/dist/paywall.js +1 -1
  37. package/dist/paywall.js.map +1 -1
  38. package/dist/prompts.d.ts +33 -0
  39. package/dist/prompts.d.ts.map +1 -0
  40. package/dist/prompts.js +139 -0
  41. package/dist/prompts.js.map +1 -0
  42. package/dist/receipts.d.ts +2 -1
  43. package/dist/receipts.d.ts.map +1 -1
  44. package/dist/receipts.js +16 -12
  45. package/dist/receipts.js.map +1 -1
  46. package/dist/resources.d.ts +17 -0
  47. package/dist/resources.d.ts.map +1 -0
  48. package/dist/resources.js +146 -0
  49. package/dist/resources.js.map +1 -0
  50. package/dist/shared.d.ts +35 -0
  51. package/dist/shared.d.ts.map +1 -0
  52. package/dist/shared.js +68 -0
  53. package/dist/shared.js.map +1 -0
  54. package/dist/tools.d.ts +106 -19
  55. package/dist/tools.d.ts.map +1 -1
  56. package/dist/tools.js +124 -117
  57. package/dist/tools.js.map +1 -1
  58. package/dist/version.d.ts +2 -0
  59. package/dist/version.d.ts.map +1 -0
  60. package/dist/version.js +3 -0
  61. package/dist/version.js.map +1 -0
  62. package/llms.txt +24 -2
  63. package/package.json +8 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auction.d.ts","sourceRoot":"","sources":["../src/auction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAQpC,MAAM,WAAW,YAAY;IAC3B,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,uHAAuH;IACvH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CAMhF;AAED,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAM/G;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,0FAA0F;IAC1F,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,sGAAsG;IACtG,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB;wHACoH;IACpH,QAAQ,EAAE;QAAE,OAAO,EAAE;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;SAAE,CAAC;QAAC,GAAG,EAAE;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,GAAG,IAAI,CAAC;CACvH;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;IACpH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,6FAA6F;IAC7F,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAcD,wBAAsB,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC,CAiH7D"}
1
+ {"version":3,"file":"auction.d.ts","sourceRoot":"","sources":["../src/auction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AASpC,MAAM,WAAW,YAAY;IAC3B,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,uHAAuH;IACvH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CAMhF;AAED,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAM/G;AAID,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,0FAA0F;IAC1F,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,sGAAsG;IACtG,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB;wHACoH;IACpH,QAAQ,EAAE;QAAE,OAAO,EAAE;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;SAAE,CAAC;QAAC,GAAG,EAAE;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,GAAG,IAAI,CAAC;CACvH;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAA;KAAE,CAAC;IACpH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,6FAA6F;IAC7F,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAcD,wBAAsB,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC,CAiH7D"}
package/dist/auction.js CHANGED
@@ -13,7 +13,8 @@
13
13
  import { encodeFunctionData, formatEther, formatUnits } from "viem";
14
14
  import { CHAINLINK_AGGREGATOR_ABI, ERC20_ABI, GBLIN_ABI, LENS_ABI } from "./abi.js";
15
15
  import { client, getOnChainTimestamp } from "./client.js";
16
- import { GBLIN_LENS, GBLIN_VAULT, ORACLE_STALENESS_SECONDS, WETH } from "./config.js";
16
+ import { GBLIN_LENS, GBLIN_VAULT, WETH } from "./config.js";
17
+ import { getMaxOracleAgeSeconds } from "./helpers.js";
17
18
  /**
18
19
  * Premium over the oracle price, in bps, `elapsedSeconds` after the auction opened. Mirrors the
19
20
  * vault's `auctionPremiumBps`: `-start` at the opening, rising linearly to `cap` over one ramp,
@@ -39,12 +40,12 @@ export function ethToAssetUnits(ethWei, assetPrice, wethPrice, decimals) {
39
40
  units = units * 10n ** BigInt(decimals - 18);
40
41
  return units;
41
42
  }
42
- async function oraclePrice(oracle, now) {
43
+ async function oraclePrice(oracle, now, stableFeed = false) {
43
44
  try {
44
45
  const d = await client.readContract({ address: oracle, abi: CHAINLINK_AGGREGATOR_ABI, functionName: "latestRoundData" });
45
46
  const answer = d[1];
46
47
  const updatedAt = Number(d[3]);
47
- if (answer <= 0n || now - updatedAt > ORACLE_STALENESS_SECONDS)
48
+ if (answer <= 0n || now - updatedAt > (await getMaxOracleAgeSeconds(stableFeed)))
48
49
  return 0n;
49
50
  return answer;
50
51
  }
@@ -91,7 +92,7 @@ export async function getAuctionState() {
91
92
  let inputAmountRaw = gapEth;
92
93
  let inputDecimals = 18;
93
94
  if (vaultBuysAsset && !isWeth) {
94
- const assetPrice = await oraclePrice(row[1], now);
95
+ const assetPrice = await oraclePrice(row[1], now, row[2]);
95
96
  inputToken = token;
96
97
  inputSymbol = String(symbol);
97
98
  inputDecimals = Number(decimals);
@@ -1 +1 @@
1
- {"version":3,"file":"auction.js","sourceRoot":"","sources":["../src/auction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auction.js","sourceRoot":"","sources":["../src/auction.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -5,7 +5,8 @@
5
5
  * Addresses and constants of the vault in service on Base mainnet, taken from the verified sources.
6
6
  */
7
7
  import type { Address } from "viem";
8
- export declare const PACKAGE_VERSION: string;
8
+ import { PACKAGE_VERSION } from "./version.js";
9
+ export { PACKAGE_VERSION };
9
10
  export declare const BASE_CHAIN_ID = 8453;
10
11
  export declare const DEFAULT_RPC_URL = "https://base-rpc.publicnode.com";
11
12
  export declare const RPC_URL: string;
@@ -13,6 +14,12 @@ export declare const GBLIN_VAULT: Address;
13
14
  export declare const GBLIN_LENS: Address;
14
15
  export declare const GBLIN_ZAP: Address;
15
16
  export declare const GBLIN_PREVIOUS: Address;
17
+ export declare const GBLIN_PREVIOUS_2: Address;
18
+ export declare const GBLIN_SENTINEL: Address;
19
+ export declare const GBLIN_UNISWAP_ADAPTER: Address;
20
+ export declare const GBLIN_FILL_AGENT: Address;
21
+ export declare const GBLIN_AUCTION_ORDER: Address;
22
+ export declare const GBLIN_POOL: Address;
16
23
  export declare const USDC: Address;
17
24
  export declare const WETH: Address;
18
25
  export declare const GBLIN_TIMELOCK: Address;
@@ -22,12 +29,22 @@ export declare const ETH_USD_FEED: Address;
22
29
  export declare const GBLIN_ATTESTOR: Address;
23
30
  export declare const WETH_USDC_POOL_FEE = 500;
24
31
  export declare const COOLDOWN_SECONDS_FALLBACK = 20;
25
- export declare const ORACLE_STALENESS_SECONDS = 86400;
32
+ /**
33
+ * Fallback for the oldest oracle answer the server accepts. The live limit is the vault's own
34
+ * `oracleAge`, read through the Lens (see getMaxOracleAgeSeconds); this value is used only when
35
+ * that read fails.
36
+ */
37
+ export declare const ORACLE_STALENESS_SECONDS = 7200;
38
+ /**
39
+ * The oldest answer the vault accepts from the feed of a stable asset, whose Chainlink heartbeat is
40
+ * a day. It is a constant in the contract (PRICE_MAX_AGE), not a governance parameter.
41
+ */
42
+ export declare const STABLE_PRICE_MAX_AGE_SECONDS = 93600;
26
43
  export declare const SLIPPAGE_NORMAL_BPS = 250n;
27
44
  export declare const SLIPPAGE_CRASH_SHIELD_BPS = 400n;
28
45
  export declare const BPS_DENOMINATOR = 10000n;
29
46
  export declare const NAV_CACHE_TTL_MS = 30000;
30
47
  export declare const BASKET_CACHE_TTL_MS = 60000;
31
48
  export declare const SERVER_NAME = "gblin-treasury-mcp";
32
- export declare const SERVER_VERSION: string;
49
+ export declare const SERVER_VERSION = "0.5.0";
33
50
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAMpC,eAAO,MAAM,eAAe,QAAc,CAAC;AAG3C,eAAO,MAAM,aAAa,OAAO,CAAC;AAGlC,eAAO,MAAM,eAAe,oCAAoC,CAAC;AAiBjE,eAAO,MAAM,OAAO,QAC4C,CAAC;AAIjE,eAAO,MAAM,WAAW,EAAE,OAAsD,CAAC;AAEjF,eAAO,MAAM,UAAU,EAAE,OAAsD,CAAC;AAGhF,eAAO,MAAM,SAAS,EAAE,OAAsD,CAAC;AAG/E,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AACpF,eAAO,MAAM,IAAI,EAAE,OAAsD,CAAC;AAC1E,eAAO,MAAM,IAAI,EAAE,OAAsD,CAAC;AAG1E,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AAEpF,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AACpF,eAAO,MAAM,0BAA0B,UAAW,CAAC;AAGnD,eAAO,MAAM,YAAY,EAAE,OAAsD,CAAC;AASlF,eAAO,MAAM,cAAc,EAAE,OAGqB,CAAC;AAGnD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAItC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAI/C,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,eAAe,SAAU,CAAC;AAGvC,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAG1C,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,eAAO,MAAM,cAAc,QAAc,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,CAAC;AAG3B,eAAO,MAAM,aAAa,OAAO,CAAC;AAGlC,eAAO,MAAM,eAAe,oCAAoC,CAAC;AAiBjE,eAAO,MAAM,OAAO,QAC4C,CAAC;AAIjE,eAAO,MAAM,WAAW,EAAE,OAAsD,CAAC;AAEjF,eAAO,MAAM,UAAU,EAAE,OAAsD,CAAC;AAGhF,eAAO,MAAM,SAAS,EAAE,OAAsD,CAAC;AAG/E,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AAEpF,eAAO,MAAM,gBAAgB,EAAE,OAAsD,CAAC;AAEtF,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AACpF,eAAO,MAAM,qBAAqB,EAAE,OAAsD,CAAC;AAC3F,eAAO,MAAM,gBAAgB,EAAE,OAAsD,CAAC;AACtF,eAAO,MAAM,mBAAmB,EAAE,OAAsD,CAAC;AAEzF,eAAO,MAAM,UAAU,EAAE,OAAsD,CAAC;AAChF,eAAO,MAAM,IAAI,EAAE,OAAsD,CAAC;AAC1E,eAAO,MAAM,IAAI,EAAE,OAAsD,CAAC;AAG1E,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AAEpF,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AACpF,eAAO,MAAM,0BAA0B,UAAW,CAAC;AAGnD,eAAO,MAAM,YAAY,EAAE,OAAsD,CAAC;AASlF,eAAO,MAAM,cAAc,EAAE,OAGqB,CAAC;AAGnD,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAItC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAInD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,eAAe,SAAU,CAAC;AAGvC,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAG1C,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,eAAO,MAAM,cAAc,UAAkB,CAAC"}
package/dist/config.js CHANGED
@@ -4,11 +4,9 @@
4
4
  * All addresses, constants, and tunable parameters.
5
5
  * Addresses and constants of the vault in service on Base mainnet, taken from the verified sources.
6
6
  */
7
- import { createRequire } from "node:module";
8
- const require = createRequire(import.meta.url);
9
- const pkg = require("../package.json");
7
+ import { PACKAGE_VERSION } from "./version.js";
10
8
  // ─── Version ────────────────────────────────────────────────────────────────
11
- export const PACKAGE_VERSION = pkg.version;
9
+ export { PACKAGE_VERSION };
12
10
  // ─── Network ────────────────────────────────────────────────────────────────
13
11
  export const BASE_CHAIN_ID = 8453;
14
12
  // publicnode.com is a free, no-key, generously-rated Base mainnet RPC
@@ -39,6 +37,15 @@ export const GBLIN_ZAP = "0x0E9D6Ceb6D313b021622C121Cda9C62e86e60200";
39
37
  // Previous deployment, superseded. Kept only so that risk attestations signed under EIP-712 domain
40
38
  // version 1 remain verifiable; nothing is read from it.
41
39
  export const GBLIN_PREVIOUS = "0x36C81d7E1966310F305eA637e761Cf77F90852f0";
40
+ // An earlier deployment, also deprecated.
41
+ export const GBLIN_PREVIOUS_2 = "0x38DcDB3A381677239BBc652aed9811F2f8496345";
42
+ // The rest of the deployment in service. Every address carries verified source code on Base.
43
+ export const GBLIN_SENTINEL = "0x9F13C5c46a864183e1c57Ec02837fe5B980D3F67";
44
+ export const GBLIN_UNISWAP_ADAPTER = "0x062654Bf9b5Bd88b84D7861a8f22ba94dECd9d3F";
45
+ export const GBLIN_FILL_AGENT = "0x0f4307A5Eb7D33d04Cb68fb0bA4d47a56C7E2fc8";
46
+ export const GBLIN_AUCTION_ORDER = "0x156Ffd19819e02d9809cED8fa1416EDCD31ddaB9";
47
+ // Uniswap V3 WETH/GBLIN pool, fee tier 0.3%.
48
+ export const GBLIN_POOL = "0x779C4260022bf7493d303Ff016C3C63215ee9B19";
42
49
  export const USDC = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
43
50
  export const WETH = "0x4200000000000000000000000000000000000006";
44
51
  // GblinTimelockController: 48-hour minimum delay, 14-day grace period, open executor.
@@ -63,7 +70,17 @@ export const WETH_USDC_POOL_FEE = 500; // 0.05%
63
70
  // ─── Protocol constants (mirror the vault's own settings) ──────────────────────────────
64
71
  // Redemption cooldown after a mint, in seconds. Read live from the Lens; this value is only the fallback when that read fails.
65
72
  export const COOLDOWN_SECONDS_FALLBACK = 20;
66
- export const ORACLE_STALENESS_SECONDS = 86_400; // 24h Chainlink heartbeat
73
+ /**
74
+ * Fallback for the oldest oracle answer the server accepts. The live limit is the vault's own
75
+ * `oracleAge`, read through the Lens (see getMaxOracleAgeSeconds); this value is used only when
76
+ * that read fails.
77
+ */
78
+ export const ORACLE_STALENESS_SECONDS = 7_200;
79
+ /**
80
+ * The oldest answer the vault accepts from the feed of a stable asset, whose Chainlink heartbeat is
81
+ * a day. It is a constant in the contract (PRICE_MAX_AGE), not a governance parameter.
82
+ */
83
+ export const STABLE_PRICE_MAX_AGE_SECONDS = 93_600;
67
84
  // ─── Slippage Buffers (basis points) ────────────────────────────────────────
68
85
  // Applied on top of contract-internal slippage (maxInternalSlippage = 200 bps)
69
86
  export const SLIPPAGE_NORMAL_BPS = 250n; // 2.5% — calm market
@@ -74,5 +91,5 @@ export const NAV_CACHE_TTL_MS = 30_000; // 30 seconds
74
91
  export const BASKET_CACHE_TTL_MS = 60_000; // 60 seconds
75
92
  // ─── Metadata ───────────────────────────────────────────────────────────────
76
93
  export const SERVER_NAME = "gblin-treasury-mcp";
77
- export const SERVER_VERSION = pkg.version;
94
+ export const SERVER_VERSION = PACKAGE_VERSION;
78
95
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/helpers.d.ts CHANGED
@@ -7,6 +7,12 @@
7
7
  * All functions are read-only against Base mainnet. No private keys involved.
8
8
  */
9
9
  import type { Address } from "viem";
10
+ /**
11
+ * The oldest oracle answer the vault itself accepts when it prices its NAV: a fixed 26 hours for
12
+ * the feed of a stable asset, and `oracleAge` (read from the contract) for every other feed. The
13
+ * server refuses the same prices the contract refuses.
14
+ */
15
+ export declare function getMaxOracleAgeSeconds(stableFeed?: boolean): Promise<number>;
10
16
  export declare function getEthPriceUsd(): Promise<number>;
11
17
  export declare function getNavUsd(): Promise<number>;
12
18
  export interface BasketEntry {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AA6BpC,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CA+BtD;AAQD,wBAAsB,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAoBjD;AAMD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAID;;;;GAIG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAuD3D;AAMD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,QAAQ,GAAG,qBAAqB,CAAC;CAC1C;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAcnE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzE;AAMD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CA4B5E;AAMD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;IACT,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC,CAyCD;AAMD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAsChF;AAMD,wBAAgB,WAAW,IAAI,IAAI,CAIlC"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AA+BpC;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,UAAU,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBhF;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAgCtD;AAQD,wBAAsB,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAoBjD;AAMD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAID;;;;GAIG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC,CAuD3D;AAMD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,QAAQ,GAAG,qBAAqB,CAAC;CAC1C;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAcnE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzE;AAMD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CA4B5E;AAMD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;IACT,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC,CAkCD;AAMD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAsChF;AAMD,wBAAgB,WAAW,IAAI,IAAI,CAIlC"}
package/dist/helpers.js CHANGED
@@ -9,11 +9,41 @@
9
9
  import { formatUnits, parseUnits } from "viem";
10
10
  import { client, getOnChainTimestamp } from "./client.js";
11
11
  import { CHAINLINK_AGGREGATOR_ABI, ERC20_ABI, GBLIN_ABI, LENS_ABI, } from "./abi.js";
12
- import { BASKET_CACHE_TTL_MS, BPS_DENOMINATOR, COOLDOWN_SECONDS_FALLBACK, ETH_USD_FEED, GBLIN_LENS, GBLIN_VAULT, NAV_CACHE_TTL_MS, ORACLE_STALENESS_SECONDS, SLIPPAGE_CRASH_SHIELD_BPS, SLIPPAGE_NORMAL_BPS, USDC, } from "./config.js";
12
+ import { BASKET_CACHE_TTL_MS, BPS_DENOMINATOR, COOLDOWN_SECONDS_FALLBACK, ETH_USD_FEED, GBLIN_LENS, GBLIN_VAULT, NAV_CACHE_TTL_MS, ORACLE_STALENESS_SECONDS, STABLE_PRICE_MAX_AGE_SECONDS, SLIPPAGE_CRASH_SHIELD_BPS, SLIPPAGE_NORMAL_BPS, USDC, } from "./config.js";
13
13
  // ───────────────────────────────────────────────────────────────────────────
14
14
  // ETH/USD PRICE (Chainlink) — with staleness guard
15
15
  // ───────────────────────────────────────────────────────────────────────────
16
16
  let ethPriceCache = null;
17
+ let oracleAgeCache = null;
18
+ /**
19
+ * The oldest oracle answer the vault itself accepts when it prices its NAV: a fixed 26 hours for
20
+ * the feed of a stable asset, and `oracleAge` (read from the contract) for every other feed. The
21
+ * server refuses the same prices the contract refuses.
22
+ */
23
+ export async function getMaxOracleAgeSeconds(stableFeed = false) {
24
+ if (stableFeed)
25
+ return STABLE_PRICE_MAX_AGE_SECONDS;
26
+ const now = Date.now();
27
+ if (oracleAgeCache && now - oracleAgeCache.fetchedAt < 10 * 60_000)
28
+ return oracleAgeCache.value;
29
+ try {
30
+ const cfg = await client.readContract({
31
+ address: GBLIN_LENS,
32
+ abi: LENS_ABI,
33
+ functionName: "configFees",
34
+ args: [GBLIN_VAULT],
35
+ });
36
+ const value = Number(cfg[3]);
37
+ if (value > 0) {
38
+ oracleAgeCache = { value, fetchedAt: now };
39
+ return value;
40
+ }
41
+ }
42
+ catch {
43
+ // Fall through to the fallback below.
44
+ }
45
+ return ORACLE_STALENESS_SECONDS;
46
+ }
17
47
  export async function getEthPriceUsd() {
18
48
  const now = Date.now();
19
49
  if (ethPriceCache && now - ethPriceCache.fetchedAt < NAV_CACHE_TTL_MS) {
@@ -30,8 +60,9 @@ export async function getEthPriceUsd() {
30
60
  throw new Error("OracleDead: Chainlink ETH/USD feed returned non-positive value.");
31
61
  }
32
62
  const nowSec = Math.floor(now / 1_000);
33
- if (nowSec - updatedAt > ORACLE_STALENESS_SECONDS) {
34
- throw new Error(`OracleStale: Chainlink ETH/USD feed is ${nowSec - updatedAt}s old (max ${ORACLE_STALENESS_SECONDS}s). Aborting to protect against MEV/slippage.`);
63
+ const maxAge = await getMaxOracleAgeSeconds();
64
+ if (nowSec - updatedAt > maxAge) {
65
+ throw new Error(`OracleStale: Chainlink ETH/USD feed is ${nowSec - updatedAt}s old (the vault accepts at most ${maxAge}s). Aborting rather than quoting on a price the contract would refuse.`);
35
66
  }
36
67
  // Chainlink ETH/USD on Base has 8 decimals
37
68
  const price = Number(answer) / 1e8;
@@ -192,17 +223,10 @@ export async function quoteGblinForUsdc(usdcTargetStr) {
192
223
  // swap, which spends only that minimum and must still return the full target. Gross up for both.
193
224
  const keep = BPS_DENOMINATOR - slippage.bps;
194
225
  const grossUsdcTarget = (usdcTargetUnits * BPS_DENOMINATOR * BPS_DENOMINATOR) / (keep * keep);
195
- // Convert USDC (6 dec) → GBLIN (18 dec) using NAV.
196
- // gblin = (grossUsdc / 1e6) / navUsd → scale to 18-dec wei
197
- // Using BigInt math: gblin = grossUsdc * 1e12 * 1e6 / (navUsd_scaled)
198
- // We scale navUsd by 1e6 for precision.
226
+ // Convert USDC to shares at NAV. Both grossUsdcTarget and navUsdScaled are USD scaled by 1e6, so
227
+ // shares (18 decimals) = grossUsdcTarget * 1e18 / navUsdScaled. Scaling the NAV to a millionth of a
228
+ // dollar bounds the relative error near 1e-8, far inside the slippage buffer.
199
229
  const navUsdScaled = BigInt(Math.round(navUsd * 1_000_000));
200
- // gblinToSell = grossUsdcTarget(6 dec) * 1e18 / (navUsdScaled / 1e6) → simplifies to:
201
- // gblinToSell = grossUsdcTarget * 1e18 * 1e6 / (navUsdScaled * 1e6) = grossUsdcTarget * 1e18 / navUsdScaled
202
- // Wait — need to align decimals carefully:
203
- // grossUsdcTarget has 6 decimals → represents USD * 1e6
204
- // navUsdScaled represents USD * 1e6
205
- // So gblinUnits (18 decimals) = (grossUsdcTarget / navUsdScaled) * 1e18
206
230
  const gblinToSell = (grossUsdcTarget * parseUnits("1", 18)) / navUsdScaled;
207
231
  // minUsdcOut = exact target (we asked for this much; agent fails if it gets less)
208
232
  const minUsdcOut = usdcTargetUnits;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,10 +2,9 @@
2
2
  /**
3
3
  * GBLIN MCP Server — entry point.
4
4
  *
5
- * Speaks the Model Context Protocol over stdio. Clients (desktop assistants,
6
- * AgentKit, Eliza, custom agents) discover and invoke the GBLIN tools listed
7
- * in TOOL_DEFINITIONS (13 as of 0.3.2: treasury/governance, risk regime,
8
- * risk attestation verification and the receipts trio).
5
+ * Speaks the Model Context Protocol over stdio and exposes three primitives: tools (TOOL_DEFINITIONS),
6
+ * prompts (PROMPT_DEFINITIONS) and resources (RESOURCE_DEFINITIONS). The server holds no keys and never
7
+ * sends a transaction: tools that act return unsigned calldata or typed data for the caller's wallet.
9
8
  *
10
9
  * IMPORTANT: never write to stdout via console.log — that channel is reserved
11
10
  * for MCP JSON-RPC frames. Use console.error (stderr) for diagnostics.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;GAUG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG"}
package/dist/index.js CHANGED
@@ -2,46 +2,79 @@
2
2
  /**
3
3
  * GBLIN MCP Server — entry point.
4
4
  *
5
- * Speaks the Model Context Protocol over stdio. Clients (desktop assistants,
6
- * AgentKit, Eliza, custom agents) discover and invoke the GBLIN tools listed
7
- * in TOOL_DEFINITIONS (13 as of 0.3.2: treasury/governance, risk regime,
8
- * risk attestation verification and the receipts trio).
5
+ * Speaks the Model Context Protocol over stdio and exposes three primitives: tools (TOOL_DEFINITIONS),
6
+ * prompts (PROMPT_DEFINITIONS) and resources (RESOURCE_DEFINITIONS). The server holds no keys and never
7
+ * sends a transaction: tools that act return unsigned calldata or typed data for the caller's wallet.
9
8
  *
10
9
  * IMPORTANT: never write to stdout via console.log — that channel is reserved
11
10
  * for MCP JSON-RPC frames. Use console.error (stderr) for diagnostics.
12
11
  */
13
12
  import { Server } from "@modelcontextprotocol/sdk/server/index.js";
14
13
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
15
- import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
14
+ import { CallToolRequestSchema, GetPromptRequestSchema, ListPromptsRequestSchema, ListResourcesRequestSchema, ListToolsRequestSchema, McpError, ErrorCode, ReadResourceRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
16
15
  import { SERVER_NAME, SERVER_VERSION } from "./config.js";
16
+ import { PROMPT_DEFINITIONS, getPrompt } from "./prompts.js";
17
+ import { RESOURCE_DEFINITIONS, readResource } from "./resources.js";
17
18
  import { TOOL_DEFINITIONS, TOOL_HANDLERS } from "./tools.js";
18
- // Sent in the initialize result. The hosted HTTP server has had one since August; this
19
- // package sent none, so a client saw 13 bare tool names and no map. Kept short and factual.
20
- const INSTRUCTIONS = "GBLIN stdio MCP (" + SERVER_NAME + " v" + SERVER_VERSION + "). Read-only tools need no key: " +
21
- "get_market_risk_regime (calm|elevated|crash from the on-chain Crash Shield on Base), " +
22
- "get_treasury_state, get_governance_state, analyze_treasury_health, quote_safe_swap, " +
23
- "get_auction_state (the vault rebalances by Dutch auction: side, gap and premium per row, with the bid to send), " +
24
- "verify_risk_attestation (pure EIP-712 math), share_skill_with_peer. " +
25
- "swap_gblin_to_usdc_jit and invest_usdc_to_gblin build transactions through the GBLIN Zap and need a signer " +
26
- "configured by the operator. Receipts: seal_action_demo (5/day/IP, marked demo:true), " +
27
- "get_receipt, how_to_seal_paid (unlimited seals are a paid x402 HTTP endpoint, $0.01 USDC). " +
28
- "Everything here is free; paid signals are x402 HTTP endpoints at https://gblin.digital/api/x402 " +
29
- "(docs: https://gblin.digital/llms.txt). A hosted, no-install variant with a different, smaller " +
30
- "tool set lives at https://gblin-mcp.gblin-mcp-worker.workers.dev/mcp.";
31
- const server = new Server({ name: SERVER_NAME, version: SERVER_VERSION }, { capabilities: { tools: {} }, instructions: INSTRUCTIONS });
19
+ // Sent in the initialize result: a short, factual map of what this server does.
20
+ const INSTRUCTIONS = "GBLIN stdio MCP (" + SERVER_NAME + " v" + SERVER_VERSION + "). GBLIN is an on-chain index of cbBTC, WETH and USDC on Base, " +
21
+ "minted and redeemed at NAV. This server holds no keys and never sends a transaction: tools that act return unsigned " +
22
+ "calldata or typed data for your own wallet to sign. " +
23
+ "Read: get_treasury_state, get_governance_state, get_auction_state (the vault rebalances by Dutch auction), " +
24
+ "get_market_risk_regime (calm|elevated|crash), analyze_treasury_health, quote_safe_swap, get_nav_history (NAV beside ETH and BTC). " +
25
+ "Act, in this order: prepare_action (any operation: mint with ETH, WETH or USDC, redeem in kind, exit to ETH or USDC, bid), " +
26
+ "preview_steps (simulate the steps before signing; it finds the gas each vault step really needs), send from your wallet, " +
27
+ "then get_transaction_status. Shortcuts: swap_gblin_to_usdc_jit (exit to USDC to pay an invoice), invest_usdc_to_gblin. " +
28
+ "Pay in GBLIN with a signature and no ETH (EIP-3009, x402 'exact'): prepare_gblin_payment, then verify_gblin_authorization; " +
29
+ "when nobody else will carry it, prepare with relay: true and hand both signatures to relay_gblin_payment (fee in GBLIN, one atomic transaction). " +
30
+ "Verify: verify_risk_attestation (pure EIP-712 math). Receipts: seal_action_demo, get_receipt, how_to_seal_paid. " +
31
+ "Prompts: risk_gate, pay_in_gblin, pay_invoice_just_in_time, seal_and_verify. " +
32
+ "Resources: gblin://contracts, gblin://payments, gblin://keys, gblin://limits. " +
33
+ "Every tool is free; paid data lives on x402 HTTP endpoints at https://gblin.digital (docs: https://gblin.digital/llms.txt).";
34
+ const server = new Server({ name: SERVER_NAME, version: SERVER_VERSION }, { capabilities: { tools: {}, prompts: {}, resources: {} }, instructions: INSTRUCTIONS });
35
+ server.setRequestHandler(ListPromptsRequestSchema, async () => ({ prompts: PROMPT_DEFINITIONS }));
36
+ server.setRequestHandler(GetPromptRequestSchema, async (request) => {
37
+ const { name, arguments: args } = request.params;
38
+ const prompt = getPrompt(name, (args ?? {}));
39
+ if (!prompt)
40
+ throw new McpError(ErrorCode.InvalidParams, `Unknown prompt: ${name}`);
41
+ return prompt;
42
+ });
43
+ server.setRequestHandler(ListResourcesRequestSchema, async () => ({ resources: RESOURCE_DEFINITIONS }));
44
+ server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
45
+ const { uri } = request.params;
46
+ const body = await readResource(uri);
47
+ if (!body)
48
+ throw new McpError(ErrorCode.InvalidParams, `Unknown resource: ${uri}`);
49
+ return { contents: [{ uri, mimeType: "application/json", text: JSON.stringify(body, null, 2) }] };
50
+ });
32
51
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
33
52
  tools: TOOL_DEFINITIONS,
34
53
  }));
54
+ /**
55
+ * Tools that existed in earlier releases and no longer do. A caller that integrated against
56
+ * an older version is told what to call instead, rather than only that the name is unknown.
57
+ */
58
+ const RETIRED_TOOLS = {
59
+ find_keeper_bounty: {
60
+ use: "get_auction_state",
61
+ why: "The vault in service rebalances through a Dutch auction and pays no keeper bounty; get_auction_state reports whether the auction is open, the premium and the gap per basket row.",
62
+ },
63
+ };
35
64
  server.setRequestHandler(CallToolRequestSchema, async (request) => {
36
65
  const { name, arguments: args } = request.params;
37
66
  const handler = TOOL_HANDLERS[name];
38
67
  if (!handler) {
68
+ // A caller that integrated before a rename gets the replacement, not a dead end.
69
+ const replacement = RETIRED_TOOLS[name];
39
70
  return {
40
71
  isError: true,
41
72
  content: [
42
73
  {
43
74
  type: "text",
44
- text: JSON.stringify({ error: `Unknown tool: ${name}` }),
75
+ text: JSON.stringify(replacement
76
+ ? { error: `Unknown tool: ${name}`, retired: true, use_instead: replacement.use, reason: replacement.why }
77
+ : { error: `Unknown tool: ${name}`, available: Object.keys(TOOL_HANDLERS) }),
45
78
  },
46
79
  ],
47
80
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE7D,uFAAuF;AACvF,4FAA4F;AAC5F,MAAM,YAAY,GAChB,mBAAmB,GAAG,WAAW,GAAG,IAAI,GAAG,cAAc,GAAG,kCAAkC;IAC9F,uFAAuF;IACvF,sFAAsF;IACtF,kHAAkH;IAClH,sEAAsE;IACtE,6GAA6G;IAC7G,uFAAuF;IACvF,6FAA6F;IAC7F,kGAAkG;IAClG,iGAAiG;IACjG,uEAAuE,CAAC;AAE1E,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,EAC9C,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,CAC5D,CAAC;AAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE,gBAAgB;CACxB,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;iBACzD;aACF;SACF,CAAC;IACJ,CAAC;IACD,8DAA8D;IAC9D,OAAO,OAAO,CAAC,IAAI,IAAI,EAAE,CAAQ,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CACX,IAAI,WAAW,MAAM,cAAc,iCAAiC,gBAAgB,CAAC,MAAM,qBAAqB,CACjH,CAAC;AACJ,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * GBLIN MCP — output schemas.
3
+ *
4
+ * Every tool that returns a JSON object declares its shape here, so a client can validate the
5
+ * `structuredContent` of a successful result and generate types from it. Error results carry
6
+ * `isError: true` and no structured content, so they are outside these schemas.
7
+ *
8
+ * The `required` list of each schema is the contract: fields a successful call always returns.
9
+ * Other fields are described but optional, and `additionalProperties` stays open, so adding a
10
+ * field later is not a breaking change. Removing or retyping a required field is.
11
+ *
12
+ * seal_action_demo has no schema: its result is the hosted log's receipt, whose shape is published
13
+ * by the log itself (see get_receipt for the fields a reader can rely on).
14
+ */
15
+ type JsonSchema = Record<string, unknown>;
16
+ export declare const OUTPUT_SCHEMAS: Record<string, JsonSchema>;
17
+ export {};
18
+ //# sourceMappingURL=output-schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output-schemas.d.ts","sourceRoot":"","sources":["../src/output-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAyB1C,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAqOrD,CAAC"}