Skip to main content
Glama
wqhui
by wqhui
index.ts1.47 kB
#!/usr/bin/env node import 'dotenv/config'; import { GitLabMCPServer } from './server.js'; import { logger } from './utils/logger.js'; // 检查必需的环境变量 const requiredEnvVars = { GITLAB_URL: process.env.GITLAB_URL, GITLAB_PROJECT_ID: process.env.GITLAB_PROJECT_ID, GITLAB_TOKEN: process.env.GITLAB_TOKEN }; const missingVars = Object.entries(requiredEnvVars) .filter(([_, value]) => !value) .map(([key]) => key); if (missingVars.length > 0) { logger.error('❌ 缺少必需的环境变量:', missingVars.join(', ')); logger.error('请设置以下环境变量:'); logger.error('- GITLAB_URL: GitLab 实例的 URL'); logger.error('- GITLAB_PROJECT_ID: GitLab 项目 ID'); logger.error('- GITLAB_TOKEN: GitLab 访问令牌'); } // 创建服务器配置 const config = { name: 'gitlab-mcp-server', version: '1.0.0', gitlabUrl: requiredEnvVars.GITLAB_URL!, gitlabProjectId: requiredEnvVars.GITLAB_PROJECT_ID!, gitlabToken: requiredEnvVars.GITLAB_TOKEN! }; // 启动服务器 const gitlabMcpServer = new GitLabMCPServer(config); // 检查是否为开发环境 const isDev = process.env.NODE_ENV === 'development'; // 解析命令行参数 const mode = isDev ? 'http' : 'stdio'; const port = Number(process.env.PORT || 3300); const host = process.env.HOST || '127.0.0.1'; if (mode === 'http') { gitlabMcpServer.startHttp(port, host).catch(console.error); } else { gitlabMcpServer.startStdio().catch(console.error); }

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/wqhui/mcp-gitlab'

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