UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

32 lines 1.19 kB
#!/usr/bin/env node import path from 'node:path'; import process from 'node:process'; import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'; import { createDocsServer, validateDocsRoot } from "./mcp-docs-server.js"; function logErr(...args) { console.error(...args); } async function main() { const { server, tools } = createDocsServer(); logErr(`[eufemia] docsRoot: ${tools.docsRoot}`); await validateDocsRoot(tools.docsRoot); const transport = new StdioServerTransport(); await server.connect(transport); logErr('[eufemia] connected (stdio)'); } const shouldRun = (() => { const entryPath = process.argv[1] ? path.resolve(process.argv[1]) : ''; const entryName = entryPath ? path.basename(entryPath) : ''; const allowed = new Set(['mcp-stdio.js', 'mcp-stdio.mjs', 'mcp-stdio.cjs', 'mcp-stdio.ts', 'mcp-stdio.mts', 'mcp-docs-server.js', 'mcp-docs-server.mjs', 'mcp-docs-server.cjs', 'mcp-docs-server.ts', 'mcp-docs-server.mts']); return entryName ? allowed.has(entryName) : false; })(); if (shouldRun) { main().catch(e => { logErr('[eufemia] fatal:', e); process.exit(1); }); } //# sourceMappingURL=mcp-stdio.js.map