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

acoustic-room-mode-radar

v1.0.0

Published

Model Context Protocol (MCP) server for room acoustics engineering: Room modes (Axial, Tangential, Oblique), Bonello & Bolt criteria compliance, Schroeder cutoff frequency, Sabine & Norris-Eyring RT60 reverberation decay, and speaker/sweet-spot placement.

Readme

acoustic-room-mode-radar

npm version License: MIT

Acoustic Room Mode Radar (acoustic-room-mode-radar) is a deterministic Model Context Protocol (MCP) server engineered for room acoustics, home studio design, podcast vocal booths, and audio monitoring environments. It provides zero-hallucination mathematical engines for standing wave room modes (Axial, Tangential, Oblique), Bonello and Bolt dimensional criteria compliance, Schroeder crossover cutoff frequency, Sabine & Norris-Eyring RT60 reverberation decay, and optimal speaker/sweet-spot placement.


Capabilities & Tools Included

1. calculate_room_modes

Calculates discrete acoustic standing wave room modes up to a cutoff frequency for rectangular enclosures.

  • Rayleigh Wave Model: Computes exact frequencies ($f_{p,q,r} = \frac{c}{2}\sqrt{(p/L)^2 + (q/W)^2 + (r/H)^2}$) for all Axial (0 dB), Tangential (-3 dB), and Oblique (-6 dB) modes.
  • Resonance Clustering Detection: Identifies severe degeneracies and modal stacking closer than 1.5 Hz apart.
  • Bass Isolation Holes: Detects wide gaps (> 18 Hz) below 120 Hz causing hollow bass response.
  • Bonello 1/3-Octave Criterion (1981): Audits monotonic mode count growth per third-octave band to spot acoustic dips and colorations.
  • Bolt Area Compliance: Checks room dimensional ratios ($W/H$ and $L/H$) against Richard Bolt's envelope of favorable acoustic proportions.

2. calculate_schroeder_frequency

Computes the Schroeder cutoff frequency ($f_s \approx 2000 \sqrt{RT_{60}/V}$), establishing the four operational acoustic regimes:

  • Zone A (Pressurization): $0 \text{ Hz} \to f_{min}$ (Room acts as sealed pressure chamber).
  • Zone B (Discrete Modes): $f_{min} \to f_s$ (Standing waves and bass resonance dominate).
  • Zone C (Diffusion Transition): $f_s \to 4f_s$ (Diffusers and broadband absorption take effect).
  • Zone D (Specular Ray Acoustics): $> 4f_s$ (Ray acoustics, early reflections, mirror trick).

3. calculate_rt60_reverb_time

Calculates reverberation decay time (RT60) across 6 standard octave bands (125 Hz to 4000 Hz) using both Sabine and Norris-Eyring formulations.

  • Substrate Database: Built-in absorption coefficients for drywall, concrete, glass, hardwood, ceramic tile, commercial carpet, heavy pile, acoustic foam (50mm), rigid fiberglass (100mm), and heavy velour curtains.
  • Target Usage Presets: Compares current decay against professional targets (podcast_voiceover [0.22 - 0.32s], music_mixing_control [0.28 - 0.38s], home_theater [0.35 - 0.48s], audiophile_listening [0.45 - 0.60s]).
  • Treatment Prescription: Calculates exact square meters of high-density acoustic treatment panels required to achieve the target decay.

4. calculate_speaker_listening_position

Calculates optimal listening sweet spot and stereo monitor coordinates.

  • 38% Room Rule (Westhler Model): Pinpoints listening position at 38.2% (or fallback 44%) room length to balance first-mode nulls and second-mode peaks.
  • Equilateral Triangle Geometry: Coordinates monitor spacing and toe-in aiming angles (30° inward).
  • Speaker Boundary Interference Response (SBIR): Calculates first quarter-wavelength cancellation notches from rear and side walls, providing actionable placement adjustments.

Quick Start

Running directly via npx

npx -y acoustic-room-mode-radar

Claude Desktop Integration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "acoustic-room-mode-radar": {
      "command": "npx",
      "args": ["-y", "acoustic-room-mode-radar"]
    }
  }
}

Cursor Integration

In Cursor Settings > Features > MCP Servers:

  • Type: command
  • Command: npx -y acoustic-room-mode-radar

Specification Authority & Verification

All calculations strictly adhere to:

  • ISO 3382-1: Measurement of room acoustic parameters.
  • Lord Rayleigh Theory of Sound: Rectangular acoustic cavity modal eigenvalues.
  • Wallace Clement Sabine & Norris-Eyring: Diffuse field reverberation decay equations.
  • Richard Bolt & Oscar Bonello Criteria: Statistical distribution of normal modes in small rooms.

License

MIT © datutu [email protected]