npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

claude-collider

v0.1.1

Published

MCP server for live coding music with SuperCollider

Readme

Claude Collider

An MCP (Model Context Protocol) server that enables Claude to generate and play music through SuperCollider. Describe the sounds you want, and Claude will write and execute SuperCollider code in real-time.

Requirements

Installation

git clone https://github.com/jeremyruppel/claude-collider.git
cd claude-collider
npm install
npm run build

ClaudeCollider Quark

Symlink or copy the ClaudeCollider folder to your Extensions directory:

ln -s /path/to/claude-collider/ClaudeCollider ~/Library/Application\ Support/SuperCollider/Extensions/ClaudeCollider

Claude Desktop Configuration

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "supercollider": {
      "command": "node",
      "args": ["/path/to/claude-collider/dist/index.js"],
      "env": {
        "CC_SAMPLES_PATH": "/path/to/your/samples",
        "CC_RECORDINGS_PATH": "/path/to/your/recordings"
      }
    }
  }
}

The env block is optional - paths default to ~/.claudecollider/samples and ~/.claudecollider/recordings.

Restart Claude Desktop after updating the config.

Available Tools

SuperCollider Tools

| Tool | Description | | ------------------ | ------------------------------------------------------------------------ | | sc_boot | Boot ClaudeCollider and the SuperCollider audio server | | sc_execute | Execute SuperCollider code (play sounds, define synths, create patterns) | | sc_stop | Stop all sounds (Cmd+Period equivalent) | | sc_status | Get status: tempo, synths, CPU, active patterns | | sc_tempo | Get or set the tempo in BPM | | sc_clear | Stop all sounds and clear patterns, effects, and MIDI mappings | | sc_reboot | Reboot the audio server with optional new device | | sc_audio_devices | List available audio input and output devices |

MIDI Tools

| Tool | Description | | ------------------- | -------------------------------------------------------------------- | | midi_list_devices | List available MIDI input and output devices | | midi_connect | Connect to a MIDI device by name or index (use 'all' for all inputs) | | midi_map_notes | Map MIDI notes to trigger a synth (polyphonic or mono) | | midi_map_cc | Map a MIDI CC to a control bus for parameter modulation | | midi_clear | Clear all MIDI mappings |

Effects Tools

| Tool | Description | | ------------------ | ------------------------------------------------------- | | fx_load | Load a pre-built effect (returns input bus for routing) | | fx_set | Set parameters on a loaded effect | | fx_route | Route a sound source (Pdef/Ndef) to an effect | | fx_connect | Connect one effect's output to another effect's input | | fx_chain | Create a named chain of effects wired in series | | fx_sidechain | Create a sidechain compressor (e.g., kick ducking bass) | | fx_route_trigger | Route a source to the trigger input of a sidechain | | fx_bypass | Bypass an effect (pass audio through unchanged) | | fx_remove | Remove an effect and free its resources | | fx_list | List all loaded effects, sidechains, and connections |

Sample Tools

Place WAV or AIFF files in your samples directory (default: ~/.claudecollider/samples/). Samples are discovered on boot and lazy loaded on first use.

| Tool | Description | | --------------- | ----------------------------------------------------- | | sample_list | List available samples (shows loaded/unloaded status) | | sample_play | Play a sample once (loads buffer if needed) | | sample_free | Free a sample buffer from memory | | sample_reload | Rescan samples directory for new files |

Recording Tools

Record your jams to WAV files in your recordings directory (default: ~/.claudecollider/recordings/).

| Tool | Description | | ------------------ | ------------------------------------------ | | recording_start | Start recording audio output to a WAV file | | recording_stop | Stop recording and get the saved file path | | recording_status | Check if recording is active |

Pre-built SynthDefs

All synths are automatically loaded when you call sc_boot. Use them with the \cc_ prefix:

Drums:

  • cc_kick - Punchy kick drum with sub bass
  • cc_snare - Snare drum with noise burst
  • cc_hihat - Closed hi-hat
  • cc_openhat - Open hi-hat with longer decay
  • cc_clap - Hand clap with layered noise
  • cc_tom - Tunable tom drum for fills
  • cc_rim - Rimshot / sidestick
  • cc_shaker - Shaker / maraca
  • cc_cowbell - 808-style cowbell

Bass:

  • cc_bass - Simple sub bass with harmonics
  • cc_acid - Resonant 303-style filter bass
  • cc_sub - Pure sub bass for layering
  • cc_reese - Detuned saw bass (DnB/dubstep)
  • cc_fmbass - FM bass for growly tones

Leads & Melodic:

  • cc_lead - Detuned saw lead with filter
  • cc_pluck - Karplus-Strong plucked string
  • cc_bell - FM bell / glassy tone
  • cc_keys - Electric piano / Rhodes-ish
  • cc_strings - String ensemble pad

Pads & Textural:

  • cc_pad - Soft ambient pad with detuned oscillators
  • cc_noise - Filtered noise source
  • cc_drone - Evolving ambient texture
  • cc_riser - Tension building sweep

Utility:

  • cc_click - Metronome click
  • cc_sine - Pure sine tone
  • cc_sampler - Basic sample playback
  • cc_grains - Granular sample playback

Pre-built Effects

Load effects with fx_load:

  • Filters: lpf, hpf, bpf
  • Time-based: reverb, delay, pingpong
  • Modulation: chorus, flanger, phaser, tremolo
  • Distortion: distortion, bitcrush, wavefold
  • Dynamics: compressor, limiter, gate
  • Stereo: widener, autopan

Example Prompts

  • "Boot SuperCollider and play a simple sine wave"
  • "Load the kick and snare synths and make a basic beat"
  • "Create an ambient pad that slowly evolves"
  • "Make a 303-style acid bassline"
  • "Set the tempo to 120 BPM"
  • "Connect my MIDI keyboard and let me play the pad synth"
  • "Map CC 1 to control the filter cutoff"
  • "Show me the server status"
  • "Add some reverb to the drums"
  • "Create an effect chain with filter, distortion, and delay for the bass"
  • "Set up sidechain compression so the kick ducks the bass"
  • "Start recording my jam"
  • "Stop recording and save the file"

Debug Mode

Enable debug logging:

DEBUG=claude-collider node dist/index.js

Logs are written to /tmp/claude-collider.log.

Environment Variables

| Variable | Default | Description | | -------------------- | ------------------------------ | --------------------------------------- | | SCLANG_PATH | Auto-detected | Path to sclang executable | | SC_BOOT_TIMEOUT | 10000 | Boot timeout in ms | | SC_EXEC_TIMEOUT | 2000 | Execution timeout in ms | | CC_SAMPLES_PATH | ~/.claudecollider/samples | Directory for audio samples | | CC_RECORDINGS_PATH | ~/.claudecollider/recordings | Directory for recorded audio | | DEBUG | - | Set to claude-collider for debug logs |

License

MIT