@bankofai/mcp-server-tron 1.1.4 → 1.1.6

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/README.md CHANGED
@@ -91,8 +91,8 @@ Key capabilities:
91
91
 
92
92
  ### Wallet & Security
93
93
 
94
- - **Agent-Wallet (Recommended)**: Encrypted key storage via agent-wallet SDK — private keys never leave the keystore.
95
- - **Legacy Wallet**: Configure via `TRON_PRIVATE_KEY` or `TRON_MNEMONIC` environment variables.
94
+ - **Agent Wallet (Recommended)**: Encrypted key storage via agent-wallet SDK — private keys never leave the keystore.
95
+ - **Static Wallet**: Configure via `TRON_PRIVATE_KEY` or `TRON_MNEMONIC` environment variables.
96
96
  - **HD Wallet**: Supports BIP-44 derivation path `m/44'/195'/0'/0/{index}`.
97
97
  - **Signing**: Sign arbitrary messages and transactions.
98
98
 
@@ -150,7 +150,7 @@ export AGENT_WALLET_PASSWORD="<YOUR_MASTER_PASSWORD>"
150
150
  export AGENT_WALLET_DIR="<YOUR_WALLET_DIR>" # Optional, default: ~/.agent-wallet
151
151
  ```
152
152
 
153
- > `AGENT_WALLET_PASSWORD` must match the master password used during `agent-wallet`. If not set, agent-wallet mode is disabled and the server falls back to legacy mode or read-only mode.
153
+ > `AGENT_WALLET_PASSWORD` must match the master password used during `agent-wallet`. If not set, agent-wallet mode is disabled and the server falls back to static mode or read-only mode.
154
154
 
155
155
  **Option 2: Private Key**
156
156
 
@@ -165,7 +165,7 @@ export TRON_MNEMONIC="<WORD1> <WORD2> ... <WORD12>"
165
165
  export TRON_ACCOUNT_INDEX="0" # Optional, default: 0
166
166
  ```
167
167
 
168
- > **Security Note**: Legacy modes store keys in plaintext environment variables. Agent-wallet mode is strongly recommended for production use.
168
+ > **Security Note**: Static modes expose keys in plaintext. **Only keep small amounts of funds** in these wallets — large balances carry a real **risk of theft**. Use Agent-Wallet Mode (Option 1) for any significant funds.
169
169
 
170
170
  > See [`.env.example`](.env.example) for a complete list of all supported environment variables.
171
171
 
@@ -184,10 +184,36 @@ npm start
184
184
  # Start in readonly mode (disables write tools)
185
185
  npm start -- --readonly
186
186
 
187
- # Start in HTTP mode (Streamable HTTP)
187
+ # Start in stateless HTTP mode (Streamable HTTP)
188
188
  npm run start:http
189
189
  ```
190
190
 
191
+ ### Docker
192
+
193
+ Build the image:
194
+
195
+ ```bash
196
+ docker build -t mcp-server-tron:test .
197
+ ```
198
+
199
+ Run the container with local logs mounted:
200
+
201
+ ```bash
202
+ docker run -d \
203
+ --name mcp-tron \
204
+ -p 3001:3001 \
205
+ -e MCP_HOST=0.0.0.0 \
206
+ -e MCP_PORT=3001 \
207
+ -e MCP_LOG_DIR=/app/logs \
208
+ -v "$(pwd)/logs:/app/logs" \
209
+ mcp-server-tron:test
210
+ ```
211
+
212
+ Docker logs are written to the mounted `logs/` directory and are named by date, for example:
213
+
214
+ - `logs/mcp-server-tron-2026-03-18-combined.log`
215
+ - `logs/mcp-server-tron-2026-03-18-error.log`
216
+
191
217
  ### Testing
192
218
 
193
219
  The project includes a comprehensive test suite with unit tests and integration tests (using the Nile testnet).
@@ -248,7 +274,7 @@ claude mcp add -e AGENT_WALLET_PASSWORD=xxx -e TRONGRID_API_KEY=xxx mcp-server-t
248
274
 
249
275
  #### Option B: Official Hosted Server (Remote)
250
276
 
251
- Connect to the official hosted server at `https://tron-mcp-server.bankofai.io`. No installation required, readonly mode.
277
+ Connect to the official hosted server at `https://tron-mcp-server.bankofai.io`. No installation required, readonly mode, stateless HTTP.
252
278
 
253
279
  **Claude Code:**
254
280
 
@@ -471,7 +497,8 @@ claude mcp add -transport http mcp-server-tron https://tron-mcp-server.bankofai.
471
497
  ## Security Considerations
472
498
 
473
499
  - **Private Keys & Mnemonics**: **NEVER** save your sensitive wallet information in plain text configuration files (like `mcp.json`). These files are often unencrypted and can be accidentally shared or committed to git. Use system environment variables which are more secure.
474
- - **Exposure**: If you are using a shared machine, be aware that environment variables might be visible to other users.
500
+ - **Fund Safety (Static Mode)**: If you use `TRON_PRIVATE_KEY` or `TRON_MNEMONIC`, keys are stored in plaintext environment variables. This carries a **real risk of fund theft** environment variables can be leaked via shell history, process listings, or log files. **Only keep a small amount of funds** in these wallets. For wallets holding any significant value, always use [Agent-Wallet Mode](#option-1-agent-wallet-mode-recommended).
501
+ - **Shared Machines**: Be aware that on shared systems, environment variables might be visible to other users via `/proc` or system monitoring tools.
475
502
  - **Testnets**: Always test on Nile or Shasta before performing operations on Mainnet.
476
503
  - **Approvals**: Be cautious when approving token allowances via `write_contract`. Only approve what is necessary.
477
504
 
@@ -16,7 +16,6 @@ import * as services from "./services/index.js";
16
16
  * @param options Registration options
17
17
  */
18
18
  export function registerTRONPrompts(server, options = {}) {
19
- const { isWalletConfigured } = services;
20
19
  /**
21
20
  * Helper to register a prompt with automatic wallet requirement detection.
22
21
  * Prompts that guide write operations should only be registered if a wallet
@@ -33,7 +32,7 @@ export function registerTRONPrompts(server, options = {}) {
33
32
  return;
34
33
  }
35
34
  // 2. Skip if the prompt needs a wallet but none is configured
36
- if (walletNeeded && !isWalletConfigured()) {
35
+ if (walletNeeded && services.getActiveWalletId() === null) {
37
36
  return;
38
37
  }
39
38
  server.registerPrompt(name, definition, handler);
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/core/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/core/prompts.ts"],"names":[],"mappings":"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"}
@@ -19,21 +19,13 @@ export declare function getAccountBalance(address: string, blockHash: string, bl
19
19
  }>;
20
20
  /**
21
21
  * Generate a new account.
22
- * - agent-wallet mode: generates key, stores encrypted, returns walletId + address
23
- * - legacy mode: generates offline keypair (no network interaction)
22
+ * Unified interface that returns a new keypair (ephemeral).
24
23
  */
25
24
  export declare function generateAccount(): Promise<{
26
- privateKey: string;
27
- publicKey: string;
28
- address: {
29
- base58: string;
30
- hex: string;
31
- };
32
- } | {
33
- walletId: string;
34
25
  address: {
35
26
  base58: string;
36
27
  };
28
+ privateKey: string;
37
29
  message: string;
38
30
  }>;
39
31
  /**
@@ -1,6 +1,6 @@
1
1
  import { TronWeb } from "tronweb";
2
2
  import { getTronWeb } from "./clients.js";
3
- import { getOwnerAddress, buildSignBroadcast, generateAndStoreAccount, isAgentWalletConfigured, } from "./agent-wallet.js";
3
+ import { getOwnerAddress, buildSignBroadcast, generateAccountKeypair as generateAccountService, } from "./agent-wallet.js";
4
4
  /**
5
5
  * Get full account information from the TRON network
6
6
  * @param address Account address (Base58 or Hex)
@@ -41,22 +41,16 @@ export async function getAccountBalance(address, blockHash, blockNumber, network
41
41
  }
42
42
  /**
43
43
  * Generate a new account.
44
- * - agent-wallet mode: generates key, stores encrypted, returns walletId + address
45
- * - legacy mode: generates offline keypair (no network interaction)
44
+ * Unified interface that returns a new keypair (ephemeral).
46
45
  */
47
46
  export async function generateAccount() {
48
47
  try {
49
- if (isAgentWalletConfigured()) {
50
- const result = await generateAndStoreAccount();
51
- return {
52
- walletId: result.walletId,
53
- address: { base58: result.address },
54
- message: "Account generated and stored in agent-wallet (private key encrypted at rest)",
55
- };
56
- }
57
- // Legacy mode: generate offline keypair
58
- const account = await TronWeb.createAccount();
59
- return account;
48
+ const result = await generateAccountService();
49
+ return {
50
+ address: { base58: result.address },
51
+ privateKey: result.privateKey,
52
+ message: result.message,
53
+ };
60
54
  }
61
55
  catch (error) {
62
56
  throw new Error(`Failed to generate account: ${error.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/core/services/account.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../src/core/services/account.ts"],"names":[],"mappings":"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"}
@@ -1,36 +1,29 @@
1
1
  /**
2
2
  * Agent-wallet integration layer for mcp-server-tron.
3
3
  *
4
- * Provides a unified signing interface that supports two modes:
5
- * - **agent-wallet mode**: Keys encrypted at rest via Keystore V3, signing via agent-wallet SDK
6
- * - **legacy mode**: Private key from TRON_PRIVATE_KEY / TRON_MNEMONIC env vars
7
- *
8
- * Priority: agent-wallet env vars take precedence over legacy env vars.
4
+ * Provides a unified signing interface via agent-wallet SDK.
5
+ * Supports:
6
+ * - **Encrypted Storage mode**: Keys encrypted at rest (password-protected).
7
+ * - **Static/Env mode**: Keys provided via environment variables.
9
8
  */
10
9
  import { type BaseWallet } from "@bankofai/agent-wallet";
11
- /** True when agent-wallet is configured (password is required). */
12
- export declare function isAgentWalletConfigured(): boolean;
13
- /** True when legacy TRON_PRIVATE_KEY / TRON_MNEMONIC env vars are set. */
14
- export declare function isLegacyMode(): boolean;
15
10
  /**
16
- * Get the currently active agent-wallet. Lazily initializes provider and
17
- * uses the active wallet from agent-wallet config (or first available wallet).
11
+ * Get the currently active agent-wallet.
18
12
  */
19
13
  export declare function getActiveWallet(): Promise<BaseWallet>;
20
14
  /**
21
- * Get the address of the active wallet. Works in both agent-wallet and legacy modes.
15
+ * Get the address of the active wallet.
22
16
  */
23
17
  export declare function getOwnerAddress(): Promise<string>;
24
18
  /**
25
- * Switch the active wallet at runtime (agent-wallet mode only).
26
- * Persists the choice to agent-wallet config.
19
+ * Switch the active wallet at runtime (Encrypted Storage mode only).
27
20
  */
28
21
  export declare function selectWallet(walletId: string): Promise<{
29
22
  id: string;
30
23
  address: string;
31
24
  }>;
32
25
  /**
33
- * List all available wallets. Returns wallet info with addresses.
26
+ * List all available wallets.
34
27
  */
35
28
  export declare function listAgentWallets(): Promise<Array<{
36
29
  id: string;
@@ -39,22 +32,18 @@ export declare function listAgentWallets(): Promise<Array<{
39
32
  }>>;
40
33
  /**
41
34
  * Get the currently active wallet ID.
42
- * Reads from agent-wallet config's `active_wallet` field.
43
35
  */
44
36
  export declare function getActiveWalletId(): string | null;
45
37
  /**
46
- * Sign an unsigned transaction. Handles both agent-wallet and legacy modes.
47
- * Returns the signed transaction object (with `signature` array appended).
38
+ * Sign an unsigned transaction.
48
39
  */
49
40
  export declare function signTransaction(unsignedTx: Record<string, unknown>): Promise<any>;
50
41
  /**
51
- * Sign using raw crypto (bypasses TronWeb's txCheck).
52
- * Needed for transaction types not in TronWeb's txJsonToPb mapping
53
- * (e.g., WitnessUpdateContract).
42
+ * Sign using raw crypto.
54
43
  */
55
- export declare function signTransactionRaw(unsignedTx: Record<string, unknown>, network?: string): Promise<any>;
44
+ export declare function signTransactionRaw(unsignedTx: Record<string, unknown>, _network?: string): Promise<any>;
56
45
  /**
57
- * Sign an unsigned transaction and broadcast it. Returns the transaction ID.
46
+ * Sign an unsigned transaction and broadcast it.
58
47
  */
59
48
  export declare function buildSignBroadcast(unsignedTx: Record<string, unknown>, network?: string): Promise<string>;
60
49
  /**
@@ -66,10 +55,11 @@ export declare function signMessageWithWallet(message: string): Promise<string>;
66
55
  */
67
56
  export declare function signTypedDataWithWallet(domain: object, types: object, value: object): Promise<string>;
68
57
  /**
69
- * Generate a new TRON account and store it in agent-wallet.
70
- * Returns the wallet ID and address. Private key is never exposed.
58
+ * Unified account generation.
59
+ * Generates a keypair and returns it directly. It is NOT stored in agent-wallet.
71
60
  */
72
- export declare function generateAndStoreAccount(walletName?: string): Promise<{
73
- walletId: string;
61
+ export declare function generateAccountKeypair(): Promise<{
74
62
  address: string;
63
+ privateKey: string;
64
+ message: string;
75
65
  }>;
@@ -1,19 +1,14 @@
1
1
  /**
2
2
  * Agent-wallet integration layer for mcp-server-tron.
3
3
  *
4
- * Provides a unified signing interface that supports two modes:
5
- * - **agent-wallet mode**: Keys encrypted at rest via Keystore V3, signing via agent-wallet SDK
6
- * - **legacy mode**: Private key from TRON_PRIVATE_KEY / TRON_MNEMONIC env vars
7
- *
8
- * Priority: agent-wallet env vars take precedence over legacy env vars.
4
+ * Provides a unified signing interface via agent-wallet SDK.
5
+ * Supports:
6
+ * - **Encrypted Storage mode**: Keys encrypted at rest (password-protected).
7
+ * - **Static/Env mode**: Keys provided via environment variables.
9
8
  */
10
- import { WalletFactory, SecureKVStore, TronWallet, loadConfig, saveConfig, } from "@bankofai/agent-wallet";
9
+ import { resolveWalletProvider, } from "@bankofai/agent-wallet";
11
10
  import { TronWeb } from "tronweb";
12
- import { homedir } from "os";
13
- import { join } from "path";
14
- import { getTronWeb, getWallet } from "./clients.js";
15
- // Default agent-wallet directory (same as agent-wallet CLI)
16
- const DEFAULT_WALLET_DIR = join(homedir(), ".agent-wallet");
11
+ import { getTronWeb } from "./clients.js";
17
12
  // ---------------------------------------------------------------------------
18
13
  // Module-level singleton state
19
14
  // ---------------------------------------------------------------------------
@@ -21,58 +16,58 @@ let provider = null;
21
16
  let activeWallet = null;
22
17
  let activeAddress = null;
23
18
  // ---------------------------------------------------------------------------
24
- // Mode detection
25
- // ---------------------------------------------------------------------------
26
- /** Resolve the agent-wallet secrets directory. */
27
- function getWalletDir() {
28
- return process.env.AGENT_WALLET_DIR || DEFAULT_WALLET_DIR;
29
- }
30
- /** True when agent-wallet is configured (password is required). */
31
- export function isAgentWalletConfigured() {
32
- return !!process.env.AGENT_WALLET_PASSWORD;
33
- }
34
- /** True when legacy TRON_PRIVATE_KEY / TRON_MNEMONIC env vars are set. */
35
- export function isLegacyMode() {
36
- if (isAgentWalletConfigured())
37
- return false;
38
- return !!(process.env.TRON_PRIVATE_KEY || process.env.TRON_MNEMONIC);
39
- }
40
- // ---------------------------------------------------------------------------
41
19
  // Provider initialization (lazy)
42
20
  // ---------------------------------------------------------------------------
21
+ /**
22
+ * Configure environment variables for backward compatibility.
23
+ * Maps TRON_PRIVATE_KEY -> AGENT_WALLET_PRIVATE_KEY etc.
24
+ */
25
+ function ensureEnvMapping() {
26
+ if (process.env.TRON_PRIVATE_KEY && !process.env.AGENT_WALLET_PRIVATE_KEY) {
27
+ process.env.AGENT_WALLET_PRIVATE_KEY = process.env.TRON_PRIVATE_KEY;
28
+ }
29
+ if (process.env.TRON_MNEMONIC && !process.env.AGENT_WALLET_MNEMONIC) {
30
+ process.env.AGENT_WALLET_MNEMONIC = process.env.TRON_MNEMONIC;
31
+ }
32
+ if (process.env.TRON_MNEMONIC_ACCOUNT_INDEX && !process.env.AGENT_WALLET_MNEMONIC_ACCOUNT_INDEX) {
33
+ process.env.AGENT_WALLET_MNEMONIC_ACCOUNT_INDEX = process.env.TRON_MNEMONIC_ACCOUNT_INDEX;
34
+ }
35
+ }
43
36
  function getProvider() {
44
37
  if (provider)
45
38
  return provider;
46
- const secretsDir = getWalletDir();
47
- const password = process.env.AGENT_WALLET_PASSWORD;
48
- provider = WalletFactory({ secretsDir, password });
49
- return provider;
39
+ ensureEnvMapping();
40
+ try {
41
+ // resolveWalletProvider detects mode from AGENT_WALLET_* env vars
42
+ provider = resolveWalletProvider({ network: "tron" });
43
+ return provider;
44
+ }
45
+ catch (_e) {
46
+ // Config missing or invalid - SDK throws ValueError
47
+ return null;
48
+ }
50
49
  }
51
50
  // ---------------------------------------------------------------------------
52
51
  // Active wallet management
53
52
  // ---------------------------------------------------------------------------
54
53
  /**
55
- * Get the currently active agent-wallet. Lazily initializes provider and
56
- * uses the active wallet from agent-wallet config (or first available wallet).
54
+ * Get the currently active agent-wallet.
57
55
  */
58
56
  export async function getActiveWallet() {
59
57
  if (activeWallet)
60
58
  return activeWallet;
61
59
  const p = getProvider();
62
- activeWallet = await p.getActive();
60
+ if (!p) {
61
+ throw new Error("Wallet not configured. Please set AGENT_WALLET_PASSWORD, TRON_PRIVATE_KEY, TRON_MNEMONIC, or TRON_MNEMONIC_ACCOUNT_INDEX.");
62
+ }
63
+ activeWallet = await p.getActiveWallet();
63
64
  activeAddress = await activeWallet.getAddress();
64
65
  return activeWallet;
65
66
  }
66
67
  /**
67
- * Get the address of the active wallet. Works in both agent-wallet and legacy modes.
68
+ * Get the address of the active wallet.
68
69
  */
69
70
  export async function getOwnerAddress() {
70
- if (isLegacyMode()) {
71
- // Legacy: derive address from env-var private key
72
- const privateKey = getLegacyPrivateKey();
73
- const cleanKey = privateKey.startsWith("0x") ? privateKey.slice(2) : privateKey;
74
- return TronWeb.address.fromPrivateKey(cleanKey);
75
- }
76
71
  if (activeAddress)
77
72
  return activeAddress;
78
73
  const wallet = await getActiveWallet();
@@ -80,17 +75,17 @@ export async function getOwnerAddress() {
80
75
  return activeAddress;
81
76
  }
82
77
  /**
83
- * Switch the active wallet at runtime (agent-wallet mode only).
84
- * Persists the choice to agent-wallet config.
78
+ * Switch the active wallet at runtime (Encrypted Storage mode only).
85
79
  */
86
80
  export async function selectWallet(walletId) {
87
- if (isLegacyMode()) {
88
- throw new Error("select_wallet is not available in legacy mode. " +
89
- "Configure AGENT_WALLET_PASSWORD to use agent-wallet.");
90
- }
91
81
  const p = getProvider();
92
- p.setActive(walletId);
93
- const wallet = await p.getWallet(walletId);
82
+ if (!p || typeof p.setActive !== "function") {
83
+ throw new Error("select_wallet is not available. " +
84
+ "Ensure AGENT_WALLET_PASSWORD is configured for encrypted storage mode.");
85
+ }
86
+ const lp = p;
87
+ lp.setActive(walletId);
88
+ const wallet = await lp.getWallet(walletId);
94
89
  const address = await wallet.getAddress();
95
90
  // Update cached state
96
91
  activeWallet = wallet;
@@ -98,71 +93,61 @@ export async function selectWallet(walletId) {
98
93
  return { id: walletId, address };
99
94
  }
100
95
  /**
101
- * List all available wallets. Returns wallet info with addresses.
96
+ * List all available wallets.
102
97
  */
103
98
  export async function listAgentWallets() {
104
- if (isLegacyMode()) {
105
- const address = await getOwnerAddress();
106
- return [{ id: "default", type: "env_configured", address }];
107
- }
108
99
  const p = getProvider();
109
- const wallets = await p.listWallets();
110
- const result = [];
111
- for (const w of wallets) {
112
- const wallet = await p.getWallet(w.id);
113
- const address = await wallet.getAddress();
114
- result.push({ id: w.id, type: w.type, address });
100
+ if (!p)
101
+ return [];
102
+ if (typeof p.listWallets === "function") {
103
+ const lp = p;
104
+ const wallets = await lp.listWallets();
105
+ const result = [];
106
+ for (const w of wallets) {
107
+ const wallet = await lp.getWallet(w.id);
108
+ const address = await wallet.getAddress();
109
+ result.push({ id: w.id, type: w.type, address });
110
+ }
111
+ return result;
115
112
  }
116
- return result;
113
+ // Static/Env mode
114
+ const wallet = await p.getActiveWallet();
115
+ const address = await wallet.getAddress();
116
+ return [{ id: "default", type: "static", address }];
117
117
  }
118
118
  /**
119
119
  * Get the currently active wallet ID.
120
- * Reads from agent-wallet config's `active_wallet` field.
121
120
  */
122
121
  export function getActiveWalletId() {
123
- if (isLegacyMode())
124
- return "default";
125
- if (!isAgentWalletConfigured())
126
- return null;
127
122
  const p = getProvider();
128
- return p.getActiveId();
123
+ if (!p)
124
+ return null;
125
+ if (typeof p.getActiveId === "function") {
126
+ return p.getActiveId();
127
+ }
128
+ return "default";
129
129
  }
130
130
  // ---------------------------------------------------------------------------
131
131
  // Signing
132
132
  // ---------------------------------------------------------------------------
133
133
  /**
134
- * Sign an unsigned transaction. Handles both agent-wallet and legacy modes.
135
- * Returns the signed transaction object (with `signature` array appended).
134
+ * Sign an unsigned transaction.
136
135
  */
137
136
  export async function signTransaction(unsignedTx) {
138
- if (isLegacyMode()) {
139
- const privateKey = getLegacyPrivateKey();
140
- const network = "mainnet"; // legacy sign uses any network for signing
141
- const tronWeb = getWallet(privateKey, network);
142
- return await tronWeb.trx.sign(unsignedTx, privateKey);
143
- }
144
137
  const wallet = await getActiveWallet();
145
138
  const signedJson = await wallet.signTransaction(unsignedTx);
146
139
  return JSON.parse(signedJson);
147
140
  }
148
141
  /**
149
- * Sign using raw crypto (bypasses TronWeb's txCheck).
150
- * Needed for transaction types not in TronWeb's txJsonToPb mapping
151
- * (e.g., WitnessUpdateContract).
142
+ * Sign using raw crypto.
152
143
  */
153
- export async function signTransactionRaw(unsignedTx, network = "mainnet") {
154
- if (isLegacyMode()) {
155
- const privateKey = getLegacyPrivateKey();
156
- const tronWeb = getTronWeb(network);
157
- return tronWeb.utils.crypto.signTransaction(privateKey, unsignedTx);
158
- }
159
- // agent-wallet signs raw_data_hex directly — no txCheck needed
144
+ export async function signTransactionRaw(unsignedTx, _network = "mainnet") {
160
145
  const wallet = await getActiveWallet();
161
146
  const signedJson = await wallet.signTransaction(unsignedTx);
162
147
  return JSON.parse(signedJson);
163
148
  }
164
149
  /**
165
- * Sign an unsigned transaction and broadcast it. Returns the transaction ID.
150
+ * Sign an unsigned transaction and broadcast it.
166
151
  */
167
152
  export async function buildSignBroadcast(unsignedTx, network = "mainnet") {
168
153
  const signedTx = await signTransaction(unsignedTx);
@@ -177,10 +162,6 @@ export async function buildSignBroadcast(unsignedTx, network = "mainnet") {
177
162
  * Sign a message using the active wallet.
178
163
  */
179
164
  export async function signMessageWithWallet(message) {
180
- if (isLegacyMode()) {
181
- const tronWeb = getWallet(getLegacyPrivateKey());
182
- return await tronWeb.trx.sign(message);
183
- }
184
165
  const wallet = await getActiveWallet();
185
166
  const msgBytes = Buffer.from(message, "utf-8");
186
167
  return await wallet.signMessage(msgBytes);
@@ -189,13 +170,6 @@ export async function signMessageWithWallet(message) {
189
170
  * Sign typed data (EIP-712) using the active wallet.
190
171
  */
191
172
  export async function signTypedDataWithWallet(domain, types, value) {
192
- if (isLegacyMode()) {
193
- const tronWeb = getWallet(getLegacyPrivateKey());
194
- if (typeof tronWeb.trx._signTypedData === "function") {
195
- return await tronWeb.trx._signTypedData(domain, types, value);
196
- }
197
- throw new Error("signTypedData not supported by this TronWeb version");
198
- }
199
173
  const wallet = await getActiveWallet();
200
174
  const eip712Wallet = wallet;
201
175
  if (typeof eip712Wallet.signTypedData !== "function") {
@@ -204,69 +178,19 @@ export async function signTypedDataWithWallet(domain, types, value) {
204
178
  return await eip712Wallet.signTypedData({ domain, types, value });
205
179
  }
206
180
  // ---------------------------------------------------------------------------
207
- // Account generation (agent-wallet mode)
181
+ // Account generation
208
182
  // ---------------------------------------------------------------------------
209
183
  /**
210
- * Generate a new TRON account and store it in agent-wallet.
211
- * Returns the wallet ID and address. Private key is never exposed.
184
+ * Unified account generation.
185
+ * Generates a keypair and returns it directly. It is NOT stored in agent-wallet.
212
186
  */
213
- export async function generateAndStoreAccount(walletName) {
214
- if (isLegacyMode()) {
215
- throw new Error("generateAndStoreAccount requires agent-wallet mode. " +
216
- "Set AGENT_WALLET_PASSWORD to use agent-wallet.");
217
- }
218
- const secretsDir = getWalletDir();
219
- const password = process.env.AGENT_WALLET_PASSWORD;
220
- const walletId = walletName || `tron-${Date.now()}`;
221
- const kvStore = new SecureKVStore(secretsDir, password);
222
- const privateKeyBytes = kvStore.generateKey(walletId);
223
- // Derive TRON address
224
- const tempWallet = new TronWallet(privateKeyBytes);
225
- const address = await tempWallet.getAddress();
226
- // Update config
227
- const config = loadConfig(secretsDir);
228
- config.wallets[walletId] = {
229
- type: "tron_local",
230
- identity_file: walletId,
187
+ export async function generateAccountKeypair() {
188
+ // Generate keypair via TronWeb
189
+ const account = await TronWeb.createAccount();
190
+ return {
191
+ address: account.address.base58,
192
+ privateKey: account.privateKey,
193
+ message: "Account generated successfully. Note: This account is NOT stored. Please save your private key manually.",
231
194
  };
232
- saveConfig(secretsDir, config);
233
- // Refresh provider to pick up new wallet (do not switch active wallet)
234
- provider = null;
235
- activeWallet = null;
236
- activeAddress = null;
237
- return { walletId, address };
238
- }
239
- // ---------------------------------------------------------------------------
240
- // Legacy helpers (internal)
241
- // ---------------------------------------------------------------------------
242
- import * as bip39 from "@scure/bip39";
243
- import { wordlist } from "@scure/bip39/wordlists/english.js";
244
- import { HDKey } from "@scure/bip32";
245
- function getLegacyPrivateKey() {
246
- const privateKey = process.env.TRON_PRIVATE_KEY;
247
- const mnemonic = process.env.TRON_MNEMONIC;
248
- const accountIndexStr = process.env.TRON_ACCOUNT_INDEX || "0";
249
- const accountIndex = parseInt(accountIndexStr, 10);
250
- if (isNaN(accountIndex) || accountIndex < 0 || !Number.isInteger(accountIndex)) {
251
- throw new Error(`Invalid TRON_ACCOUNT_INDEX: "${accountIndexStr}". Must be a non-negative integer.`);
252
- }
253
- if (privateKey) {
254
- const cleanKey = privateKey.startsWith("0x") ? privateKey.slice(2) : privateKey;
255
- return cleanKey;
256
- }
257
- else if (mnemonic) {
258
- if (!bip39.validateMnemonic(mnemonic, wordlist)) {
259
- throw new Error("Invalid mnemonic provided in TRON_MNEMONIC");
260
- }
261
- const seed = bip39.mnemonicToSeedSync(mnemonic);
262
- const hdKey = HDKey.fromMasterSeed(seed);
263
- const child = hdKey.derive(`m/44'/195'/0'/0/${accountIndex}`);
264
- if (!child.privateKey) {
265
- throw new Error("Failed to derive private key from mnemonic");
266
- }
267
- return Buffer.from(child.privateKey).toString("hex");
268
- }
269
- throw new Error("Neither TRON_PRIVATE_KEY nor TRON_MNEMONIC environment variable is set. " +
270
- "Configure one of them, or use agent-wallet mode with AGENT_WALLET_PASSWORD.");
271
195
  }
272
196
  //# sourceMappingURL=agent-wallet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-wallet.js","sourceRoot":"","sources":["../../../src/core/services/agent-wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-wallet.js","sourceRoot":"","sources":["../../../src/core/services/agent-wallet.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,3 @@ import { TronWeb } from "tronweb";
3
3
  * Get a TronWeb instance for a specific network
4
4
  */
5
5
  export declare function getTronWeb(network?: string): TronWeb;
6
- /**
7
- * @deprecated Use signTransaction / buildSignBroadcast from agent-wallet.ts instead.
8
- * Only used internally by agent-wallet.ts for legacy mode signing.
9
- */
10
- export declare function getWallet(privateKey: string, network?: string): TronWeb;
@@ -26,22 +26,4 @@ export function getTronWeb(network = "mainnet") {
26
26
  clientCache.set(cacheKey, client);
27
27
  return client;
28
28
  }
29
- /**
30
- * @deprecated Use signTransaction / buildSignBroadcast from agent-wallet.ts instead.
31
- * Only used internally by agent-wallet.ts for legacy mode signing.
32
- */
33
- export function getWallet(privateKey, network = "mainnet") {
34
- const config = getNetworkConfig(network);
35
- const apiKey = process.env.TRONGRID_API_KEY;
36
- // TronWeb expects private key without 0x prefix usually, but handles it if present?
37
- // Let's strip 0x to be safe as TronWeb often prefers clean hex
38
- const cleanKey = privateKey.startsWith("0x") ? privateKey.slice(2) : privateKey;
39
- return new TronWeb({
40
- fullHost: config.fullNode,
41
- solidityNode: config.solidityNode,
42
- eventServer: config.eventServer,
43
- privateKey: cleanKey,
44
- headers: apiKey ? { "TRON-PRO-API-KEY": apiKey } : undefined,
45
- });
46
- }
47
29
  //# sourceMappingURL=clients.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/core/services/clients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,8DAA8D;AAC9D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAmB,CAAC;AAE/C;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,OAAO,GAAG,SAAS;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjC,oCAAoC;IACpC,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;IACpC,CAAC;IAED,sBAAsB;IACtB,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAE5C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC,CAAC;IAEH,kEAAkE;IAClE,MAAM,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC;IAExD,mBAAmB;IACnB,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAElC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,UAAkB,EAAE,OAAO,GAAG,SAAS;IAC/D,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAE5C,oFAAoF;IACpF,+DAA+D;IAC/D,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAEhF,OAAO,IAAI,OAAO,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/core/services/clients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,8DAA8D;AAC9D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAmB,CAAC;AAE/C;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,OAAO,GAAG,SAAS;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjC,oCAAoC;IACpC,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;IACpC,CAAC;IAED,sBAAsB;IACtB,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAE5C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC,CAAC;IAEH,kEAAkE;IAClE,MAAM,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC;IAExD,mBAAmB;IACnB,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAElC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,10 +1,6 @@
1
1
  import { getOwnerAddress } from "./agent-wallet.js";
2
2
  /**
3
- * Check if any wallet is configured (agent-wallet or legacy env vars).
4
- */
5
- export declare const isWalletConfigured: () => boolean;
6
- /**
7
- * Get the address of the active wallet (works in both modes).
3
+ * Get the address of the active wallet (works in all modes).
8
4
  */
9
5
  export declare const getWalletAddress: typeof getOwnerAddress;
10
6
  /**
@@ -1,12 +1,6 @@
1
- import { isAgentWalletConfigured, getOwnerAddress, signMessageWithWallet, signTypedDataWithWallet, } from "./agent-wallet.js";
1
+ import { getOwnerAddress, signMessageWithWallet, signTypedDataWithWallet } from "./agent-wallet.js";
2
2
  /**
3
- * Check if any wallet is configured (agent-wallet or legacy env vars).
4
- */
5
- export const isWalletConfigured = () => {
6
- return isAgentWalletConfigured() || !!(process.env.TRON_PRIVATE_KEY || process.env.TRON_MNEMONIC);
7
- };
8
- /**
9
- * Get the address of the active wallet (works in both modes).
3
+ * Get the address of the active wallet (works in all modes).
10
4
  */
11
5
  export const getWalletAddress = getOwnerAddress;
12
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/services/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAY,EAAE;IAC9C,OAAO,uBAAuB,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AACpG,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,OAAe,EAAmB,EAAE;IACpE,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,MAAc,EACd,KAAa,EACb,KAAa,EACI,EAAE;IACnB,OAAO,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC,CAAC"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/services/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAEpG;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,OAAe,EAAmB,EAAE;IACpE,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,MAAc,EACd,KAAa,EACb,KAAa,EACI,EAAE;IACnB,OAAO,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC,CAAC"}
@@ -35,7 +35,6 @@ import { registerAccountResourceTools } from "./account-resource.js";
35
35
  * @param options Registration options (e.g., readOnly mode)
36
36
  */
37
37
  export function registerTRONTools(server, options = {}) {
38
- const { isWalletConfigured } = services;
39
38
  /**
40
39
  * Helper to register a tool with automatic wallet requirement detection.
41
40
  * If a tool is not read-only or explicitly requires a wallet, it will only be
@@ -53,7 +52,7 @@ export function registerTRONTools(server, options = {}) {
53
52
  return;
54
53
  }
55
54
  // 2. Skip if the tool needs a wallet but none is configured
56
- if (walletNeeded && !isWalletConfigured()) {
55
+ if (walletNeeded && services.getActiveWalletId() === null) {
57
56
  return;
58
57
  }
59
58
  // Strip custom `requiresWallet` before passing to SDK (not a standard MCP annotation)
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAErE;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAiB,EAAE,UAAkC,EAAE;IACvF;;;;OAIG;IACH,MAAM,YAAY,GAAmB,CACnC,IAAY,EACZ,UAWC,EACD,OAAwD,EACxD,EAAE;QACF,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;QACjD,qFAAqF;QACrF,qFAAqF;QACrF,8CAA8C;QAC9C,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,KAAK,IAAI,CAAC;QACrD,MAAM,YAAY,GAAG,WAAW,CAAC,cAAc,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC;QAExE,iEAAiE;QACjE,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,4DAA4D;QAC5D,IAAI,YAAY,IAAI,QAAQ,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,sFAAsF;QACtF,IAAI,UAAU,CAAC,WAAW,EAAE,cAAc,KAAK,SAAS,EAAE,CAAC;YACzD,MAAM,EAAE,cAAc,EAAE,CAAC,EAAE,GAAG,mBAAmB,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC;YAC7E,UAAU,GAAG,EAAE,GAAG,UAAU,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC;QACnE,CAAC;QAED,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAiB,EAAE,OAAc,CAAC,CAAC;IAC/D,CAAC,CAAC;IAEF,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAClC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,wBAAwB,CAAC,YAAY,CAAC,CAAC;IACvC,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACpC,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACpC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,4BAA4B,CAAC,YAAY,CAAC,CAAC;IAC3C,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjC,sBAAsB,CAAC,YAAY,CAAC,CAAC;IACrC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAChC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACjC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACnC,uBAAuB,CAAC,YAAY,CAAC,CAAC;IACtC,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACpC,wBAAwB,CAAC,YAAY,CAAC,CAAC;IACvC,yBAAyB,CAAC,YAAY,CAAC,CAAC;AAC1C,CAAC"}
@@ -66,7 +66,7 @@ export function registerWalletTools(registerTool) {
66
66
  activeWalletId: activeId,
67
67
  wallets,
68
68
  message: wallets.length === 1 && wallets[0].id === "default"
69
- ? "Running in legacy mode with a single wallet from environment variables."
69
+ ? "Using static wallet configured via environment variables."
70
70
  : `Found ${wallets.length} wallet(s). Use select_wallet to switch the active wallet.`,
71
71
  }, null, 2),
72
72
  },
@@ -86,7 +86,7 @@ export function registerWalletTools(registerTool) {
86
86
  }
87
87
  });
88
88
  registerTool("select_wallet", {
89
- description: "Switch the active wallet at runtime. Use list_wallets to see available wallet IDs. Only available in agent-wallet mode.",
89
+ description: "Switch the active wallet at runtime. Use list_wallets to see available wallet IDs. Only available in Encrypted Storage mode.",
90
90
  inputSchema: {
91
91
  walletId: z.string().describe("The wallet ID to switch to"),
92
92
  },
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/tools/wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/tools/wallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import express from "express";
2
+ export type HttpAppContext = {
3
+ app: express.Express;
4
+ shutdown: () => Promise<void>;
5
+ getActiveSessionCount: () => number;
6
+ };
7
+ export declare function createHttpApp(options?: {
8
+ readOnly?: boolean;
9
+ }): HttpAppContext;
@@ -0,0 +1,69 @@
1
+ import express from "express";
2
+ import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
3
+ import startServer, { MCP_PROTOCOL_VERSION, version } from "./server.js";
4
+ export function createHttpApp(options = {}) {
5
+ const app = express();
6
+ app.use(express.json({ limit: "10mb" })); // Prevent DoS attacks with huge payloads
7
+ app.post("/mcp", async (req, res) => {
8
+ console.log(`Received POST /mcp request from ${req.ip}`);
9
+ let server;
10
+ const transport = new StreamableHTTPServerTransport({
11
+ sessionIdGenerator: undefined,
12
+ });
13
+ try {
14
+ server = await startServer({ readOnly: options.readOnly });
15
+ await server.connect(transport);
16
+ await transport.handleRequest(req, res, req.body);
17
+ }
18
+ catch (error) {
19
+ console.error(`Error handling request: ${error}`);
20
+ if (!res.headersSent) {
21
+ res.status(500).json({ error: "Internal server error" });
22
+ }
23
+ }
24
+ finally {
25
+ if (server) {
26
+ await server.close().catch((closeError) => {
27
+ console.error(`Error closing stateless server: ${closeError}`);
28
+ });
29
+ }
30
+ }
31
+ });
32
+ app.get("/mcp", async (_req, res) => {
33
+ res.setHeader("Allow", "POST");
34
+ res.status(405).json({ error: "GET not supported for stateless Streamable HTTP" });
35
+ });
36
+ app.delete("/mcp", async (_req, res) => {
37
+ res.setHeader("Allow", "POST");
38
+ res.status(405).json({ error: "DELETE not supported for stateless Streamable HTTP" });
39
+ });
40
+ app.get("/health", (_req, res) => {
41
+ res.status(200).json({
42
+ status: "ok",
43
+ server: "ready",
44
+ mode: "stateless",
45
+ activeSessions: 0,
46
+ });
47
+ });
48
+ app.get("/", (_req, res) => {
49
+ res.status(200).json({
50
+ name: "mcp-server-tron",
51
+ version,
52
+ protocol: `MCP ${MCP_PROTOCOL_VERSION}`,
53
+ transport: "Streamable HTTP",
54
+ mode: "stateless",
55
+ endpoints: {
56
+ mcp: "/mcp",
57
+ health: "/health",
58
+ },
59
+ status: "ready",
60
+ activeSessions: 0,
61
+ });
62
+ });
63
+ return {
64
+ app,
65
+ shutdown: async () => { },
66
+ getActiveSessionCount: () => 0,
67
+ };
68
+ }
69
+ //# sourceMappingURL=http-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-app.js","sourceRoot":"","sources":["../../src/server/http-app.ts"],"names":[],"mappings":"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"}
@@ -1,191 +1,29 @@
1
- import { randomUUID } from "node:crypto";
2
- import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
3
- import startServer, { MCP_PROTOCOL_VERSION, version } from "./server.js";
4
- import express from "express";
1
+ import { createHttpApp } from "./http-app.js";
2
+ import { MCP_PROTOCOL_VERSION } from "./server.js";
5
3
  // Environment variables
6
4
  const PORT = parseInt(process.env.MCP_PORT || "3001", 10);
7
5
  const HOST = process.env.MCP_HOST || "0.0.0.0";
8
- console.error(`Configured to listen on ${HOST}:${PORT}`);
9
- // Setup Express
10
- const app = express();
11
- app.use(express.json({ limit: "10mb" })); // Prevent DoS attacks with huge payloads
12
- // Track active transports by session ID with cleanup
13
- const transports = new Map();
14
- const sessionTimestamps = new Map();
15
- const SESSION_TIMEOUT_MS = 30 * 60 * 1000; // 30 minutes
16
- // Cleanup stale sessions periodically
17
- setInterval(() => {
18
- const now = Date.now();
19
- for (const [sessionId, timestamp] of sessionTimestamps.entries()) {
20
- if (now - timestamp > SESSION_TIMEOUT_MS) {
21
- console.error(`Cleaning up stale session: ${sessionId}`);
22
- const transport = transports.get(sessionId);
23
- if (transport) {
24
- transport
25
- .close()
26
- .catch((err) => console.error(`Error closing stale session ${sessionId}:`, err));
27
- }
28
- transports.delete(sessionId);
29
- sessionTimestamps.delete(sessionId);
30
- }
31
- }
32
- }, 5 * 60 * 1000); // Check every 5 minutes
33
- // Initialize the MCP server
34
- let server = null;
6
+ console.log(`Configured to listen on ${HOST}:${PORT}`);
35
7
  const isReadOnly = process.argv.includes("--readonly") || process.argv.includes("-r");
36
- startServer({ readOnly: isReadOnly })
37
- .then((s) => {
38
- server = s;
39
- console.error(`MCP Server initialized successfully${isReadOnly ? " in readonly mode" : ""}`);
40
- })
41
- .catch((error) => {
42
- console.error("Failed to initialize server:", error);
43
- process.exit(1);
44
- });
45
- // Handle all MCP requests through POST /mcp
46
- app.post("/mcp", async (req, res) => {
47
- console.error(`Received POST /mcp request from ${req.ip}`);
48
- if (!server) {
49
- console.error("Server not initialized yet");
50
- res.status(503).json({ error: "Server not initialized" });
51
- return;
52
- }
53
- // Check for existing session
54
- const sessionId = req.headers["mcp-session-id"];
55
- let transport;
56
- if (sessionId && transports.has(sessionId)) {
57
- // Reuse existing transport for this session
58
- transport = transports.get(sessionId);
59
- sessionTimestamps.set(sessionId, Date.now()); // Update last activity
60
- console.error(`Reusing transport for session: ${sessionId}`);
61
- }
62
- else if (!sessionId) {
63
- // New session - create transport with session ID generator
64
- transport = new StreamableHTTPServerTransport({
65
- sessionIdGenerator: () => randomUUID(),
66
- onsessioninitialized: (newSessionId) => {
67
- console.error(`Session initialized: ${newSessionId}`);
68
- transports.set(newSessionId, transport);
69
- sessionTimestamps.set(newSessionId, Date.now());
70
- },
71
- onsessionclosed: (closedSessionId) => {
72
- console.error(`Session closed: ${closedSessionId}`);
73
- transports.delete(closedSessionId);
74
- sessionTimestamps.delete(closedSessionId);
75
- },
76
- });
77
- // Connect the transport to the server
78
- await server.connect(transport);
79
- console.error("New transport connected to server");
80
- }
81
- else {
82
- // Invalid session ID provided
83
- console.error(`Invalid session ID: ${sessionId}`);
84
- res.status(404).json({ error: "Session not found" });
85
- return;
86
- }
87
- // Handle the request
88
- try {
89
- await transport.handleRequest(req, res, req.body);
90
- }
91
- catch (error) {
92
- console.error(`Error handling request: ${error}`);
93
- if (!res.headersSent) {
94
- res.status(500).json({ error: "Internal server error" });
95
- }
96
- }
97
- });
98
- // Handle GET requests for SSE streams (server-to-client notifications)
99
- app.get("/mcp", async (req, res) => {
100
- console.error(`Received GET /mcp request from ${req.ip}`);
101
- if (!server) {
102
- res.status(503).json({ error: "Server not initialized" });
103
- return;
104
- }
105
- const sessionId = req.headers["mcp-session-id"];
106
- if (!sessionId || !transports.has(sessionId)) {
107
- res.status(400).json({ error: "Invalid or missing session ID" });
108
- return;
109
- }
110
- const transport = transports.get(sessionId);
111
- try {
112
- await transport.handleRequest(req, res);
113
- }
114
- catch (error) {
115
- console.error(`Error handling SSE request: ${error}`);
116
- if (!res.headersSent) {
117
- res.status(500).json({ error: "Internal server error" });
118
- }
119
- }
120
- });
121
- // Handle DELETE requests to close sessions
122
- app.delete("/mcp", async (req, res) => {
123
- const sessionId = req.headers["mcp-session-id"];
124
- if (!sessionId || !transports.has(sessionId)) {
125
- res.status(404).json({ error: "Session not found" });
126
- return;
127
- }
128
- const transport = transports.get(sessionId);
129
- try {
130
- await transport.handleRequest(req, res);
131
- }
132
- catch (error) {
133
- console.error(`Error closing session: ${error}`);
134
- if (!res.headersSent) {
135
- res.status(500).json({ error: "Internal server error" });
136
- }
137
- }
138
- });
139
- // Health check endpoint
140
- app.get("/health", (_req, res) => {
141
- res.status(200).json({
142
- status: "ok",
143
- server: server ? "initialized" : "initializing",
144
- activeSessions: transports.size,
145
- });
146
- });
147
- // Root endpoint for basic info
148
- app.get("/", (_req, res) => {
149
- res.status(200).json({
150
- name: "mcp-server-tron",
151
- version,
152
- protocol: `MCP ${MCP_PROTOCOL_VERSION}`,
153
- transport: "Streamable HTTP",
154
- endpoints: {
155
- mcp: "/mcp",
156
- health: "/health",
157
- },
158
- status: server ? "ready" : "initializing",
159
- activeSessions: transports.size,
160
- });
161
- });
8
+ const { app, shutdown } = createHttpApp({ readOnly: isReadOnly });
162
9
  // Handle process termination gracefully
163
10
  process.on("SIGINT", async () => {
164
- console.error("Shutting down server...");
165
- // Close all active transports
166
- for (const [sessionId, transport] of transports) {
167
- console.error(`Closing transport for session: ${sessionId}`);
168
- await transport.close();
169
- }
170
- transports.clear();
11
+ console.log("Shutting down server...");
12
+ await shutdown();
171
13
  process.exit(0);
172
14
  });
173
15
  process.on("SIGTERM", async () => {
174
- console.error("Received SIGTERM, shutting down...");
175
- for (const [sessionId, transport] of transports) {
176
- console.error(`Closing transport for session: ${sessionId}`);
177
- await transport.close();
178
- }
179
- transports.clear();
16
+ console.log("Received SIGTERM, shutting down...");
17
+ await shutdown();
180
18
  process.exit(0);
181
19
  });
182
20
  // Start the HTTP server
183
21
  const httpServer = app
184
22
  .listen(PORT, HOST, () => {
185
- console.error(`mcp-server-tron running at http://${HOST}:${PORT}`);
186
- console.error(`MCP endpoint: http://${HOST}:${PORT}/mcp`);
187
- console.error(`Health check: http://${HOST}:${PORT}/health`);
188
- console.error(`Protocol: MCP ${MCP_PROTOCOL_VERSION} (Streamable HTTP)`);
23
+ console.log(`mcp-server-tron running at http://${HOST}:${PORT}`);
24
+ console.log(`MCP endpoint: http://${HOST}:${PORT}/mcp`);
25
+ console.log(`Health check: http://${HOST}:${PORT}/health`);
26
+ console.log(`Protocol: MCP ${MCP_PROTOCOL_VERSION} (Streamable HTTP)`);
189
27
  })
190
28
  .on("error", (err) => {
191
29
  console.error(`Server error: ${err}`);
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/server/http-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,WAAW,EAAE,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,OAA8B,MAAM,SAAS,CAAC;AAGrD,wBAAwB;AACxB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;AAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,SAAS,CAAC;AAE/C,OAAO,CAAC,KAAK,CAAC,2BAA2B,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;AAEzD,gBAAgB;AAChB,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;AACtB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,yCAAyC;AAEnF,qDAAqD;AACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyC,CAAC;AACpE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;AACpD,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAExD,sCAAsC;AACtC,WAAW,CACT,GAAG,EAAE;IACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;QACjE,IAAI,GAAG,GAAG,SAAS,GAAG,kBAAkB,EAAE,CAAC;YACzC,OAAO,CAAC,KAAK,CAAC,8BAA8B,SAAS,EAAE,CAAC,CAAC;YACzD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS;qBACN,KAAK,EAAE;qBACP,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,+BAA+B,SAAS,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YACrF,CAAC;YACD,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7B,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;AACH,CAAC,EACD,CAAC,GAAG,EAAE,GAAG,IAAI,CACd,CAAC,CAAC,wBAAwB;AAE3B,4BAA4B;AAC5B,IAAI,MAAM,GAAqB,IAAI,CAAC;AACpC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAEtF,WAAW,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;KAClC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;IACV,MAAM,GAAG,CAAC,CAAC;IACX,OAAO,CAAC,KAAK,CAAC,sCAAsC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/F,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,4CAA4C;AAC5C,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IACrD,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,6BAA6B;IAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;IACtE,IAAI,SAAwC,CAAC;IAE7C,IAAI,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3C,4CAA4C;QAC5C,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;QACvC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,uBAAuB;QACrE,OAAO,CAAC,KAAK,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;SAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtB,2DAA2D;QAC3D,SAAS,GAAG,IAAI,6BAA6B,CAAC;YAC5C,kBAAkB,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE;YACtC,oBAAoB,EAAE,CAAC,YAAY,EAAE,EAAE;gBACrC,OAAO,CAAC,KAAK,CAAC,wBAAwB,YAAY,EAAE,CAAC,CAAC;gBACtD,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBACxC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAClD,CAAC;YACD,eAAe,EAAE,CAAC,eAAe,EAAE,EAAE;gBACnC,OAAO,CAAC,KAAK,CAAC,mBAAmB,eAAe,EAAE,CAAC,CAAC;gBACpD,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;gBACnC,iBAAiB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC5C,CAAC;SACF,CAAC,CAAC;QAEH,sCAAsC;QACtC,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,8BAA8B;QAC9B,OAAO,CAAC,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;QAClD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACrB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,uEAAuE;AACvE,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IACpD,OAAO,CAAC,KAAK,CAAC,kCAAkC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAE1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;IAEtE,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACrB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,2CAA2C;AAC3C,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;IACvD,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;IAEtE,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACrB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,wBAAwB;AACxB,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;IAClD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc;QAC/C,cAAc,EAAE,UAAU,CAAC,IAAI;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,+BAA+B;AAC/B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;IAC5C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,iBAAiB;QACvB,OAAO;QACP,QAAQ,EAAE,OAAO,oBAAoB,EAAE;QACvC,SAAS,EAAE,iBAAiB;QAC5B,SAAS,EAAE;YACT,GAAG,EAAE,MAAM;YACX,MAAM,EAAE,SAAS;SAClB;QACD,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc;QACzC,cAAc,EAAE,UAAU,CAAC,IAAI;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,wCAAwC;AACxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;IAC9B,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAEzC,8BAA8B;IAC9B,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC;QAC7D,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IACD,UAAU,CAAC,KAAK,EAAE,CAAC;IAEnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;IAC/B,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAEpD,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC;QAC7D,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IACD,UAAU,CAAC,KAAK,EAAE,CAAC;IAEnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,wBAAwB;AACxB,MAAM,UAAU,GAAG,GAAG;KACnB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;IACvB,OAAO,CAAC,KAAK,CAAC,qCAAqC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IACnE,OAAO,CAAC,KAAK,CAAC,wBAAwB,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;IAC1D,OAAO,CAAC,KAAK,CAAC,wBAAwB,IAAI,IAAI,IAAI,SAAS,CAAC,CAAC;IAC7D,OAAO,CAAC,KAAK,CAAC,iBAAiB,oBAAoB,oBAAoB,CAAC,CAAC;AAC3E,CAAC,CAAC;KACD,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;IAC1B,OAAO,CAAC,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,oDAAoD;AACpD,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,YAAY;AACzC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,CAAC,aAAa"}
1
+ {"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/server/http-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,wBAAwB;AACxB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;AAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,SAAS,CAAC;AAE/C,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;AAEvD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACtF,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;AAElE,wCAAwC;AACxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;IAC9B,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,MAAM,QAAQ,EAAE,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;IAC/B,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAClD,MAAM,QAAQ,EAAE,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,wBAAwB;AACxB,MAAM,UAAU,GAAG,GAAG;KACnB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,IAAI,IAAI,SAAS,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,iBAAiB,oBAAoB,oBAAoB,CAAC,CAAC;AACzE,CAAC,CAAC;KACD,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;IAC1B,OAAO,CAAC,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,oDAAoD;AACpD,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,YAAY;AACzC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,CAAC,aAAa"}
@@ -46,7 +46,7 @@ async function startServer(options = {}) {
46
46
  }
47
47
  catch (error) {
48
48
  console.error("Failed to initialize server:", error);
49
- process.exit(1);
49
+ throw error;
50
50
  }
51
51
  }
52
52
  // Export the server creation function
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEzD,wFAAwF;AACxF,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,kCAAkC;AAClC,KAAK,UAAU,WAAW,CAAC,UAAkC,EAAE;IAC7D,IAAI,CAAC;QACH,qDAAqD;QACrD,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;YACE,IAAI,EAAE,iBAAiB;YACvB,OAAO;SACR,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE;oBACL,WAAW,EAAE,IAAI;iBAClB;gBACD,SAAS,EAAE;oBACT,SAAS,EAAE,KAAK;oBAChB,WAAW,EAAE,IAAI;iBAClB;gBACD,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;gBACD,OAAO,EAAE,EAAE;aACZ;SACF,CACF,CAAC;QAEF,6CAA6C;QAC7C,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC9B,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAErC,yBAAyB;QACzB,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,cAAc,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,iBAAiB,oBAAoB,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,uBAAuB,oBAAoB,EAAE,CAAC,MAAM,WAAW,CAAC,CAAC;QAC/E,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAEpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,sCAAsC;AACtC,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEzD,wFAAwF;AACxF,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,kCAAkC;AAClC,KAAK,UAAU,WAAW,CAAC,UAAkC,EAAE;IAC7D,IAAI,CAAC;QACH,qDAAqD;QACrD,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;YACE,IAAI,EAAE,iBAAiB;YACvB,OAAO;SACR,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE;oBACL,WAAW,EAAE,IAAI;iBAClB;gBACD,SAAS,EAAE;oBACT,SAAS,EAAE,KAAK;oBAChB,WAAW,EAAE,IAAI;iBAClB;gBACD,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;gBACD,OAAO,EAAE,EAAE;aACZ;SACF,CACF,CAAC;QAEF,6CAA6C;QAC7C,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC9B,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAErC,yBAAyB;QACzB,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,cAAc,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,iBAAiB,oBAAoB,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,uBAAuB,oBAAoB,EAAE,CAAC,MAAM,WAAW,CAAC,CAAC;QAC/E,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAEpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,sCAAsC;AACtC,eAAe,WAAW,CAAC"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "mcpName": "io.github.bankofai/mcp-server-tron",
4
4
  "module": "src/index.ts",
5
5
  "type": "module",
6
- "version": "1.1.4",
6
+ "version": "1.1.6",
7
7
  "description": "MCP server for TRON blockchain. Supports TRX/TRC20 transfers, smart contracts, and AI prompts.",
8
8
  "bin": {
9
9
  "mcp-server-tron": "./bin/cli.js"
@@ -53,7 +53,7 @@
53
53
  "typescript": "^5.8.2"
54
54
  },
55
55
  "dependencies": {
56
- "@bankofai/agent-wallet": "^2.1.0",
56
+ "@bankofai/agent-wallet": "^2.2.0",
57
57
  "@modelcontextprotocol/sdk": "^1.22.0",
58
58
  "@scure/bip32": "^2.0.1",
59
59
  "@scure/bip39": "^2.0.1",