UNPKG

@yepcode/mcp-server

Version:

MCP server for YepCode

41 lines (40 loc) 1.56 kB
#!/usr/bin/env node import Logger from "./logger.js"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; import YepCodeMcpServer from "./server.js"; import { getVersion } from "./utils.js"; const logger = new Logger("StdioServer", { logsToStderr: true }); const main = async () => { let disableRunCodeTool = false; let skipRunCodeCleanup = false; if (process.env.YEPCODE_MCP_OPTIONS) { const mcpOptions = process.env.YEPCODE_MCP_OPTIONS.split(","); disableRunCodeTool = mcpOptions.includes("disableRunCodeTool"); skipRunCodeCleanup = mcpOptions.includes("skipRunCodeCleanup"); } const server = new YepCodeMcpServer({}, { logsToStderr: true, disableRunCodeTool, skipRunCodeCleanup }); try { const transport = new StdioServerTransport(); await server.connect(transport); logger.info(`@yepcode/mcp-server v${getVersion()} successfully started`); // Handle process termination process.on("SIGINT", async () => { logger.info("Received SIGINT, shutting down"); await server.close(); process.exit(0); }); process.on("SIGTERM", async () => { logger.info("Received SIGTERM, shutting down"); await server.close(); process.exit(0); }); } catch (error) { logger.error("Failed to start server:", error); process.exit(1); } }; main().catch((error) => { logger.error("Error running server", error); }); export default main;