Skip to main content
Glama
index.ts1.08 kB
import { startApiServer } from './api/api-server.js'; import { createDataStore } from './datastore/datastore.js'; import { startGraphqlServer } from './graphql/graphql-server.js'; import { WorkflowSchedulerWorker } from './scheduler/scheduler-worker.js'; import { validateEnvironment } from './shared/environment.js'; import { initializeWorkerPools } from './worker/worker-pool-registry.js'; async function startServer() { validateEnvironment(); // Initialize shared components const datastore = createDataStore({ type: String(process.env.DATASTORE_TYPE).toLowerCase() as 'memory' | 'file' | 'postgres' }); const workerPools = initializeWorkerPools(datastore); if (process.env.START_SCHEDULER_SERVER === 'true') { const workflowScheduler = new WorkflowSchedulerWorker(datastore, workerPools); workflowScheduler.start(); } await Promise.all([ startApiServer(datastore, workerPools), startGraphqlServer(datastore, workerPools) ]); } startServer().catch((error) => { console.error('Failed to start server:', error); process.exit(1); });

Latest Blog Posts

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/superglue-ai/superglue'

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