Skip to main content
Glama

create_vibe

Generate energy states or atmospheres with customizable parameters for creative workflows, strategic design, and innovation processes.

Instructions

Create a vibe - an energy or atmosphere

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
energyYesEnergy type
frequencyNoFrequency/tempo (1-100 Hz)
nameYesName of the vibe
rhythmNoRhythmic pattern

Implementation Reference

  • The core handler function createVibe that validates input, creates and stores the vibe in the vibes Map, generates associated rhythm, and returns a formatted response with visualization.
    createVibe(args) { const { name, energy, frequency = 50, rhythm = 'ambient' } = args; if (!name || name.trim().length === 0) { return { content: [ { type: 'text', text: `❌ Vibe name is required. Please provide a name for the vibe.`, }, ], }; } if (!energy || energy.trim().length === 0) { return { content: [ { type: 'text', text: `❌ Energy type is required. Please specify an energy: calm, intense, chaotic, focused, or expansive.`, }, ], }; } if (this.vibes.has(name)) { return { content: [ { type: 'text', text: `⚠️ Vibe "${name}" already exists. Use a different name or pulse the existing vibe.`, }, ], }; } const vibe = { name, energy, frequency, rhythm, created_at: new Date().toISOString(), pulses: [], }; this.vibes.set(name, vibe); this.rhythms.set(`vibe_${name}`, this.generateRhythm(rhythm)); return { content: [ { type: 'text', text: `✨ Vibe "${name}" created!\n\nEnergy: ${energy}\nFrequency: ${frequency} Hz\nRhythm: ${rhythm}\n\n${this.visualizeVibeEnergy(energy, frequency)}\n\nThe ${energy} vibe resonates at ${frequency}Hz with ${rhythm} rhythm.`, }, ], }; }
  • The input schema definition for the create_vibe tool, registered in the ListTools response, defining parameters, types, enums, and required fields.
    { name: 'create_vibe', description: 'Create a vibe - an energy or atmosphere', inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'Name of the vibe', }, energy: { type: 'string', enum: ['calm', 'intense', 'chaotic', 'focused', 'expansive'], description: 'Energy type', }, frequency: { type: 'number', minimum: 1, maximum: 100, description: 'Frequency/tempo (1-100 Hz)', }, rhythm: { type: 'string', enum: ['ambient', 'driving', 'syncopated', 'polyrhythmic', 'freeform'], description: 'Rhythmic pattern', }, }, required: ['name', 'energy'], }, },
  • index.js:335-336 (registration)
    The switch case in the CallToolRequestSchema handler that registers and dispatches calls to the create_vibe tool by invoking the createVibe method.
    case 'create_vibe': return this.createVibe(args);
  • Helper function visualizeVibeEnergy used by createVibe to generate a visual representation of the vibe's energy and frequency for the response.
    visualizeVibeEnergy(energy, frequency) { const energySymbols = { calm: '≈≈≈≈≈', intense: '⚡⚡⚡⚡⚡', chaotic: '✱✱✱✱✱', focused: '◉◉◉◉◉', expansive: '◎◎◎◎◎', }; const freq = '〜'.repeat(Math.ceil(frequency / 20)); return `${energySymbols[energy] || '≈≈≈≈≈'} ${freq}`; }

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/suhitanantula/llv-helix'

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