Music Search

approved

by gfontenot

This plugin has not been manually reviewed by Obsidian staff. Search for music releases and generate notes for them that include release metadata and links to MusicBrainz, Discogs, and Wikipedia.

53 downloadsUpdated 1mo agoAGPL-3.0

Music Search

An Obsidian plugin that searches the MusicBrainz database and creates structured notes for music releases.

Features

  • Search for albums, EPs, singles, and other releases by artist, title, or both
  • Rich metadata: genres, tracklist, release date, cover art, MusicBrainz/Discogs/Wikipedia links
  • Optionally downloads cover art locally to your vault
  • Fully customisable note output via template variables, custom frontmatter fields, or a full template file

Usage

Open the command palette and run Search music release, or click the music note ribbon icon. Type an artist name, album title, or both, then select a result from the list. The plugin fetches full release details and creates a note in your configured folder.

Settings

SettingDescription
Note destination folderWhere new notes are saved. Leave empty for the vault root.
Note file name templateTemplate for the note filename. Supports all {{variables}}. Default: {{artist}} - {{title}}
TagsComma-separated tags added to every note's frontmatter.
Album art folderFolder to save downloaded cover images. When set, {{coverUrl}} and {{coverEmbed}} resolve to the local vault path instead of a remote URL. Leave empty to use remote URLs.
Open note after creationAutomatically open the newly created note.
Show cover art in search resultsDisplay album artwork in the release picker.

Note Template

Two modes are available, selectable via the Note Template tab in settings:

Custom Fields — Extends the built-in default template with additional frontmatter fields. Each field can use {{variables}} in its value. This is the right choice if you just want to add a few extra properties.

Template File — Points to a Markdown file in your vault that is used as the full note template. All {{variables}} are substituted. Use this for complete control over note structure.

Template Variables

VariableYAML typeDescription
{{title}}stringAlbum/release title
{{artist}}stringArtist name(s)
{{artistMbid}}stringArtist MusicBrainz ID
{{year}}stringFirst release year (e.g. "1997")
{{date}}stringFirst release date (e.g. 1997-05-21)
{{trackCount}}numberNumber of tracks
{{trackList}}stringFormatted tracklist — use in the note body, not frontmatter
{{genres}}string[]Genres as a YAML list
{{genresInline}}stringGenres as a comma-separated string
{{coverUrl}}stringCover art URL, or local vault path if art folder is configured
{{coverEmbed}}stringEmbedded cover art: ![[path]] for local files, ![](url) for remote — use in the note body, not frontmatter
{{mbid}}stringMusicBrainz release group ID
{{releaseGroupMbid}}stringMusicBrainz release group ID (alias for {{mbid}})
{{mbUrl}}stringMusicBrainz release group URL
{{discogsUrl}}stringDiscogs master release URL
{{wikipediaUrl}}stringWikipedia article URL
{{releaseType}}stringRelease type (Album, Single, EP, etc.)
{{disambiguation}}stringDisambiguation comment
{{tags}}string[]Custom tags from settings
{{DATE}}stringCurrent date in YYYY-MM-DD format
{{DATE:FORMAT}}stringCurrent date in a custom format, e.g. {{DATE:DD/MM/YYYY}}. Tokens: YYYY, MM, DD, HH, mm, ss

Default Template

When no template file is set and no custom fields are configured, the plugin generates a note like this:

---
tags: []
artist: Radiohead
title: OK Computer
genres:
  - alternative rock
  - art rock
album-art: "https://coverartarchive.org/..."
album-type: Album
track-count: 12
release-date: 1997-05-21
release-year: "1997"
disambiguation:
mbid: a7ccb528-da8a-11e8-b9e4-005056ad73f4
artist-mbid: a74b1b7f-71a5-4011-9441-d0b5e4122711
link-musicbrainz: "https://musicbrainz.org/release-group/..."
link-discogs: "https://www.discogs.com/master/..."
link-wikipedia: "https://en.wikipedia.org/wiki/OK_Computer"
---
![[Radiohead - OK Computer.jpg]]
## Tracklist

1. Airbag (4:44)
2. Paranoid Android (6:23)
...

Data Sources

Development

npm install
npm test
npm run build

Tests use Jest with ts-jest.

License

AGPL-3.0. See LICENSE.

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.