@candledottv/mcp 0.10.1 → 0.10.2

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 (2) hide show
  1. package/dist/index.js +8 -6
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -106,7 +106,7 @@ function percentOfBalance(balanceRaw, percent) {
106
106
  import { randomUUID } from "node:crypto";
107
107
 
108
108
  // src/version.ts
109
- var SERVER_VERSION = "0.10.1";
109
+ var SERVER_VERSION = "0.10.2";
110
110
 
111
111
  // src/update-notice.ts
112
112
  var PLAIN_VERSION = /^\d+\.\d+\.\d+$/;
@@ -860,9 +860,9 @@ function registerTools(server, env = process.env) {
860
860
  }, async (args) => callAndRelay("candle_get_market", args, cfg));
861
861
  register("candle_token_forensics", {
862
862
  title: "Token forensics",
863
- description: `Gate a buy before making it: who launched it (resolved on-chain; pump.fun's shared updateAuthority is never the developer), their went-to-zero rate and last coins, who bought in the deploy window (the creator's own wallets are marked disclosed; strangers in the same slot are the bundle signal), same-funder insider share, same-funder deployer cluster, and safety.summary with six sourced flags (mintAuthority, freezeAuthority, tokenExtensions, lpLock, sellability, liquidityDrain). Refuse an unprompted buy when flagged; incomplete or unknown is not clearance. launch.deployerLaunches is an inclusive informational count, never a warning. Every measurement carries a coverage note -- 'unavailable' is not 'clean'. No key needed.
863
+ description: `Gate a buy before making it: who launched it (resolved on-chain; pump.fun's shared updateAuthority is never the developer; when no developer is on chain, deployer.attribution names the launchpad or issuer instead, e.g. launched via stonk.fun or issued by xStocks), their went-to-zero rate and last coins, who bought in the deploy window (the creator's own wallets are marked disclosed; strangers in the same slot are the bundle signal), same-funder insider share, same-funder deployer cluster, and safety.summary with six sourced flags (mintAuthority, freezeAuthority, tokenExtensions, lpLock, sellability, liquidityDrain). Refuse an unprompted buy when flagged; incomplete or unknown is not clearance. launch.deployerLaunches is an inclusive informational count, never a warning. Every measurement carries a coverage note -- 'unavailable' is not 'clean'. No key needed.
864
864
 
865
- MARKET_NOT_FOUND means Candle has no market for that token and this could not run. That is also not 'clean': report that you could not check it, rather than reporting the token as safe. That refusal now carries error.coverage -- covered:false, a reason ('external_launchpad' when the token launched somewhere else, 'unknown_mint' when nobody has indexed it), the launchpad when known, and every check that consequently did not run. Read it instead of guessing. Most of the feed now answers with a partial report instead.`,
865
+ MARKET_NOT_FOUND means Candle has no market for that token and this could not run. That is also not 'clean': report that you could not check it, rather than reporting the token as safe. That refusal now carries error.coverage -- covered:false, a reason ('external_launchpad' when the token launched somewhere else, 'unknown_mint' when nobody has indexed it), the launchpad when known, and every check that consequently did not run. Read it instead of guessing. Most of the feed, and any Solana mint Jupiter's index knows, now answers with a partial report instead.`,
866
866
  inputSchema: tokenForensicsShape
867
867
  }, async (args) => callAndRelay("candle_token_forensics", args, cfg));
868
868
  register("candle_get_feed", {
@@ -950,7 +950,9 @@ MARKET_NOT_FOUND means Candle has no market for that token and this could not ru
950
950
  ` + "- A timeout is unknown, not failed. Pass a `clientSwapId` and retry the SAME request, " + "including the same slippage. The replay returns the stored result: the original success, " + "or a stored error. An indeterminate first leg comes back as SWAP_FAILED, retryable false, " + "with the signature in the message -- verify that on-chain before a new id. A swap that is " + "still running, with no stored outcome, is a retryable conflict. A different body under the " + "same id is rejected. A confirmed first leg is replayed with its hash, retryable false, and " + "is not run again. retryable true on the first LEG2_FAILED means send leg 2 as a new request. " + `Omitting the id never coalesces -- do not retry a timed-out call that had no id.
951
951
  ` + "- If a bridge times out, check the returned status URLs rather than treating the funds " + `as arrived or lost.
952
952
 
953
- ` + 'Amounts are decimal (`amount`, e.g. "0.5"); `amountRaw` still accepts raw base units for ' + "callers that already compute them. Test-environment keys are refused: every leg settles " + "on a live venue.",
953
+ ` + 'Amounts are decimal (`amount`, e.g. "0.5"); `amountRaw` still accepts raw base units for ' + "callers that already compute them. Test-environment keys are refused: every leg settles " + `on a live venue.
954
+
955
+ ` + "This tool spends the embedded wallets. A TEE wallet also bridges, from SOL or USDC to ETH " + "or USDG or back, but only into the same key's TEE wallet on the other chain, with no Candle " + "fee: that runs through `candle swap` with the wallet's bound key, not this tool.",
954
956
  inputSchema: swapShape
955
957
  }, async (args) => callAndRelay("candle_swap", args, cfg));
956
958
  register("candle_transfer", {
@@ -1004,7 +1006,7 @@ START HERE — five tools need NO credential. Call these first to confirm the se
1004
1006
  candle_get_market price, market cap, volume, curve state for one token
1005
1007
  candle_get_feed the roster: hot streak, new pairs, graduated, blue chip
1006
1008
  candle_resolve_token a ticker or partial name -> mint address + chain
1007
- candle_token_forensics call this before quoting or buying. Returns the on-chain developer (never a launchpad shared authority), their went-to-zero rate and last coins, who bought in the deploy window (strangers in the same slot are the bundle signal), same-funder insider share, same-funder cluster, and safety.summary with six sourced flags. Refuse an unprompted buy when flagged; incomplete or unknown is not clearance. launch.deployerLaunches is an inclusive informational count, never a warning
1009
+ candle_token_forensics call this before quoting or buying. Returns the on-chain developer (never a launchpad shared authority; deployer.attribution names the launchpad or issuer when no developer is on chain), their went-to-zero rate and last coins, who bought in the deploy window (strangers in the same slot are the bundle signal), same-funder insider share, same-funder cluster, and safety.summary with six sourced flags. Refuse an unprompted buy when flagged; incomplete or unknown is not clearance. launch.deployerLaunches is an inclusive informational count, never a warning
1008
1010
  candle_get_agent_profile your own tier, caps and verified activity
1009
1011
 
1010
1012
  COVERAGE — read this before you treat an error as a broken server.
@@ -1020,7 +1022,7 @@ General quotes use POST /api/v1/trade/agent/quote; curve quotes/lifecycle descri
1020
1022
  Stored eligibility is not a successful quote or permission. MARKET_NOT_FOUND remains a legacy
1021
1023
  code: read error.routing.reason, error.discovery and sibling error.retryable. A curve-only
1022
1024
  404 is endpoint guidance, not a verdict that Candle cannot trade external tokens.
1023
- candle_token_forensics also answers for Solana tokens the feed already knows, with a partial
1025
+ candle_token_forensics also answers for Solana tokens the feed or Jupiter's index knows, with a partial
1024
1026
  report: on-chain developer (never a launchpad shared authority), went-to-zero record, token
1025
1027
  safety flags, same-funder insiders and cluster. Deploy-window stays unavailable without a
1026
1028
  Candle launch record. Indexed external Hood tokens also answer, with unknown hacc flags.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@candledottv/mcp",
3
- "version": "0.10.1",
3
+ "version": "0.10.2",
4
4
  "description": "MCP server for the Candle agent rail: launch tokens, read markets, report activity",
5
5
  "type": "module",
6
6
  "license": "MIT",