Skip to main content
Glama

Worksona MCP Server

Official
by worksona
clean-metadata-tools.jsโ€ข2.76 kB
#!/usr/bin/env node const fs = require('fs'); const path = require('path'); const { execSync } = require('child_process'); console.log('๐Ÿงน CLEANING METADATA TOOL REFERENCES'); console.log('====================================\n'); // Find all metadata.json files const metadataFiles = execSync('find teams -name "metadata.json"', { encoding: 'utf8' }) .trim() .split('\n') .filter(Boolean); console.log(`๐Ÿ“‹ Processing ${metadataFiles.length} metadata files...\n`); let processedCount = 0; let errorCount = 0; metadataFiles.forEach((filePath) => { try { const fullPath = path.resolve(filePath); if (!fs.existsSync(fullPath)) { console.log(`โš ๏ธ File not found: ${filePath}`); errorCount++; return; } // Read and parse JSON const content = fs.readFileSync(fullPath, 'utf8'); const metadata = JSON.parse(content); let modified = false; // Remove tools requirements if (metadata.requirements && metadata.requirements.tools) { delete metadata.requirements.tools; modified = true; } if (metadata.requirements && metadata.requirements.optional_tools) { delete metadata.requirements.optional_tools; modified = true; } // Clean up hooks that reference tools if (metadata.hooks) { if (metadata.hooks.recommended) { metadata.hooks.recommended = metadata.hooks.recommended.filter(hook => !hook.includes('PostToolUse:') ); if (metadata.hooks.recommended.length === 0) { delete metadata.hooks.recommended; } modified = true; } if (metadata.hooks.optional) { metadata.hooks.optional = metadata.hooks.optional.filter(hook => !hook.includes('PostToolUse:') ); if (metadata.hooks.optional.length === 0) { delete metadata.hooks.optional; } modified = true; } // Remove empty hooks object if (Object.keys(metadata.hooks).length === 0) { delete metadata.hooks; modified = true; } } if (modified) { // Write back the cleaned metadata fs.writeFileSync(fullPath, JSON.stringify(metadata, null, 2) + '\n', 'utf8'); processedCount++; console.log(`โœ… ${filePath} - Tool references removed`); } else { console.log(`โœ… ${filePath} - No tool references found`); } } catch (error) { console.error(`โŒ Error processing ${filePath}:`, error.message); errorCount++; } }); console.log(`\n๐ŸŽ‰ METADATA CLEANUP COMPLETE!`); console.log(`โœ… Processed: ${processedCount} files`); console.log(`โŒ Errors: ${errorCount} files`); console.log(`๐Ÿ“Š Total: ${metadataFiles.length} files`);

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/worksona/-worksona-mcp-server'

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