Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Cochlea

MCPB · COCHLEA-MCP.MCPB

Render, analyze, and verify audio (WAV/FLAC/mp3/ogg) offline and deterministically via MCP tools.

Available components

+3 this week 49 Trust /100

Last scanned (7 hours ago)

Scores higher than 83% of MCPB servers

Category Design and Media

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security0
  • No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.Unverified
  • Known CVEs could not be checked: we found no dependency list to check in this bundle: either it runs a compiled binary, whose bundled manifests we do not read, or none of the package.json, requirements.txt, pyproject.toml or uv.lock files it ships for its runtime declares a dependency we can read (a requirements.txt that only points at a setup.py project, a local path, or a nested requirements file we cannot follow counts as none).Unverified
  • Install-script risk not yet assessed.Unverified
  • Dependency health could not be checked: we found no dependency list to check in this bundle: either it runs a compiled binary, whose bundled manifests we do not read, or none of the package.json, requirements.txt, pyproject.toml or uv.lock files it ships for its runtime declares a dependency we can read (a requirements.txt that only points at a setup.py project, a local path, or a nested requirements file we cannot follow counts as none).Unverified
Provenance & Transparency45
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT OR Apache-2.0).Pass
  • Actively maintained (last published 73 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability72
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2458 tokens (~204/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management77
  • Stability observed for 23 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
  • Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 23 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.

  • 21 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

  • 19 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.

  • 17 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.

  • 15 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

  • 14 Oct 26 +6
    • Stability: unverified → 0.43 ▲ functional
  • 7 Oct 26 +1
    • Maintenance: unverified → pass ▲ functional
  • 4 Oct 26 −1
    • Maintenance: pass → unverified ▼ functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 24 Oct 2026 · Analysed mcpb/https://github.com/richer-richard/cochlea/releases/download/cochlea-mcp-v0.7.0/cochlea-mcp.mcpb@0.7.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem mcpb
Reason No attestation published

Background: How many MCP packages publish verified provenance →

MCP tools · 12 exposed · ~2,458 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
audio_diff ~308

Compare two audio files (WAV, FLAC, mp3, or ogg) in feature space (loudness, onsets, pitch, key, timbre distance, per-segment RMS) rather than byte-for-byte, and report a verdict: byte-identical, tier-2 equivalent (within this workspace's cross-platform tolerances), or different (naming which dimensions diverge). Set spectrogram=true to also get a signed A→B difference heat map inline (red = louder in B, blue = quieter, black = unchanged) — 'what changed' as visible structure. Use this to check whether a re-render, edit, or platform change actually altered the audio in a way that matters — a `different` verdict is a normal, successful answer, not a tool failure.

NameTypeReqDescription
audio_path_astringyesPath to the first audio file (WAV, FLAC, mp3, or ogg).
audio_path_bstringyesPath to the second audio file (WAV, FLAC, mp3, or ogg).
jsonboolean–Also append the full CompareReport as pretty JSON after the text summary. Default false.
spectrogramboolean–Also return the signed A→B difference spectrogram as inline image content (requires both files to share a sample rate). Default false.
window_msnumber–Segment window length, milliseconds, for the per-segment comparison. Default 1000.

No output schema declared.

No examples provided.

beat_grid ~148

The full beat grid of a whole WAV, FLAC, mp3, or ogg file, as JSON: every detected beat time (ms), the estimated downbeats, the tempo with its octave-alternative candidates, and a windowed stability score. This is the detail the compact `tempo` summary inside probe_audio drops — that one keeps only the count and mean interval to stay small. Use it to line events up to the beat, see where the downbeats fall, or weigh a half/double-tempo alternative. All times are measured from the start of the file.

NameTypeReqDescription
audio_pathstringyesPath to a WAV, FLAC, mp3, or ogg file.

No output schema declared.

No examples provided.

export_midi ~133

Convert a cochlea RON score into a Standard MIDI File (format 1) — the inverse of import_midi. Timing exports exactly (score ticks become SMF ticks, the tempo map and time signature carry over); instruments become rough General MIDI program labels, since a synth preset isn't a GM instrument. Use this to hand a composed score to a DAW or notation tool, or to round-trip through external MIDI editing.

NameTypeReqDescription
out_pathstringyesWhere to write the Standard MIDI File (.mid).
score_pathstringyesPath to a RON score file (data form version 1).

No output schema declared.

No examples provided.

import_midi ~174

Convert a Standard MIDI File (format 0 or 1) into a cochlea RON score. Timing imports exactly (SMF ticks become score ticks, tempo events become the tempo map); General MIDI programs map to rough preset families and channel-10 percussion to kick/snare/hat tracks — every mapping guess comes back in the response so you can re-voice the score afterwards. Use this to bring existing musical material into the compose→render→probe loop.

NameTypeReqDescription
midi_pathstringyesPath to a .mid/.midi file (SMF format 0 or 1, metrical division).
out_pathstringyesWhere to write the imported RON score.
sample_rateinteger–Sample rate for the imported score (MIDI files carry none). Default 48000.

No output schema declared.

No examples provided.

lint_score ~68

Statically validate a RON score against the instrument/preset catalog — catches unknown instruments or inserts, empty tracks, and other semantic problems without rendering any audio. Use this before render_score to fail fast on authoring mistakes.

NameTypeReqDescription
score_pathstringyesPath to a RON score file.

No output schema declared.

No examples provided.

loudness_timeline ~204

The loudness-over-time curve of a whole WAV, FLAC, mp3, or ogg file, as JSON: momentary (400 ms) and short-term (3 s) LUFS sampled every ~100 ms. This is the dynamics view the single integrated-LUFS / LRA summary in probe_audio can't give — where a mix gets loud, where a gate opens, how the level moves through a build or a chorus. Use it to check whether a change actually moved the dynamics, or to find the loudest moment. Every point's time is measured from the start of the file. (For a windowed analysis with an anchored offset, use probe_audio with from_s/to_s.)

NameTypeReqDescription
audio_pathstringyesPath to a WAV, FLAC, mp3, or ogg file.
hop_msnumber–Spacing between timeline points, milliseconds. Default 100 (the EBU R128 momentary update rate).

No output schema declared.

No examples provided.

probe_audio ~261

Extract the full feature report (integrated LUFS/true peak/LRA, onsets, YIN pitch track plus quantized melody notes, MFCC timbre digest, chroma/key, a chord timeline and per-section key (harmony), tempo with octave-alternative candidates and stability, rhythm with grid alignment and a straight-vs-triplet grid call, stereo image, structural sections, silence, clipping — schema v5) from any WAV, FLAC, mp3, or ogg file, no score needed. Use this to 'listen' to audio through numbers: check loudness targets, confirm onset timing or tempo, read back the melody you composed, or see the chord progression. Pass from_s/to_s to zoom into a time window instead of probing the whole file (report times are then relative to the cut; source.start_ms anchors them).

NameTypeReqDescription
audio_pathstringyesPath to a WAV (8/16/24/32-bit PCM or 32-bit float), FLAC, mp3, or ogg file.
from_snumber–Optional: analyze only from this time (seconds into the file).
to_snumber–Optional: analyze only up to this time (seconds into the file).

No output schema declared.

No examples provided.

probe_digest ~133

The token-cheap way to listen to a WAV or FLAC file: a ~40-line deterministic text digest (duration, loudness, onsets, pitch, key, and a windowed timeline table) instead of a full JSON report or raw PCM. Reach for this first when you just need a sense of what's in a file, and only fall back to probe_audio when you need exact numbers to assert against.

NameTypeReqDescription
audio_pathstringyesPath to a WAV or FLAC file.
window_msnumber–Segment window length, milliseconds, for the digest's timeline rows. Default 1000.

No output schema declared.

No examples provided.

render_score ~218

Render a cochlea RON score (the declarative tick/track/note/automation IR) to a deterministic WAV mix. Use this to turn a composed score into audible PCM before probing or inspecting it. Set verify=true to also run the score's embedded `verify:` assertions and get the pass/fail report back in the same call.

NameTypeReqDescription
bitsstring–PCM encoding for the WAV: 'float' (32-bit, lossless, the render's ground truth — default), '24', or '16' (integer, for a small ordinary file).
out_pathstringyesWhere to write the rendered mix (stereo WAV).
score_pathstringyesPath to a RON score file (data form version 1).
stems_dirstring–Optional directory to also write one WAV per track (created if missing).
verifyboolean–Run the score's embedded verify: assertions after rendering and include the report; the tool call reports isError:true if verification fails. Default false.

No output schema declared.

No examples provided.

score_reference ~78

The score-authoring reference: the complete RON score grammar (tracks, notes, durations, automation, easing), the live instrument-preset catalog with every automatable parameter and range, all embeddable verify: assertions, and a worked example. Call this FIRST when composing — everything render_score accepts is documented here; do not guess the format.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

spectrogram ~351

Render a mel spectrogram (or a tiled contact sheet covering the whole file) from a WAV, FLAC, mp3, or ogg file, for visual inspection of harmonic content, sweeps, or silence. The image comes back inline as MCP image content (base64 PNG) whenever it fits the size cap, so you can look at it directly without filesystem access; pass out_path to also (or instead) write the PNG to disk. Set annotate=true to draw what the analyzers heard onto the image — detected beats (orange ticks, top), onsets (cyan ticks, bottom), pitch segments (magenta lines) — and from_s/to_s to zoom into a time window. Use this when a numeric probe report isn't enough and you want to look at the audio.

NameTypeReqDescription
annotateboolean–Draw analysis overlays (beat grid, onsets, pitch) on the image. Default false.
audio_pathstringyesPath to the input WAV, FLAC, mp3, or ogg.
bars_per_tileinteger–Time sections per tile when sheet is true. Default 8.
from_snumber–Optional: render only from this time (seconds into the file).
out_pathstring–Optional: also write the PNG here. Required in practice only when the image exceeds the inline size cap (the call says so if that happens).
sheetboolean–Tile the piece into a contact sheet instead of one long strip — useful for reviewing a whole piece in one vision call. Default false. Incompatible with annotate.
to_snumber–Optional: render only up to this time (seconds into the file).

No output schema declared.

No examples provided.

transcribe_audio ~382

Transcribe a WAV, FLAC, mp3, or ogg file into an editable cochlea RON score — the inverse of render_score, and the arrow that closes the compose loop: hear a sketch, get score back, revise it, render it again. Pitch-tracks the melody, reads its timing against a tempo (detected from the audio unless you pass bpm), quantizes to a note grid, and estimates each note's velocity from its peak level. Deliberately monophonic: it hears one line, so chords, drums, and dense mixes come back as whichever line the tracker locked onto. Every assumption — the tempo, the grid, the preset, clamped or dropped notes — comes back in the response, so treat the result as a draft to re-voice rather than a faithful score.

NameTypeReqDescription
audio_pathstringyesPath to a WAV, FLAC, mp3, or ogg file.
bpmnumber–Tempo to notate against, 1..=4000. Detected from the audio when omitted; a wrong tempo renotates the same sound with odd note values.
gridstring–Quantization grid as a note duration ("1/16", "1/8", "1/4", "1/8t" for triplets, "1/8." for dotted), or "none" to keep the analyzer's raw timing. Default "1/16".
out_pathstringyesWhere to write the transcribed RON score.
ppqinteger–Tick resolution of the written score. Default 960.
presetstring–Instrument preset for the transcribed track. Default "sine"; call score_reference for the catalog.
track_namestring–Track name in the written score. Default "lead".

No output schema declared.

No examples provided.

Install

How do I install the Cochlea MCP server?

Cochlea ships as an MCPB bundle, a single file you download and open in an MCP host that supports MCPB bundles, such as Claude Desktop. The host reads the launch command from the bundle's own manifest, so there is no command to copy. The MCP registry declares no SHA-256 for this bundle, so there is no published digest to check the download against.

mcpb · cochlea-mcp.mcpb

Download bundle

The MCP registry declares no SHA-256 for this bundle, so there is no published digest to check it against. Open it with an MCPB-capable host such as Claude Desktop.

Common questions

What is the Cochlea MCP server?

Cochlea is an MCP server listed in the public MCP registry as io.github.richer-richard/cochlea-mcp. Render, analyze, and verify audio (WAV/FLAC/mp3/ogg) offline and deterministically via MCP tools. This page covers its MCPB bundle (https://github.com/richer-richard/cochlea/releases/download/cochlea-mcp-v0.7.0/cochlea-mcp.mcpb).

Is the Cochlea MCP server safe to use?

Cochlea scores 49 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Cochlea MCP server expose?

Cochlea exposes 12 tools: render_score, probe_audio, spectrogram, lint_score, probe_digest, and 7 more. Their descriptions and schemas cost roughly 2,458 tokens of context every time the server is loaded.

What licence is the Cochlea MCP server under?

Cochlea declares the MIT OR Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.