Skip to main content
Glama
suhitanantula

LLV Helix Framework

pulse_vibe

Send a pulse through a vibe to manage energy states and creative workflows within the LLV Helix Framework.

Instructions

Send a pulse through a vibe

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
vibe_nameYesName of the vibe
amplitudeNoPulse amplitude (0-1)
durationNoPulse duration in beats

Implementation Reference

  • The pulseVibe method implements the core logic of the pulse_vibe tool. It retrieves the specified vibe, creates a pulse record with amplitude, duration, and rhythm step, appends it to the vibe's pulses, and returns a formatted response with visualization.
    pulseVibe(args) {
      const { vibe_name, amplitude = 0.5, duration = 1 } = args;
      const vibe = this.vibes.get(vibe_name);
    
      if (!vibe) {
        return {
          content: [
            {
              type: 'text',
              text: `❌ Vibe "${vibe_name}" not found.`,
            },
          ],
        };
      }
    
      const rhythm = this.rhythms.get(`vibe_${vibe_name}`);
      const pulse = {
        timestamp: new Date().toISOString(),
        amplitude,
        duration,
        frequency: vibe.frequency,
        rhythmStep: rhythm ? rhythm.next() : 1,
      };
    
      vibe.pulses.push(pulse);
    
      return {
        content: [
          {
            type: 'text',
            text: `✨ Pulsing vibe "${vibe_name}"\n\nEnergy: ${vibe.energy}\nAmplitude: ${(amplitude * 100).toFixed(0)}%\nDuration: ${duration} beats\n\n${this.visualizePulse(amplitude, vibe.frequency)}\n\nRhythm: ${vibe.rhythm} @ ${pulse.rhythmStep}`,
          },
        ],
      };
    }
  • The input schema for the pulse_vibe tool defines the expected arguments: vibe_name (required string), optional amplitude (number 0-1), and optional duration (number). This is provided in the ListTools response.
    {
      name: 'pulse_vibe',
      description: 'Send a pulse through a vibe',
      inputSchema: {
        type: 'object',
        properties: {
          vibe_name: {
            type: 'string',
            description: 'Name of the vibe',
          },
          amplitude: {
            type: 'number',
            minimum: 0,
            maximum: 1,
            description: 'Pulse amplitude (0-1)',
          },
          duration: {
            type: 'number',
            description: 'Pulse duration in beats',
          },
        },
        required: ['vibe_name'],
      },
    },
  • index.js:343-344 (registration)
    The switch case in the CallToolRequestSchema handler that routes calls to the pulse_vibe tool to the pulseVibe method.
    case 'pulse_vibe':
      return this.pulseVibe(args);

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