MCP server for audio and image processing with species detection, quality assessment, and metadata management
ChirpPipe exhibits significant definition quality gaps across all dimensions. Tool names lack consistent action verbs (e.g., 'sonogram', 'rms_bars', 'bioacoustics_predictor' are nouns/adjectives rather than verb_noun patterns). Descriptions are present but minimal (10-50 chars), providing insufficient context for LLM tool selection. Input schemas are severely incomplete: most tools expose only a 'path' parameter with no optional parameters documented in the schema, despite the code supporting additional config (e.g., crop_audio accepts start_time/end_time/sample_rate but schema shows only 'path'). Output schemas are entirely undocumented. Error handling is absent, no recovery guidance, no categorization of errors, no validation messages. Security concerns: exif_tool accepts set_rating as a parameter (0-5 range validation exists in code but not in schema). No pagination, no batch operations, no idempotency guarantees documented.
Generate Audacity labels from BirdNET detections.
Run species detection on audio files using ONNX model.
Run BioClip inference on images using ONNX model.
Crop audio files to a specified time range.
Tool for running ExifTool on image files.
Get global occurrences for a species from GBIF database.
Run LAR-IQA non-reference image quality assessment.
Generate MIDI file with BirdNET detections as cue markers.
Tool names lack action verbs. 'sonogram', 'rms_bars', 'bioacoustics_predictor', 'lar_iqa' are nouns/adjectives. LLMs cannot infer intent from names alone. Should be 'generate_sonogram', 'compute_rms_bars', 'run_bioacoustics_predictor', 'assess_image_quality'.
Input schemas are incomplete. Most tools (crop_audio, normalize_audio, sonogram, rms_bars) expose only 'path' parameter in schema, but code supports additional config (start_time, end_time, sample_rate, hop_length, n_fft, output_format). Schema does not reflect actual tool capabilities.
Descriptions are too brief (10-50 chars). Baseline for A+ tools is 50-200 chars. Current descriptions lack context for WHEN to use each tool, what it returns, and prerequisites. E.g., 'Crop audio files to a specified time range' omits that start_time/end_time parameters are required.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 31 | 2026-07-28+ | v2 |
Normalize audio files to a specified dBFS level.
Compute RMS values per time bar from audio files.
Generate MEL sonogram image from audio files.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields. E.g., does sonogram return a file path, base64 image, or metadata? Does bioacoustics_predictor return species list, confidence scores, timestamps?
No error handling guidance. Tools that write files (crop_audio, normalize_audio, midi_markers, audacity_markers) provide no recovery hints if file I/O fails. No validation messages for invalid inputs (e.g., invalid confidence threshold, missing CSV file).