Audiolab

tools.audiolab由 audiolab.tools 發布v0.5.0更新於 Oct 30, 2026

Loudness, true-peak and voice-quality analysis of URLs and local files via the hosted AudioLab API.

已驗證STDIO僅桌面資料與分析媒體與設計

概覽

AI 產生的概覽

本機 stdio MCP 伺服器,把音訊 URL 或本機檔案送到託管的 AudioLab API,進行響度、真峰值、頻譜與語音品質分析。

可以做什麼
  • 量測 URL 或本機檔案的響度、真峰值、LRA、立體聲與音色平衡
  • 依 Spotify、播客、廣播等交付目標判定是否達標,並列出各項落差與修正指令
  • 取得隨時間變化的響度與波形峰值、FFT 頻譜與七段能量
  • 進行語音品管、語音片段、訊號索引,以及 voice、master、provenance、room、pitch 等具名分析
  • 對兩個音源做 A/B 比較,並在一次呼叫中批次處理最多 20 個音源
適用情境
適合需要判斷母帶、混音或人聲錄音品質的情況:檢查檔案是否符合串流或廣播響度標準、判斷某段錄音是否可用,或對資料夾與整張發行做品管。
執行需求
需要 Node 18 以上版本,透過 npx 執行,不需 ffmpeg 或原生相依套件。可選用 AUDIOLAB_API_KEY 提高額度,也可設定 AUDIOLAB_API_BASE 與 AUDIOLAB_TIMEOUT_MS。需要能連線到 audiolab.tools 的網路。
安裝前請注意
音訊會上傳到 audiolab.tools:URL 由伺服器端抓取,本機檔案也會上傳到 API,因此不會留在本機。沒有金鑰時為試用模式,每個 IP 每月 20 次呼叫、不支援批次、單檔上限 4 MB。部分分析設定需要付費方案。本機路徑輸入僅在此 stdio 伺服器可用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Audiolab,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@audiolabtools/mcp-server

[Listed on mcpservers.org]

MCP (Model Context Protocol) server that gives any MCP-capable AI (Claude Desktop, Claude Code, Cursor, and others) ten 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 measure a public URL or a local file on your machine, but the measuring always happens on the hosted API: the file is read here and uploaded there (see Privacy).

Install

Point your MCP client at the package via npx (nothing to install globally). No account needed for a first score:

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

Without a key you are on the keyless trial: 20 calls a month and 3 a minute per IP address, for single analyses of a URL or a local file up to 4 MB. Batches and larger files need a key. A free key gives 1,000 calls and 2 GB a month, no card: sign in at https://audiolab.tools/account, generate one, and add it:

json
"env": { "AUDIOLAB_API_KEY": "al_live_yourkey" }

Requirements

  • Node ≥ 18: uses the built-in global fetch + AbortSignal.timeout.
  • Optionally an AUDIOLAB_API_KEY (see Install). 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 150 MB) upload over a signed URL, are analysed, and are swept from storage within the hour. (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
analyze_voiceVoice QA: speech/silence ratio, speaking rate, SNR, noise floor, pause energy, 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
analyze_profileOne named question, voice, master, provenance, dataset, environment, broadcast, loop, room (reverberation from a clap, a pop, an impulse response or a sweep; pass roomSource), chain (lost packets) or pitch (where a voice sits and how clean it is), answered with only the lenses it needs. These ten need a paid plan; the free tier gets the basic profile, keyed by stable lens id. Add series:true for the curves, per-block lanes and per-phrase values. Carries a note when the profile’s voice lenses land on non-speech material. Full catalogue: https://audiolab.tools/lenses
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
  • “Is this take usable?” → analyze_profile with profile:"voice"
  • “Has this file been re-encoded, and is it all one source?” → analyze_profile with profile:"provenance"
  • “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– (optional)Your API key. Without it: the keyless trial (20 calls a month per IP, no batches, files up to 4 MB).
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 read here and uploaded to the API (small files in the request body; larger files via a private one-shot signed upload into EU storage). The API returns numbers only and does not keep your audio: a direct request is decoded and discarded inside the request, and a signed upload is swept from storage within the hour (see https://audiolab.tools/privacy). This package has no telemetry and writes nothing to disk. There is no offline mode, and the engine is not published as an installable package. If audio must never leave the machine, don't use a hosted analyser; the in-browser labs on the website measure on-device, but they are for people, not for agents.

Limits

  • Local files: up to 150 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 (per IP address on the keyless trial).

Smoke test

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

License

MIT © Nathan Renting

來源:README.md,提交 70a5654

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:伺服器未能啟動。

版本歷史

8
  1. v0.5.0最新Oct 30, 2026
  2. v0.4.5Oct 20, 2026
  3. v0.4.4Oct 12, 2026
  4. v0.4.3Oct 12, 2026
  5. v0.4.2Oct 6, 2026
  6. v0.4.1Sep 26, 2026
  7. v0.4.0Sep 20, 2026
  8. v0.3.2Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分