Skip to main content
Glama

RISEN Prompt Engineering MCP Tool

security-config.js3.05 kB
// ============================================================================ // SECURITY CONFIGURATION // ============================================================================ // Security limits - can be overridden by environment variables export const SECURITY_CONFIG = { // Input size limits MAX_TEMPLATE_NAME_LENGTH: parseInt(process.env.MAX_TEMPLATE_NAME_LENGTH) || 100, MAX_DESCRIPTION_LENGTH: parseInt(process.env.MAX_DESCRIPTION_LENGTH) || 500, MAX_INSTRUCTIONS_LENGTH: parseInt(process.env.MAX_INSTRUCTIONS_LENGTH) || 2000, MAX_EXPECTATIONS_LENGTH: parseInt(process.env.MAX_EXPECTATIONS_LENGTH) || 1000, MAX_NARROWING_LENGTH: parseInt(process.env.MAX_NARROWING_LENGTH) || 1000, MAX_STEPS_COUNT: parseInt(process.env.MAX_STEPS_COUNT) || 50, MAX_VARIABLES_COUNT: parseInt(process.env.MAX_VARIABLES_COUNT) || 20, MAX_TAGS_COUNT: parseInt(process.env.MAX_TAGS_COUNT) || 10, // Response limits MAX_TEMPLATE_SIZE: parseInt(process.env.MAX_TEMPLATE_SIZE) || 8000, MAX_INDIVIDUAL_FIELD_SIZE: parseInt(process.env.MAX_INDIVIDUAL_FIELD_SIZE) || 2000, MAX_RESPONSE_SIZE: parseInt(process.env.MAX_RESPONSE_SIZE) || 2000, // Database configuration DB_PATH: process.env.RISEN_DB_PATH || 'risen_prompts.db', // Security features ENABLE_DEBUG_LOGGING: process.env.DEBUG === 'true' || process.env.NODE_ENV === 'development', ENABLE_ERROR_DETAILS: process.env.ENABLE_ERROR_DETAILS === 'true', // Performance limits PAGINATION_LIMIT: parseInt(process.env.PAGINATION_LIMIT) || 20, MAX_SEARCH_RESULTS: parseInt(process.env.MAX_SEARCH_RESULTS) || 10, // Cleanup configuration CLEANUP_RETENTION_DAYS: parseInt(process.env.CLEANUP_RETENTION_DAYS) || 90, UNUSED_TEMPLATE_DAYS: parseInt(process.env.UNUSED_TEMPLATE_DAYS) || 30, // Health monitoring MAX_HEALTHY_DB_SIZE_KB: parseInt(process.env.MAX_HEALTHY_DB_SIZE_KB) || 50000, MAX_HEALTHY_MEMORY_MB: parseInt(process.env.MAX_HEALTHY_MEMORY_MB) || 500, MAX_HEALTHY_RESPONSE_TIME_MS: parseInt(process.env.MAX_HEALTHY_RESPONSE_TIME_MS) || 5000, MAX_ERROR_RATE_PERCENT: parseInt(process.env.MAX_ERROR_RATE_PERCENT) || 5 }; // Security validation functions export function validateSecurityLimits() { const issues = []; if (SECURITY_CONFIG.MAX_TEMPLATE_SIZE > 50000) { issues.push('MAX_TEMPLATE_SIZE is dangerously large (>50KB)'); } if (SECURITY_CONFIG.MAX_RESPONSE_SIZE > 10000) { issues.push('MAX_RESPONSE_SIZE is dangerously large (>10KB)'); } if (SECURITY_CONFIG.ENABLE_ERROR_DETAILS && process.env.NODE_ENV === 'production') { issues.push('Error details should not be enabled in production'); } return issues; } // Environment setup recommendations export function getSecurityRecommendations() { return [ 'Set NODE_ENV=production for production deployments', 'Use a secure database path outside the web root', 'Enable only necessary debug features', 'Monitor security limits and adjust based on usage', 'Regularly review and update security configuration' ]; }

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/Futuretechaiguy/risen-prompts-mcp-server'

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