@bankofai/mcp-server-tron 1.1.5 → 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
@@ -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**: Static 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
 
@@ -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":"AAAA,OAAO,OAA8B,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,WAAW,EAAE,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAQzE,MAAM,UAAU,aAAa,CAAC,UAAkC,EAAE;IAChE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,yCAAyC;IAEnF,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;QACrD,OAAO,CAAC,GAAG,CAAC,mCAAmC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QACzD,IAAI,MAA2D,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC;YAClD,kBAAkB,EAAE,SAAS;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3D,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE;oBACxC,OAAO,CAAC,KAAK,CAAC,mCAAmC,UAAU,EAAE,CAAC,CAAC;gBACjE,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;QACrD,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;QACxD,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oDAAoD,EAAE,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAClD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,WAAW;YACjB,cAAc,EAAE,CAAC;SAClB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC5C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,iBAAiB;YACvB,OAAO;YACP,QAAQ,EAAE,OAAO,oBAAoB,EAAE;YACvC,SAAS,EAAE,iBAAiB;YAC5B,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE;gBACT,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,SAAS;aAClB;YACD,MAAM,EAAE,OAAO;YACf,cAAc,EAAE,CAAC;SAClB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,GAAG;QACH,QAAQ,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QACxB,qBAAqB,EAAE,GAAG,EAAE,CAAC,CAAC;KAC/B,CAAC;AACJ,CAAC"}
@@ -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":"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"}
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.5",
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"
@@ -89,4 +89,4 @@
89
89
  "publishConfig": {
90
90
  "access": "public"
91
91
  }
92
- }
92
+ }