Skip to content
Agentmart
Submit a tool

Audiolla

Self-hosted MCP server: audio stems, mastering, MIR analysis, DSP, MIDI, speech tools.

Connector by psyb0t · GitHub account verified by the MCP Registry

IndexedWTFPLRemote (HTTP)★ 5
Write a review

Install

Pick your client. Read the repository before you give any tool access to your data.

No install instructions from the source yet. Check the repository for setup steps.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Self-hosted MCP server: audio stems, mastering, MIR analysis, DSP, MIDI, speech tools.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
27 read · 10 write · 4 delete · 41 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Docker image

Tools by what they do 82

Read from the source code; the running server may list different tools.

Read 27 · Look things up without changing anything.

  • analyze
  • audio_metadata
  • audio_thumbnail
  • audio_to_midi
  • bpm_match
  • chords_to_midi
  • classify
  • convert
  • describe_preset
  • detect_clipping
  • dj_prep
  • find_loop_point
Show 15 more tools
  • get_file
  • get_job
  • info
  • key_match
  • list_engines
  • list_files
  • list_jobs
  • list_ops
  • list_presets
  • loudness
  • loudness_curve
  • midi_inspect
  • silence
  • stereo_field
  • visualize

Write 10 · Create, change, send or run things.

  • convolution_reverb
  • fade
  • generate_music
  • midi_compose
  • midi_generate
  • midi_humanize
  • put_file
  • run_pipeline_tool
  • run_preset
  • tag

Delete 4 · Delete, drop, revoke or wipe things.

  • cancel_job
  • delete_file
  • denoise
  • restore

Not yet classified 41 · We could not tell from the name and description.

  • beats
  • chords
  • concat
  • deess
  • diarize
  • drum_pattern
  • embed
  • enhance
  • eq
  • fingerprint
  • fx
  • hpss
Show 29 more tools
  • loop
  • master
  • melody
  • mid_side
  • midi_quantize
  • midi_render
  • midi_transform
  • mix
  • multiband_compress
  • noise_reduce
  • normalize
  • onsets
  • pan
  • pitch_correct
  • repair_audio
  • reverse
  • segments
  • separate
  • sidechain_duck
  • similar
  • slice_at_beats
  • speed
  • split
  • stereo_width
  • stretch
  • transform
  • transient_shaper
  • trim
  • vad

Network hosts it talks to 2

  • github.com · found in code
  • glama.ai · found in code

Files it touches

  • /usr/share/sounds/sf2/FluidR3_GM.sf2
  • Any path the agent passes to its tools

Tools (82)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • analyze

    librosa MIR analysis. Returns extracted features as JSON. Provide exactly one of `file_path` or `file_url`. Valid feature names: bpm, key, loudness, duration, spectral_centroid, rms, zcr. Empty/None features means all of them.

  • audio_metadata

    Read or write audio file tags (ID3 for MP3, Vorbis for FLAC/OGG). Without tags: returns title, artist, album, year, bpm, key, etc. With tags: writes provided fields and returns updated tag set.

  • audio_thumbnail

    Extract the most energetically interesting segment of duration_sec. Uses onset strength to locate the peak-activity region. Returns audio base64 with start_sec/end_sec metadata.

  • audio_to_midi

    Convert audio to a polyphonic MIDI file via Spotify basic-pitch. Provide exactly one of `file_path` or `file_url`. Writes MIDI to `output_path` xor `output_url`; response is `{path,size,engine}` or `{url,size,engine}`.

  • beats

    Beat tracking. Returns tempo + beat positions in seconds. With ``click_track=True`` also writes click-track audio to ``output_path`` xor ``output_url`` of input mixed with a metronome click on each beat.

  • bpm_match

    Detect source BPM then time-stretch to target_bpm. Requires librosa-analyze + stretch engines. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}` plus {source_bpm, target_bpm, tempo_factor}.

  • cancel_job

    Cancel a running async job or remove a completed job from the queue.

  • chords

    Chord + key detection via librosa chroma analysis. Returns detected key with confidence, and time-stamped chord segments.

  • chords_to_midi

    Detect chord progression in audio and export as a MIDI chord progression. Each chord segment becomes a held chord (root + 3rd + 5th). Returns MIDI base64 or uploads to output_url.

  • classify

    Zero-shot audio classification via CLAP. Provide a list of labels (genres, moods, instruments — any free-form text). Returns results sorted by descending similarity score. Requires clap-embed model cache.

  • concat

    Concatenate N audio files in order. files: list of {file_path or file_url}. Requires at least 2. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • convert

    Re-encode audio to a different format, sample rate, or channel count. output_format: wav/mp3/flac/opus/aac/pcm. sample_rate: e.g. 16000, 44100, 48000. channels: 1 (mono) or 2 (stereo). Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • convolution_reverb

    Apply convolution reverb to audio using an impulse response (IR) file. wet_mix: 0.0 = dry only, 1.0 = wet only. Range [0.0, 1.0]. Provide the IR via ir_file_path (staged) or ir_file_url (remote).

  • deess

    Split-band de-esser: detect sibilance above frequency_hz and compress it. Returns audio base64 or uploads to output_url.

  • delete_file

    Delete a staged file.

Show 67 more tools
  • denoise

    Remove broadband background noise (ML path via UVR MelBand Roformer). Thin shim — prefer ``restore`` with engine=uvr-denoise, or ``noise_reduce`` with engine=uvr-denoise for the same result. engine default: uvr-denoise.

  • describe_preset

    Get the full step list of a preset before running it.

  • detect_clipping

    Detect digital clipping in an audio file. Returns: clipped, clip_count, clip_ratio, peak_db, duration_sec, sample_rate, channels.

  • diarize

    Speaker diarization — who spoke when. Returns time-stamped speaker segments. engine options: pyannote (default, requires HUGGINGFACE_TOKEN).

  • dj_prep

    Analyse a track for DJ use: BPM, musical key, Camelot wheel position, and integrated LUFS loudness. Requires librosa-analyze + chord-detect.

  • drum_pattern

    Generate a MIDI drum pattern from a step-sequencer spec. pattern: dict of instrument → step array (1=hit, 0=rest; or 1-127 for velocity). Instruments: kick, snare, hihat, hihat_open, ride, crash, clap, rim, cowbell, etc. Returns MIDI base64 or uploads to output_url.

  • embed

    512-dim L2-normalised audio embedding via LAION CLAP. With query_text, also returns cosine similarity to the text description. Requires HF model cache.

  • enhance

    Neural speech and vocal enhancement via DeepFilterNet DF3. Provide exactly one of `file_path` or `file_url`. Writes audio to `output_path` xor `output_url`; response is `{path,size,engine,output_format}` or `{url,size,engine,output_format}`.

  • eq

    Parametric EQ. bands: [{freq, gain_db, width_hz (opt)}]. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • fade

    Apply fade-in/fade-out. curve: tri/qsin/esin/hsin/log/exp/lin/etc. At least one of fade_in/fade_out must be > 0. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • find_loop_point

    Find the best seamless loop point in audio using beat-grid MFCC similarity. Returns loop_start_sec, loop_end_sec, bars, score, tempo_bpm, and top candidates.

  • fingerprint

    Chromaprint audio fingerprint via fpcalc. Returns ``{duration, fingerprint}`` (+ ``fingerprint_raw`` int array if ``return_raw=True``).

  • fx

    Generic effects chain. Provide exactly one of `file_path` or `file_url`. `effects` is an ordered list of {type, params} — type names match pedalboard classes (Compressor, Reverb, Chorus, Delay, PitchShift, HighShelfFilter, ...). Writes audio to `output_path` xor `output_url`.

  • generate_music

    Text-to-music generation. ``engine`` selects the generator: - ``ace-step`` — Apache 2.0, ~4 min vocal+instrumental songs. - ``diffrhythm`` — Apache 2.0, ~4m45s songs, lowest VRAM. - ``stable-audio-open`` — Stability Community License, 47s cap, loops / SFX / textures (no vocals). ``lyrics`` applies to ace-step and diffrhythm only; ignored by stable-audio-open. Writes audio to `output_path` xor `output_url`; ``output_path`` to stage in FILES_DIR or ``output_url`` for a presigned PUT. Long generations may take multiple minutes — use the REST endpoint with ``async_job=true`` for fire-and-forge…

  • get_file

    Read a staged file (base64-encoded back).

  • get_job

    Get the status and result of an async job by ID.

  • hpss

    Harmonic/percussive source separation via librosa HPSS median filter. Provide exactly one of `file_path` or `file_url`. Returns ``{stems: {harmonic: <path|url>, percussive: <path|url>}, output_format}`` — pass ``output_paths={'harmonic':..., 'percussive':...}`` xor ``output_urls={...}``. ``margin`` ≥1.0 controls separation aggressiveness; ``kernel_size`` sets the median filter width (odd int, default 31).

  • info

    Probe audio file metadata — duration, sample_rate, channels, codec, bit_depth, format, size_bytes. No engine required; works on any format.

  • key_match

    Detect source key then pitch-shift to target_key (e.g. C, F#, Bb). Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}` plus {source_key, target_key, semitones}. Requires chord-detect + stretch engines.

  • list_engines

    List configured engines + their capabilities.

  • list_files

    List files in the staging area.

  • list_jobs

    List async jobs submitted to the job queue. status: filter by 'pending', 'running', 'completed', 'failed', 'cancelled'.

  • list_ops

    List pipeline op slugs available in ``/v1/pipeline`` and presets.

  • list_presets

    List server-side curated workflows (name + description). Use ``run_preset`` to execute one against a file.

  • loop

    Repeat audio count times (minimum 2). Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • loudness

    Measure integrated loudness (LUFS) via pyloudnorm. Returns JSON only. Use ``normalize`` to produce loudness-normalized audio.

  • loudness_curve

    Compute the RMS loudness envelope of an audio file as a time series. Returns curve (list of {time_sec, rms_db}), duration, sample_rate, points.

  • master

    Master audio. Provide exactly one of `file_path` or `file_url`. For `mode=reference`, also provide one of `reference_path` or `reference_url`. For `mode=chain`, set `preset` (transparent or loud). Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`. target_lufs is optional in both modes.

  • melody

    Monophonic pitch tracking via pyin. Returns the pitch contour and (with ``as_midi=True``) a MIDI file of quantised (writes to ``output_path`` xor ``output_url``) notes.

  • mid_side

    Encode stereo audio to Mid/Side or decode M/S back to L/R. mode: 'encode' (L+R→Mid, L-R→Side) or 'decode' (Mid+Side→L/R). Returns audio base64 or uploads to output_url.

  • midi_compose

    Compose MIDI bytes from a song spec. `spec` is the same JSON shape accepted by /v1/midi/compose: ``{tempo_bpm, time_signature, tracks: [{program, channel, notes: [{pitch, start_beats, duration_beats, velocity}]}]}``. Writes MIDI to `output_path` xor `output_url`; response carries `size` and either `path` or `url`.

  • midi_generate

    Compose AND render a song spec in one call — JSON in, audio out. Convenience wrapper around midi_compose + midi_render.

  • midi_humanize

    Add random timing jitter and velocity variation to MIDI notes. timing_ms: max ±offset per note in ms. velocity_pct: max ±velocity change as % of 127. seed: optional RNG seed for reproducibility. Returns MIDI base64.

  • midi_inspect

    Parse a Standard MIDI File and return JSON describing tempo, time signature, key signature, and per-track stats. Counterpart to midi_compose.

  • midi_quantize

    Snap MIDI note timings to the nearest rhythmic grid. grid_beats: 0.25=16th note, 0.5=8th, 1.0=quarter. Writes MIDI to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • midi_render

    Render a MIDI file to audio via fluidsynth + SoundFont. Provide exactly one of `file_path` (staged MIDI) or `file_url` (remote MIDI — subject to fetch policy). `soundfont_path` optionally overrides the server's default SoundFont with a staged ``.sf2``. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • midi_transform

    Transform a MIDI file: transpose / quantize / change tempo / filter channels. Writes MIDI to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • mix

    Mix multiple audio tracks with per-track gain. tracks: list of {file_path or file_url, gain_db (optional, default 0.0)}. Requires at least 2 tracks. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • multiband_compress

    Multiband compression. ``crossovers_hz`` is an ascending list of crossover frequencies in Hz (length N). ``bands`` is a list of N+1 compressor specs, each with ``threshold_db``, ``ratio``, and optional ``attack_ms``, ``release_ms``, ``makeup_db``. Splits signal into N+1 bands with zero-phase LR4-equivalent filters, compresses each independently, sums the result.

  • noise_reduce

    Noise reduction — DSP or ML depending on engine. engine=noise-reduce (default): DSP via noisereduce, no GPU. stationary=True targets constant noise (hum/hiss); False = adaptive. prop_decrease [0,1] scales reduction strength. engine=uvr-denoise: ML via UVR MelBand Roformer (SDR 28), higher quality. stationary and prop_decrease are ignored for ML engine.

  • normalize

    Normalize audio to a target LUFS level via pyloudnorm. Provide exactly one of `file_path` or `file_url`. Writes audio to `output_path` xor `output_url`; response carries ``measured_lufs`` and ``target_lufs`` plus `{path,size,...}` or `{url,size,...}`.

  • onsets

    Onset (transient) detection. Returns time + relative strength for each detected attack.

  • pan

    Pan audio in the stereo field. position: -1.0=hard left, 0.0=center, 1.0=hard right. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • pitch_correct

    Pitch-correct audio toward the nearest chromatic semitone. Uses pyin F0 detection. strength=1.0 is full correction, 0.0 is bypass. Returns corrected audio as base64 or uploads to output_url.

  • put_file

    Upload a file (base64-encoded) to the staging area.

  • repair_audio

    Repair audio artifacts: interpolate clipped samples and/or remove mains hum. declip: fix digital clipping (interpolates ±0.999 saturation). dehum: notch-filter 50 or 60 Hz hum + harmonics. hum_freq: 50 (EU) or 60 (US) Hz.

  • restore

    Remove reverb, echo, or noise from audio using UVR models. engine=uvr-dereverb (default): BS-Roformer reverb removal. engine=uvr-deecho: VR Architecture echo removal. Set aggressive=True for harder echo removal. engine=uvr-denoise: MelBand Roformer noise removal (SDR 28). For DSP-based noise reduction use noise_reduce with engine=noise-reduce. Writes audio to `output_path` xor `output_url`; response is `{path,size,engine,output_format}` or `{url,size,engine,output_format}`.

  • reverse

    Reverse audio playback direction. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • run_pipeline_tool

    Run an ad-hoc op pipeline: ``steps=[{op, params}, ...]``. Each step's output feeds the next. See ``list_ops`` for available op slugs.

  • run_preset

    Run a curated preset pipeline against an input file. Writes audio to `output_path` xor `output_url`; response `{path,size,steps}` or `{url,size,steps}`.

  • segments

    Music structure segmentation via recurrence-matrix clustering. Returns N labelled ranges; structurally similar regions share a label so verse/chorus repetition is easy to spot.

  • separate

    Demucs stem separation. Provide exactly one of `file_path` or `file_url`. Three output modes (mutually exclusive — pass at most one): - default: per-stem audio paths under `stems` (one path per stem). - `output_paths={stem_name: path}`: stage each stem in FILES_DIR; response has `staged_stems` mapping stem -> {path, size}. - `output_urls={stem_name: presigned_put_url}`: PUT each stem to its URL; response has `uploaded_stems` mapping stem -> {url, size}. Both per-stem maps must cover every returned stem (no partials).

  • sidechain_duck

    Duck primary audio when trigger audio is loud. Provide primary via file_path/file_url, trigger via trigger_file_path/trigger_file_url. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • silence

    Find silent ranges + optionally auto-trim. ``trim_mode='edges'`` removes leading/trailing silence; ``'all'`` removes every detected silence. When `trim_mode` is set, writes trimmed audio to `output_path` xor `output_url`.

  • similar

    Cosine similarity between two audio files via CLAP embeddings. Returns {similarity: float [-1,1], dim: 512}. Requires clap-embed model cache.

  • slice_at_beats

    Slice audio at beat positions detected by librosa-analyze. Returns a base64-encoded ZIP of numbered beat slice WAV/MP3 files.

  • speed

    Change playback speed without pitch shift via ffmpeg atempo. speed=0.5 halves speed; speed=2.0 doubles. Range: 0.1–10.0. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • split

    Split audio into segments. mode=equal: requires count>=2, splits into equal time parts. mode=silence: splits on quiet gaps (uses threshold_db/min_duration_sec). DEPRECATED in v1.0.0 — raises ValueError; use REST `POST /v1/audio/split` with `output_path`.

  • stereo_field

    Analyse the stereo field: L/R correlation, width, balance, mono compatibility. Returns correlation (-1..1), width (0=mono, 1=normal), balance_db, phase_issues flag.

  • stereo_width

    Adjust stereo image width via M/S processing. width=0.0 → mono, 1.0 → original, >1.0 → wider. Range: [0.0, 3.0]. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • stretch

    Time-stretch and/or pitch-shift audio. tempo_factor=0.5 halves speed; pitch_semitones=12 shifts one octave up. Writes audio to `output_path` xor `output_url`.

  • tag

    Audio tagging via Audio Spectrogram Transformer — returns top-K AudioSet class labels with confidence scores. Requires HF model cache.

  • transform

    pysox DSP transform chain. Provide exactly one of `file_path` or `file_url`. `operations` is a list of {op, params} — valid ops: gain, equalizer, compand, reverb, pitch, tempo, rate, channels, trim, pad. Writes audio to `output_path` xor `output_url`.

  • transient_shaper

    Shape transients via dual-compressor attack/sustain blending. attack_gain_db > 0 makes drums punchier; sustain_gain_db < 0 cuts room tail. Returns processed audio base64 or uploads to output_url.

  • trim

    Cut audio to [start_sec, end_sec). end_sec required and must be > start_sec. Writes audio to `output_path` xor `output_url`; response `{path,size,...}` or `{url,size,...}`.

  • vad

    Voice activity detection via silero-vad. Returns speech/non-speech segments with timestamps and overall speech ratio.

  • visualize

    Render audio visualization. ``engine`` selects the visualization engine (default: ``ffmpeg-render``). ``mode`` controls the output type: - ``spectrogram`` — static PNG via ffmpeg showspectrumpic (color + scale apply) - ``waveform`` — static PNG via ffmpeg showwavespic (color applies, no scale/fps/container) - ``spectrum`` / ``waves`` / ``cqt`` / ``freqs`` / ``volume`` / ``vectorscope`` / ``phasemeter`` / ``histogram`` — animated MP4/WebM video Output: PNG/MP4/WebM bytes are written to ``output_path`` xor ``output_url``; response is ``{path, size, ...}`` or ``{url, size, ...}``. Pass ``out…

Signals

Stars
5
Forks
3
Open issues
0
Last commit
Oct 19, 2026 (10 days ago)
Last release
Oct 10, 2026 (19 days ago)
Last package publish
Oct 17, 2026 (12 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.psyb0t/audiolla
Version
1.1.7
Auth
No auth
Packages
oci docker.io/psyb0t/audiolla:v1.1.7
License
WTFPL
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from psyb0t

Cite this page

Audiolla MCP server. Agent Mart. https://agentmart.dev/connectors/psyb0t-audiolla (last updated 2026-10-24)