config.service.ts•1.1 kB
import { Injectable } from '@nestjs/common';
import * as dotenv from 'dotenv';
dotenv.config();
@Injectable()
export class ConfigService {
// 数据库配置
get dbConfig() {
return {
host: process.env.DB_HOST || 'localhost',
port: parseInt(process.env.DB_PORT || '3306'),
username: process.env.DB_USER || 'root',
password: process.env.DB_PASSWORD || '',
database: process.env.DB_NAME || 'mcp-test',
};
}
// Kimi API 配置
get kimiConfig() {
return {
apiKey: process.env.KIMI_API_KEY || '',
baseUrl: process.env.KIMI_BASE_URL || 'https://api.moonshot.cn/v1',
};
}
// 安全配置
get securityConfig() {
return {
allowedTables: (process.env.ALLOWED_TABLES || 'users').split(',').map(t => t.trim()),
maxQueryLimit: parseInt(process.env.MAX_QUERY_LIMIT || '1000'),
apiKey: process.env.API_KEY || '',
};
}
// 端口配置
get ports() {
return {
mcpServer: parseInt(process.env.MCP_SERVER_PORT || '3001'),
chatApi: parseInt(process.env.CHAT_API_PORT || '3000'),
};
}
}