Skip to main content
Glama
rule-processors.ts1.72 kB
import { CodegenRule } from '@/types/mcp-types.js'; /** * Rule processing tool collection * Centralize all rule processing functions to avoid duplicate code */ /** * Get private component documents */ export function getPrivateComponentDocs(rules: CodegenRule[]) { const privateComponentsRule = rules.find( rule => rule.type === 'private-components' ); const docs = privateComponentsRule?.docs; return docs; } /** * Get private document description */ export function getPrivateDocsDescription(rules: CodegenRule[]): string { const docs = getPrivateComponentDocs(rules); // Process private component library const templates: string[] = []; let componentDescriptions = ''; for (const key in docs) { if (Object.prototype.hasOwnProperty.call(docs, key)) { const component = docs[key] as { purpose?: string; usage?: string | string[]; }; // Only build description for purpose and usage let description = ''; if (component.purpose) { description += component.purpose; } if (component.usage) { if (description) description += ' '; description += Array.isArray(component.usage) ? component.usage.join(', ') : component.usage; } if (!description) { continue; } componentDescriptions += ` ${key}: ${description} `; } } if (componentDescriptions.trim()) { const template = ` - Component Library - The following components are available for use: --------------------- ${componentDescriptions.trim()} --------------------- `; templates.push(template.trim()); } const result = templates.join('\n\n'); return result; }

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/lyw405/mcp-garendesign'

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