SongSage

SongSage

SongSage is a Model Context Protocol (MCP) server that connects BirdNET-Analyzer-Sierra with Claude Desktop, enabling natural language interaction with bioacoustic data for wildlife monitoring and conservation research.

Category
Visit Server

README

<p align="center"> <img src="assets/logo.svg" alt="SongSage Logo" width="280"> </p>

<h1 align="center">SongSage</h1>

<p align="center"> <strong>Conversational Bioacoustic Wildlife Monitoring with BirdNET and MCP</strong> </p>

SongSage is a Model Context Protocol (MCP) server that connects BirdNET-Analyzer-Sierra with Claude Desktop, enabling natural language interaction with bioacoustic data for wildlife monitoring and conservation research.

Python 3.10+ License: MIT MCP


Why SongSage?

Bioacoustic monitoring is a powerful tool for studying biodiversity, but BirdNET outputs are static CSV files requiring custom scripts to analyze. SongSage transforms these detections into an interactive, conversational analysis system.

Ecologists, conservation practitioners, and citizen scientists can now query, summarize, and visualize acoustic data using natural language—no coding required.

Inspired by multimodal wildlife monitoring research, including the SmartWilds framework at The Wilds Conservation Center.


Architecture

flowchart TB
    subgraph Users
        ECO[Ecologists]
        CIT[Citizen Scientists]
    end

    subgraph Interface
        CD[Claude Desktop]
        MCP[SongSage MCP Server]
    end

    subgraph Pipeline
        AF[Audio Files]
        BN[BirdNET-Analyzer-Sierra]
        DR[Detection Results]
    end

    subgraph Analytics
        QRY[Query Engine]
        VIZ[Visualization]
    end

    ECO --> CD
    CIT --> CD
    CD --> MCP
    AF --> BN
    BN --> DR
    DR --> MCP
    MCP --> QRY
    MCP --> VIZ
    QRY --> Users
    VIZ --> Users

Key Capabilities

Feature Description
Natural Language Queries Ask questions about your data in plain English
Species Detection Leverage BirdNET's species recognition
Temporal Analytics Analyze daily, seasonal, and long-term patterns
Interactive Filtering Filter by species, confidence, time, and location
Heatmap Generation Visualize activity patterns across time and species

Installation

See docs/installation.md for the complete setup guide, including platform-specific configuration for Mac/Linux and Windows.

Quick summary:

  1. Clone the repo and run setup.sh (Mac/Linux) or set up the venv manually (Windows)
  2. Add SongSage to your Claude Desktop config with full absolute paths
  3. Optionally create a .env file if BirdNET isn't auto-detected

Usage Examples

Daily Monitoring

"Summarize bird activity from today's recordings."

Rare Species

"Find species detected fewer than 3 times with confidence above 0.7."

Peak Activity

"When are birds most active during the day?"

Species Deep Dive

"Show me everything about Northern Cardinal detections."

Temporal Comparison

"Compare bird activity between June and July."

Visualization

"Generate a heatmap of activity by hour for the top 10 species."


Tools

Analysis

Tool Description
analyze_audio Run BirdNET on a single audio file
analyze_audio_batch Process multiple files with pattern matching
list_audio_files List available audio files

Queries

Tool Description
list_detected_species Species list with counts and confidence stats
get_detections Raw detection data with flexible filtering
get_daily_summary Aggregated daily statistics
get_species_details Detailed info for a specific species
find_rare_detections Identify potential rare visitors
get_peak_activity_times Analyze activity patterns

Visualization

Tool Description
generate_heatmap Activity heatmaps by time, species, or day
list_heatmap_types Available visualization types
list_colormaps Color scheme options

Utilities

Tool Description
reload_data Refresh cached data
export_csv Export filtered results
inspect_csv_structure Examine data structure

Guided Workflows (Prompts)

Pre-built multi-step analyses:

Prompt Description
daily_summary Comprehensive daily activity report
species_deep_dive Full analysis of a single species
analyze_rare_birds Find and verify rare detections
peak_activity_report Identify optimal recording times
compare_time_periods Compare activity across date ranges
quality_check Identify potential false positives
generate_activity_heatmap Create and interpret visualizations

Project Structure

SongSage/
├── assets/               # Logo 
├── docs/                 # Documentation
│   ├── documentation.md  # Full technical reference
│   └── installation.md   # Installation and configuration guide
├── heatmaps/             # Generated visualizations
├── test_data/            # Sample CSV files for setup verification (see installation guide)
├── mcp_server.py         # MCP server implementation
├── requirements.txt      # Python dependencies
├── __init__.py           # Python package init
├── .env.example          # Configuration template
└── setup.sh              # Linux/macOS installer

Research Context

SongSage builds on multimodal wildlife monitoring approaches. The SmartWilds project demonstrates how bioacoustic sensors complement camera traps and drone imagery for ecosystem monitoring—bioacoustics provide continuous temporal coverage and detect species that visual methods miss.

This tool lowers the barrier for researchers and citizen scientists to explore acoustic biodiversity data through conversation rather than code.


Acknowledgments

This work was supported by both the Imageomics Institute and the AI and Biodiversity Change (ABC) Global Center. The Imageomics Institute is funded by the US National Science Foundation's Harnessing the Data Revolution (HDR) program under Award #2118240 (Imageomics: A New Frontier of Biological Information Powered by Knowledge-Guided Machine Learning). The ABC Global Center is funded by the US National Science Foundation under Award No. 2330423 and Natural Sciences and Engineering Research Council of Canada under Award No. 585136. This project draws on research supported by the Social Sciences and Humanities Research Council. Some additional support was provided by the NSF AI Institute for Intelligent Cyberinfrastructure with Computational Learning in the Environment (ICICLE), funded under NSF Award OAC-2112606. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation, Natural Sciences and Engineering Research Council of Canada, or Social Sciences and Humanities Research Council.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured