Skip to main content
Glama

Claude MCP Server Integration

by mokemoke0821
template-service.ts2.59 kB
export class TemplateService { private commitTemplates: Record<string, string> = { feat: 'feat: add new feature', fix: 'fix: resolve issue with', docs: 'docs: update documentation for', style: 'style: improve formatting in', refactor: 'refactor: restructure', test: 'test: add tests for', chore: 'chore: update' }; generateCommitMessage(diff: string, type?: string): string { try { const changes = this.analyzeDiff(diff); const suggestedType = type || this.suggestCommitType(changes); const template = this.commitTemplates[suggestedType as keyof typeof this.commitTemplates] || this.commitTemplates.feat; return `${template} ${changes.primaryFile || 'multiple files'}`; } catch (error) { return 'feat: update codebase'; } } private analyzeDiff(diff: string): any { const lines = diff.split('\n'); const changedFiles = lines .filter(line => line.startsWith('+++') || line.startsWith('---')) .map(line => line.replace(/^[\+\-]{3}\s*/, '')) .filter(file => !file.startsWith('/dev/null')); const addedLines = lines.filter(line => line.startsWith('+')).length; const removedLines = lines.filter(line => line.startsWith('-')).length; return { changedFiles, primaryFile: changedFiles[0]?.split('/').pop(), addedLines, removedLines, isLargeChange: changedFiles.length > 5 || addedLines > 100 }; } private suggestCommitType(changes: any): string { if (changes.primaryFile?.includes('test')) return 'test'; if (changes.primaryFile?.includes('README') || changes.primaryFile?.includes('.md')) return 'docs'; if (changes.removedLines > changes.addedLines) return 'refactor'; if (changes.isLargeChange) return 'feat'; return 'fix'; } generateCodeTemplate(type: string, name: string): string { const templates: Record<string, string> = { component: `export interface ${name}Props { // Define props here } export const ${name}: React.FC<${name}Props> = (props) => { return ( <div> {/* Component content */} </div> ); };`, function: `export function ${name}() { // Function implementation return; }`, class: `export class ${name} { constructor() { // Constructor implementation } // Class methods }`, test: `describe('${name}', () => { it('should work correctly', () => { // Test implementation expect(true).toBe(true); }); });` }; return templates[type] || templates.function; } }

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/mokemoke0821/claude-mcp-integration'

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