Skip to main content
Glama

Watchtower DAP Windows Debugging

by rlaksana
index.ts1.9 kB
#!/usr/bin/env node /** * Watchtower MCP Server - Main Entry Point * Windows-native MCP ⇄ DAP bridge for C#, Node/TS, Python, and Dart */ import { createServer } from './server/server.js'; import { Logger } from './server/logger.js'; import { setupMetrics } from './server/metrics.js'; import { ConfigManager } from './server/config.js'; import { version } from '../package.json'; const logger = new Logger('main'); async function main() { try { // Initialize configuration const config = ConfigManager.getInstance(); // Set up metrics setupMetrics(); // Create and start MCP server const server = await createServer(config); logger.info(`Watchtower MCP Server v${version} started successfully`); logger.info(`Server listening on port ${config.get('server.port', 0)}`); // Graceful shutdown handling process.on('SIGTERM', () => { logger.info('Received SIGTERM, shutting down gracefully'); server.stop().catch(err => { logger.error('Error during graceful shutdown:', err); }); }); process.on('SIGINT', () => { logger.info('Received SIGINT, shutting down gracefully'); server.stop().catch(err => { logger.error('Error during graceful shutdown:', err); }); }); process.on('uncaughtException', err => { logger.error('Uncaught exception:', err); process.exit(1); }); process.on('unhandledRejection', (reason, promise) => { logger.error('Unhandled rejection at:', { promise, reason }); }); } catch (error) { logger.error('Failed to start Watchtower server:', error); process.exit(1); } } // Handle errors during startup process.on('exit', code => { if (code === 0) { logger.info('Watchtower server shutdown completed'); } else { logger.error(`Watchtower server shutdown with code ${code}`); } }); // Start the server main();

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rlaksana/mcp-watchtower'

If you have feedback or need assistance with the MCP directory API, please join our Discord server