#!/usr/bin/env node
import dotenv from 'dotenv';
import { fileURLToPath } from 'url';
import { dirname, join } from 'path';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
dotenv.config();
dotenv.config({ path: join(__dirname, '../.env') });
process.env.MCP_MODE = 'true';
import { TradingMCPServer } from './server.js';
// Get exchange name
const exchangeName = (process.env.EXCHANGE || 'mexc').toLowerCase();
// Get credentials based on exchange
function getCredentials(exchange) {
const upper = exchange.toUpperCase();
return {
apiKey: process.env[`${upper}_API_KEY`] || process.env.API_KEY,
secret: process.env[`${upper}_SECRET`] || process.env.API_SECRET,
password: process.env[`${upper}_PASSWORD`] || process.env.API_PASSWORD
};
}
const credentials = getCredentials(exchangeName);
const server = new TradingMCPServer({
exchange: exchangeName,
apiKey: credentials.apiKey,
secret: credentials.secret,
password: credentials.password,
mode: process.env.TRADING_MODE || 'demo',
marketType: process.env.MARKET_TYPE || 'spot'
});
server.run().catch(error => {
console.error('Fatal error:', error.message);
process.exit(1);
});