Skip to main content
Glama

mcp-google-sheets

format-checkly-report.js1.84 kB
const fs = require('fs'); function main() { if (process.argv.length < 3) { console.error('Usage: node format-checkly-report.js <path-to-md> [environment]'); process.exit(1); } const mdPath = process.argv[2]; const environment = process.argv[3]; const content = fs.readFileSync(mdPath, 'utf8'); const lines = content.split('\n'); const bulletPoints = []; const summaryLines = []; let inTable = false; for (const line of lines) { if (line.startsWith('|Result|')) { inTable = true; continue; } if (inTable && (line.startsWith('|:-') || !line.trim())) { continue; } if (inTable && line.includes('|')) { const parts = line.split('|').map(part => part.trim()).filter(Boolean); if (parts.length >= 5) { const status = parts[0]; const name = parts[1]; const checkType = parts[2]; const filename = parts[3].replace(/`/g, ''); const duration = parts[4]; // Try to extract link if present const linkMatch = line.match(/\[Full test report\]\((.*?)\)/); const link = linkMatch ? linkMatch[1] : null; const emoji = status.includes('Fail') ? '❌' : '✅'; let point = `${emoji} **${name}** (${checkType}) - ${duration}\n 📁 ${filename}`; if (link) { point += `\n 🔗 [Full report](${link})`; } bulletPoints.push(point); } } else if (!inTable) { summaryLines.push(line); } } let message = ''; if (environment) { message += `**Environment:** ${environment}\n\n`; } for (const l of summaryLines) { if (l.trim()) { message += l + '\n'; } } if (bulletPoints.length) { message += '\n**Test Results:**\n'; message += bulletPoints.join('\n'); } console.log(JSON.stringify(message)); } main();

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/activepieces/activepieces'

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