@cloakely/mcp 0.5.0 → 0.6.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.
package/dist/server.d.ts CHANGED
@@ -3,7 +3,7 @@ import { type Prover } from "@cloakely/sdk";
3
3
  import type { Settings } from "./config.js";
4
4
  export { loadSettings, type Settings, type Limits } from "./config.js";
5
5
  export { Spending } from "./limits.js";
6
- export declare const VERSION = "0.5.0";
6
+ export declare const VERSION = "0.6.0";
7
7
  export declare const HOSTED_URL = "https://cloak.boblabs.tech/mcp";
8
8
  /** Turn an SDK or chain error into one plain sentence an agent can act on. */
9
9
  export declare function explain(e: unknown): string;
package/dist/server.js CHANGED
@@ -8,7 +8,7 @@ import { Cloak, CloakPrivate, cloakAuctionAbi, cloakPairAbi, cloakVaultsAbi, leg
8
8
  import { Spending } from "./limits.js";
9
9
  export { loadSettings } from "./config.js";
10
10
  export { Spending } from "./limits.js";
11
- export const VERSION = "0.5.0";
11
+ export const VERSION = "0.6.0";
12
12
  export const HOSTED_URL = "https://cloak.boblabs.tech/mcp";
13
13
  const INSTRUCTIONS = `Cloak: sealed-bid token launches and private trading on Kinetiq's Elysium (HYPE is the gas and base currency).
14
14
 
@@ -227,7 +227,7 @@ export function createCloakServer(settings, opts = {}) {
227
227
  ...(s.settled
228
228
  ? { clearingPrice: `${formatEther(s.clearingPrice)} HYPE per token`, sold: formatEther(s.sold), raised: hype(s.raised), pool: s.pair }
229
229
  : {}),
230
- liquidity: `${s.lpBps / 100}% of the raise seeds the pool at the clearing price; LP ${s.lpLockUntil === 0 ? "burned" : `locked until ${iso(s.lpLockUntil)}`}`,
230
+ liquidity: `${s.lpBps / 100}% of the raise seeds the pool at the clearing price; LP ${s.lpLockUntil === 0 ? "burned" : s.creatorFees || s.lpLockUntil >= 2 ** 63 ? "locked forever, trading fees to the creator" : `locked until ${iso(s.lpLockUntil)}`}`,
231
231
  noRevealPenalty: `${s.noRevealPenaltyBps / 100}%`,
232
232
  launchFee: `${s.launchFeeBps / 100}% of a successful raise`,
233
233
  caps: { perBid: s.bidCap ? hype(s.bidCap) : "none", total: s.depositCap ? hype(s.depositCap) : "none" },
@@ -386,7 +386,7 @@ export function createCloakServer(settings, opts = {}) {
386
386
  ifCreatedNow: { biddingEnds: iso(commitEnd), revealsEnd: iso(revealEnd) },
387
387
  priceRange: `${formatEther(min)} to ${formatEther(top)} HYPE per token, ${ticks} ticks`,
388
388
  raiseIfFullySold: { atLowestPrice: hype(raise(min)), atHighestPrice: hype(raise(top)) },
389
- toPool: `${lp}% of the raise, paired with tokens at the clearing price; the LP is burned unless you lock it`,
389
+ toPool: `${lp}% of the raise, paired with tokens at the clearing price in a Uniswap V2 pool; the LP is locked forever and its 0.3% trading fees go to you (or burned, or locked for a set time)`,
390
390
  launchFee: "1.5% of a successful raise; nothing if the launch doesn't fill",
391
391
  caps: "During the beta a bid can be at most 100 HYPE and an auction can take at most 10,000 HYPE.",
392
392
  create: { onTheSite: "https://cloak.boblabs.tech/app/create", withAnAgent: "the local server's create_launch tool (see connect_full_agent)" },
@@ -420,7 +420,8 @@ export function createCloakServer(settings, opts = {}) {
420
420
  reveal_minutes: z.number().min(1).max(60 * 24).optional().describe("Time for bids to open after bidding closes (default 10)"),
421
421
  lp_percent: z.number().min(0).max(100).optional().describe("Share of the raise that seeds the pool (default 50)"),
422
422
  lp_tokens: amt("Tokens paired with that HYPE (default: same as sale_supply)").optional(),
423
- lp_lock_days: z.number().min(0).optional().describe("Lock the LP for this many days instead of burning it (default: burn)"),
423
+ lp_lock_days: z.number().min(0).optional().describe("Lock the LP for this many days, after which the creator can take it (overrides creator_fees)"),
424
+ creator_fees: z.boolean().optional().describe("Lock the LP forever and pay the pool's 0.3% trading fees to the creator (default true; false burns the LP)"),
424
425
  creator_share: amt("Tokens for the creator, at most 20% of supply, vesting linearly").optional(),
425
426
  vest_days: z.number().min(30).optional().describe("Vesting length for the creator share (default 90)"),
426
427
  metadata_uri: z.string().optional(),
@@ -445,7 +446,7 @@ export function createCloakServer(settings, opts = {}) {
445
446
  commitEnd,
446
447
  revealEnd,
447
448
  lpBps: Math.round((p.lp_percent ?? 50) * 100),
448
- lpLockUntil: p.lp_lock_days ? now + Math.round(p.lp_lock_days * 86400) : "burn",
449
+ lpLockUntil: p.lp_lock_days ? revealEnd + Math.round(p.lp_lock_days * 86400) : p.creator_fees === false ? "burn" : "fees",
449
450
  metadataURI: p.metadata_uri,
450
451
  };
451
452
  spending.check("launches", 1n);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloakely/mcp",
3
3
  "mcpName": "io.github.NECOKIZZ/cloak",
4
- "version": "0.5.0",
4
+ "version": "0.6.0",
5
5
  "description": "Cloak's MCP server: let an AI agent launch tokens with sealed bids and trade them privately on Elysium, with spending limits, testnet by default and a local signer.",
6
6
  "keywords": [
7
7
  "mcp",
@@ -47,7 +47,7 @@
47
47
  "@modelcontextprotocol/sdk": "1.32.1",
48
48
  "viem": "2.21.54",
49
49
  "zod": "4.6.7",
50
- "@cloakely/sdk": "^0.5.0"
50
+ "@cloakely/sdk": "^0.6.0"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/node": "22.10.2",