Skip to main content
Glama
ascii-art.tsโ€ข1.92 kB
export const duckArt = { normal: ` __ <(o )___ ( ._> / \`---'`, happy: ` __ <(^v^)___ ( ._> / \`---'`, thinking: ` __ ? <(o )___ ( ._> / \`---'`, error: ` __ ! <(x_x)___ ( ._> / \`---'`, sleeping: ` __ zzz <(- -)___ ( ._> / \`---'`, panel: ` ๐Ÿฆ† Duck Council in Session ๐Ÿฆ† =============================`, welcome: ` โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•— โ•‘ Welcome to MCP Rubber Duck! ๐Ÿฆ† โ•‘ โ•‘ Your AI debugging companions โ•‘ โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•`, }; export const duckMessages = { startup: [ 'Quack! Rubber ducks reporting for duty!', 'Ducks assembled and ready to debug!', 'The duck pond is open for business!', ], error: [ 'Quack! The duck has flown away!', 'Oh no! This duck got confused!', 'The duck needs a moment to think...', ], success: [ 'Quack quack! Problem solved!', 'The duck has spoken wisely!', 'Another successful rubber duck session!', ], thinking: [ 'The duck is pondering...', 'Hmm, let the duck think about this...', 'Duck brain processing...', ], failover: [ 'Primary duck is resting, calling backup duck!', 'Switching to a fresh duck!', 'Backup duck swimming in!', ], }; export function getRandomDuckMessage(type: keyof typeof duckMessages): string { const messages = duckMessages[type]; return messages[Math.floor(Math.random() * messages.length)]; } export function formatDuckResponse(provider: string, message: string, model?: string): string { if (model) { return `๐Ÿฆ† [${provider} | ${model}]: ${message}`; } return `๐Ÿฆ† [${provider}]: ${message}`; }

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/nesquikm/mcp-rubber-duck'

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