UNPKG

rhombus-node-mcp

Version:
41 lines (40 loc) 1.35 kB
#!/usr/bin/env node import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import "dotenv/config"; import { serverInit } from "./createServer.js"; import { logger } from "./logger.js"; import stdioTransport from "./transports/stdio.js"; import streamableHttpTransport from "./transports/streamable-http.js"; const RHOMBUS_API_KEY = process.env.RHOMBUS_API_KEY; const TRANSPORT_TYPE = process.env.TRANSPORT_TYPE || "stdio"; async function main() { if (!RHOMBUS_API_KEY) { logger.info("Missing RHOMBUS_API_KEY"); } const serverUrl = process.env.RHOMBUS_API_SERVER || "api2.rhombussystems.com"; logger.info(`Using API_KEY: ${RHOMBUS_API_KEY}`); logger.info(`To hit API server: ${serverUrl}`); logger.info("🌐 Using server url", serverUrl); await serverInit(); const server = new McpServer({ name: "rhombus", version: "1.0.0", capabilities: { resources: {}, tools: {}, }, }); if (TRANSPORT_TYPE === "stdio") { await stdioTransport(); } else if (TRANSPORT_TYPE === "streamable-http") { await streamableHttpTransport(); } else { throw new Error(`Invalid transport type: ${TRANSPORT_TYPE}`); } } main().catch(error => { console.error("Fatal error in main():", error); process.exit(1); });