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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@counterpoint-studio/audio-file-mcp-app

v1.0.1

Published

An MCP app for inspecting audio files in audio workflows. Playback, metadata, statistics

Readme

Audio File MCP App

An MCP App for playing and inspecting local audio files in an MCP host.

Audio File MCP App running in Claude Desktop

Renders an in-conversation UI with playback, metadata, loudness, and a spectrogram.

File metadata, loudness statistics, the current playhead position, and any selected region are also exposed back to the model, so follow-up tasks can refer to what the user is actually hearing and looking at.

Features

  • Global loudness metrics computed to EBU R128: Integrated Loudness (LUFS), Loudness Range (LRA), True Peak (dBTP), Sample Peak, and RMS.
  • Instantaneous loudness metrics while playing or hovering: Momentary (400 ms) and Short-Term (3 s) LUFS, plus sample-peak and RMS at the cursor position.
  • Waveform colouring by spectral centroid — each waveform slice is shaded along a tonal ramp using a low/mid/high band-energy ratio, so bright/dark regions read at a glance as bright/dark sound.
  • Reassigned spectrogram with log-frequency bins (20 Hz floor) and an Inferno colour scale; time-frequency reassignment sharpens transients and tonal partials beyond what a plain STFT shows.
  • Looping region selection. Drag on the timeline to mark a region; playback loops over it, and the region's start/end are passed back to the model alongside the file's loudness and playhead state.

Install

The server runs locally over stdio. Every install path below configures the same command: npx -y @counterpoint-studio/audio-file-mcp-app.

Claude Desktop

Easiest: grab the latest .mcpb from the Releases page and double-click it. Claude Desktop has Node bundled, so no extra runtime is needed.

Or add the server by hand to claude_desktop_config.json:

{
  "mcpServers": {
    "audio-file": {
      "command": "npx",
      "args": ["-y", "@counterpoint-studio/audio-file-mcp-app"]
    }
  }
}

VS Code (Copilot, Agent mode)

Install in VS Code

Or add to .vscode/mcp.json (workspace) or your user mcp.json:

{
  "servers": {
    "audio-file": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@counterpoint-studio/audio-file-mcp-app"]
    }
  }
}

Goose

Paste this deep link into your browser (Goose Desktop must be installed; the custom URI scheme can't be a real link in a GitHub README):

goose://extension?id=audio-file&name=Audio%20File%20MCP%20App&cmd=npx&arg=-y&arg=%40counterpoint-studio%2Faudio-file-mcp-app

Or run goose configureAdd ExtensionCommand-line Extension and enter npx -y @counterpoint-studio/audio-file-mcp-app.

MCP Inspector

npx @modelcontextprotocol/inspector npx -y @counterpoint-studio/audio-file-mcp-app

Usage

Ask the host to show you a local audio file by its absolute path. For example:

"Show me /Users/me/Music/track.wav"

The host calls the display_audio_file tool, which renders the in-app UI with waveform, spectrogram, loudness metrics, and playback transport.

Client compatibility

Tested and known to work in:

  • Claude Desktop — Chat and Cowork
  • Visual Studio Code
  • Goose
  • MCP Inspector

The Codex app has been tested too, but its MCP App support is currently broken.

Development

pnpm install
pnpm run build:dsp   # emsdk required; see WASM-BUILD.md
pnpm run serve       # runs the server with tsx, no compile step
pnpm test

pnpm run build:dist produces the publishable layout under dist/ (dist/mcp-app.html + dist/server/).

Releasing

pnpm version <bump>                                 # bumps package.json + tags
pnpm publish --access public                        # publishes to npm
pnpm run build:mcpb                                 # produces dist/audio-file-mcp-app-<version>.mcpb
gh release create v<version> dist/*.mcpb           # attaches the bundle to a GitHub release
mcp-publisher login github && mcp-publisher publish # updates the MCP Registry listing

mcp-publisher is a Go binary; install it via brew install mcp-publisher or per the registry quickstart. It reads server.json from the repo root — keep its version in sync with package.json before publishing.

License

ISC © Counterpoint Studio OÜ