New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

@audiolabtools/mcp-server

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@audiolabtools/mcp-server

MCP server for AudioLab — loudness (EBU R128 / BS.1770-4), true-peak, voice-quality, and signal analysis for AI agents (Claude, Cursor, any MCP client), via the AudioLab hosted API. No local audio engine required.

Source
npmnpm
Version
0.3.3
Version published
Weekly downloads
260
176.6%
Maintainers
1
Weekly downloads
 
Created
Source

@audiolabtools/mcp-server

MCP (Model Context Protocol) server that gives any MCP-capable AI — Claude Desktop, Claude Code, Cursor, and others — nine audio-analysis tools, backed by the hosted AudioLab API. It is a thin HTTP client: no local audio engine, no ffmpeg, nothing to compile. It can analyse a public URL or a local file on your machine.

Install

Point your MCP client at the package via npx (nothing to install globally):

{
  "mcpServers": {
    "audiolab": {
      "command": "npx",
      "args": ["-y", "@audiolabtools/mcp-server"],
      "env": { "AUDIOLAB_API_KEY": "al_live_yourkey" }
    }
  }
}

Get a key: sign in at https://audiolab.tools/account and generate one (free tier available).

Requirements

  • Node ≥ 18 — uses the built-in global fetch + AbortSignal.timeout.
  • An AUDIOLAB_API_KEY. No ffmpeg, no native dependencies.

Tools

Every tool takes one audio source — a public url or a local path:

  • { url: "https://…" } — a public https URL the API fetches server-side.
  • { path: "./mix.wav" } — a file on the machine running this server. Files up to 4 MB are sent inline; larger files (up to 50 MB) upload over a one-shot signed URL, are analysed, and are then deleted. (Local path works only in this stdio server, not the remote /mcp endpoint.)
ToolReturns
analyze_loudnessIntegrated LUFS (EBU R128 / BS.1770-4), true-peak (dBTP), LRA, crest factor, stereo correlation, mono compatibility, tonal balance
check_targetPass/fail vs a delivery target (spotify / apple-music / youtube / tidal / amazon-music / podcast / ebu-broadcast / atsc-broadcast, or target:"custom" + lufs+tp), with per-metric deltas and an ffmpeg loudnorm fix command
analyze_timeseriesShort-term LUFS over time + downsampled waveform peaks (waveformPoints?)
get_spectrumFFT magnitude data + 7-band energies + dominant band
analyze_voiceVoice QA: speech/silence ratio, speaking rate, SNR, noise floor, room echo, sibilance & clipping risk
get_speech_segmentsVoiced regions with start/end + per-segment RMS (auto-trim, chapters)
index_signalContent-type guess, tags, clipping/silence regions, brightness & dynamics buckets
compare_loudnessA/B on two sources (urlA/pathA + urlB/pathB), returns both results
analyze_batchOne route over up to 20 sources in a single call (urls and/or paths), per-item ok/data/error. For folder QA, library indexing, or checking a whole release against a target. Each item meters as one call

Example asks to your AI:

  • “Analyze the loudness of https://example.com/track.wav” → analyze_loudness with url
  • “Run loudness on ./master.wav” → analyze_loudness with path
  • “Does ./mix.mp3 pass Spotify?” → check_target with path + target:"spotify"

Configuration (env)

VarDefaultPurpose
AUDIOLAB_API_KEY— (required)Your API key.
AUDIOLAB_API_BASEhttps://audiolab.tools/v1Override the API base (must be https://).
AUDIOLAB_TIMEOUT_MS330000Per-request timeout in milliseconds (long files and batches stream server-side and can legitimately take minutes).

Privacy

Analysis happens on the AudioLab API, so the audio does reach audiolab.tools — a url is fetched server-side, and a local path is sent to the API (small files inline; larger files via a private one-shot signed upload that is deleted right after analysis). The API returns numbers only and does not retain your audio (see https://audiolab.tools/privacy). This package has no telemetry and writes nothing to disk. If audio must never leave the machine, don't use a hosted analyser.

Limits

  • Local files: up to 50 MB (host bigger ones at a public URL).
  • Duration: loudness routes (analyze_loudness, check_target, analyze_timeseries, get_spectrum) handle long files (podcast episodes, full sets — up to ~3 h) via server-side streaming; voice/signal routes are limited to ~7 minutes.
  • One file per call (agents loop for many); one-shot (no streaming/realtime).
  • Rate and monthly limits are enforced by the API, per key.

Smoke test

node hosted-server.mjs --selftest   # verifies the 9 tools + guards; no network

License

MIT © Nathan Renting

Keywords

mcp

FAQs

Package last updated on 17 Aug 2026

Related posts