プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Songbrain

作者:songbrain-aiバージョン 1.0.4i★ –iクラウドで動く
レジストリ名io.github.songbrain-ai/songbrain

インストール

概要

作者による説明(英語の原文)

Best moments + video-gen prompts per scene, beats, tempo, key. Spotify Audio Features alternative.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: クラウドで動く
  • トランスポート: Streamable HTTP
  • カテゴリ: デザイン・画像・音声
  • 入力が必要なもの:X-API-Key

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。

ターミナルでこれを実行します

claude mcp add --transport http songbrain https://api.songbrain.ai/v1/mcp --header 'X-API-Key: your-value'

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "songbrain": {
      "url": "https://api.songbrain.ai/v1/mcp",
      "headers": {
        "X-API-Key": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "songbrain": {
      "type": "http",
      "url": "https://api.songbrain.ai/v1/mcp",
      "headers": {
        "X-API-Key": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • X-API-Key 秘密 HTTP header
    Optional Songbrain API key (sb_live_...) to analyse your own songs. Without it, the example tools work. Get one at https://app.songbrain.ai/developers

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

ツールの名前と説明は、サーバーが2026年11月7日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。

  • list_example_songs

    List real Songbrain analyses of Songbrain's own songs (no API key needed). Use one to show what the API returns before analysing a user's song.

  • get_example_analysis

    Full analysis of an example song: Song DNA, beat grid and sections, best moments, lyrics, scores, story and shot plan. No API key needed. Summary view by default (no per-word timings or beat arrays); set view='full' for everything.

  • get_example_shot_plan

    The beat-synced shot plan of an example song: every scene with start and end seconds, its act (setup, turn or payoff), the image/video prompt, framing, motion and the lyric sung under it, plus the story, world and palette. No key needed.

  • get_pricing

    Songbrain API prices (free songs per month, price per song) and limits.

  • analyze_song

    Start the analysis of a song at a public audio URL (MP3, WAV, FLAC, M4A, AAC, OGG or AIFF; 30 s to 10 min). Needs an API key on the MCP connection. Returns a song_id; poll get_song until status is 'done' (typically 60–90 seconds, up to ~2 minutes when busy). Uses one free song, o

  • get_song

    Status of a song started with analyze_song, then its full analysis once done. Summary view by default; view='full' adds word timings and beat arrays.

  • add_video_direction

    For a finished song analysed with mode 'dna': builds its story and beat-synced shot plan (scenes with seconds and image/video prompts) from the existing analysis. 15 credits, refunded if it fails. Then poll get_song (about 30 seconds).

  • get_account

    Free songs left this month, credit balance and price per song for the connected key.

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月9日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント songbrain-ai で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • ✓ 合格

    エンドポイントが応答する

    434ミリ秒で応答(HTTP 200)

  • – 対象外

    OAuthでサインイン

    サインイン不要

  • ✓ 合格

    ツールの説明に隠れた指示がない

    8件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした

デザイン・画像・音声のほかのサーバーとの比較i

  • このカテゴリのほかの2804件のうち0%よりスターが多い
  • このカテゴリのほかの2804件のうち62%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの2804件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Songbrainは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:X-API-Key

パソコンで動きますか、それともクラウドですか?

作者のクラウドで動きます。インストール不要でインターネット経由でつながりますが、送った内容は作者のサーバーを通ります。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(1.0.4)がレジストリに届いたのは19 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。

代わりに使えるものは?

同じカテゴリには:Figma Context MCP, Claude Real Video, Figma MCP Server

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Figma Context MCP

Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.

作者:GLips広く使われている↓ 16.1万/週★ 1.6万5 か月前更新

パソコンで動く

Claude Real Video

Let any LLM watch a video locally — and search everything it has ever watched.

作者:HUANGCHIHHUNGLeo広く使われている↓ 1106/週★ 22842 か月前更新

パソコンで動く

Figma MCP Server

The Figma MCP server brings Figma design context directly into your AI workflow.

作者:figma広く使われている★ 215213 か月前更新

クラウドで動く✓ mcp.figma.com

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

Songbrain

Song in, video plan out — the music analysis API for AI video.

Send a song. Get back JSON that a video model can use directly: what the song is, where the beats and sections are, which part to use, what the words are and when they are sung, what the video should show, and a shot list with a prompt for every scene that cuts on the beat.

Under the hood that is beat detection with downbeats, song structure analysis (sections with repeat letters), best-moment detection and word-timed lyrics in one hosted API, plus an MCP server at https://api.songbrain.ai/v1/mcp so Claude, Cursor or ChatGPT can read a song directly (setup guide).

This repository holds the official SDKs for Python and JavaScript/TypeScript, examples, and the MCP server entry.

  • API docs: https://www.songbrain.ai/docs/api
  • OpenAPI: https://api.songbrain.ai/v1/openapi.json
  • Get a key (5 free songs a month): https://app.songbrain.ai/developers
  • Changelog: SDKs · API

Try it now, no key

curl https://api.songbrain.ai/v1/examples/old-truck-home/shot-plan

This returns the story and shot plan of a real song in exactly the format your songs get. GET /v1/examples lists all examples.

What one call returns

One document per song (schema songbrain.song/1). Times are seconds from the start of the song.

SectionWhat is in it
song_dnaGenre and subgenre (37 subgenres), tempo, key and key changes, mood, vocal style, instruments, energy, loudness (LUFS, true peak, per-platform check), a tagline and similar tracks
timelineEvery beat, every downbeat, time signature, sections with repeat letters (A, B, A) and energy, vocal changes, lyric hooks
best_momentsRanked windows with start, peak and end, a score, the reason they work and the measured signals behind it, the beats inside, the words sung
lyricsLines with start and end, and every word with its own start and end
scoresVirality, quality and lyrics scores with breakdowns, what works, what to fix, audience
storyWhat the song means, one world, a three-colour palette, the one element the video is about (before, event, after), setup / turn / payoff
shot_planA beat-synced edit of the best moment (about 15 s, 9:16): every scene with absolute start and end seconds, act, kind, camera motion, transition, framing and a ready image/video prompt. Plus a section-level plan for the full song with cut points on the beat

One scene from the shot plan:

{

"index": 1, "kind": "tease", "act": "setup", "start_sec": 94.83, "end_sec": 96.246, "duration_sec": 1.416, "beats_in_scene": 4, "transition_in": "cold open, hold", "motion": "slow push-in on a still world", "prompt": "wide establishing shot of the empty space: A distant, warm yellow light source pulses faintly in the deep blue night ...", "sung": null }

A song takes 60–90 seconds to analyse (up to about 2 minutes when busy).

Prompts for video models, starting from the best moment

Most of a song is not worth animating. Songbrain ranks the strongest windows first (best_moments, each with the reason it works and the audio signals behind it) and builds the shot_plan on the top one: about 15 seconds, cut on the beat, one scene per cut. Every scene carries a ready prompt for an image or video model, written from the song's story, world and three-colour palette, so the scenes look like one film instead of unrelated clips.

{"index": 8, "act": "turn", "start_sec": 102.965, "end_sec": 103.282, "motion": "impact: frame lands displaced and settles, fast energy",

"prompt": "tight detail shot: The truck's grille, showing rust, illuminated by the faint glow of the low headlight. Faded brown and warm yellow, in ..."}

Pass the prompts to Kling, Runway, Luma, Veo or a hosted model on fal or Replicate, and cut the clips at the given seconds. Recipes: render-with-your-model.md, song_to_clips_fal.py, song_to_clips_replicate.py. The full-song plan (shot_plan.full_song) gives the cut points for a complete video.

Coming from Spotify Audio Features or Audio Analysis?

Since November 27, 2024, new Spotify apps get a 403 on /audio-features and /audio-analysis. Songbrain returns the same kind of data from any audio file, released or not, and more:

SpotifySongbrainNote
temposong_dna.tempo_bpmplus tempo_confidence
key + modesong_dna.key"C minor"; key_changes[] with the second each one happens
energysong_dna.energy0–1, plus energy per section
loudnesssong_dna.loudness_lufsEBU R128 integrated loudness and true peak
valence, danceabilitysong_dna.mood[]mood words rather than a number
instrumentalness, speechinesshas_vocals, song_dna.vocalsvocal style or "instrumental"
audio-analysis beatstimeline.beatsevery beat in seconds
audio-analysis barstimeline.downbeatsfirst beat of each bar
audio-analysis sectionstimeline.sectionswith repeat letters (A, B, A …) and relative energy
—best_moments, lyrics, story, shot_plannot in Spotify: the strongest windows and why, word timings, a shot list

Migration guide with a ten-line example: https://www.songbrain.ai/guides/spotify-audio-features-alternative

Install

pip install songbrain     # Python 3.9+, one dependency (requests)

npm install songbrain # Node 18+, no runtime dependencies, ESM + CJS + types

Packages: PyPI · npm.

Quickstart: Python

from songbrain import Songbrain

sb = Songbrain() # reads SONGBRAIN_API_KEY song = sb.analyze("song.mp3") # or analyze(audio_url="https://…")

dna = song["song_dna"] print(dna["genre"], dna["tempo_bpm"], dna["key"]) for s in song"shot_plan"["scenes"]: print(f'{s["start_sec"]:.2f}-{s["end_sec"]:.2f} [{s["act"]}] {s["prompt"]}')

Quickstart: TypeScript / JavaScript

import { Songbrain } from "songbrain";

const sb = new Songbrain(); // reads SONGBRAIN_API_KEY const song = await sb.analyze({ file: "song.mp3" }); // or { audioUrl: "https://…" }

const dna = song.song_dna!; console.log(dna.genre, dna.tempo_bpm, dna.key); for (const s of song.shot_plan?.clip?.scenes ?? []) { console.log(${s.start_sec.toFixed(2)}-${s.end_sec.toFixed(2)} [${s.act}] ${s.prompt}); }

analyze() uploads, waits until the song is done and returns the full document. Pass wait=False (Python) or wait: false (JS) to get the id right away, then use a webhook or get_song / getSong later.

Two modes

Every song is analysed in one of two modes. Use dna when you only need the data, or to sort many songs first. Then add the video direction to the ones you pick. dna plus the direction costs the same as full.

ModeWhat you getPrice
dnaSong DNA: song_dna, timeline, best_moments, lyrics, scores. No story, no shot plan10 credits, about $0.20
full (default)Song DNA + video direction: story and a beat-synced shot_plan with a prompt per scene25 credits, about $0.50
Add direction laterstory + shot_plan for a finished dna song. No new upload15 credits, about $0.30
song = sb.analyze("song.mp3", mode="dna")       # 10 credits: no story, no shot plan

if song"scores"["score"] >= 80: song = sb.add_direction(song["id"]) # +15 credits, waits about 30-40 s print(song"shot_plan""scenes"["prompt"])

let song = await sb.analyze({ file: "song.mp3", mode: "dna" }); // 10 credits: no story, no shot plan

if ((song.scores?.virality.score ?? 0) >= 80) { song = await sb.addDirection(song.id); // +15 credits, waits about 30-40 s console.log(song.shot_plan?.clip?.scenes[0]?.prompt); }

The 5 free songs a month cover either mode. Adding the direction never uses a free song. If it fails, the 15 credits are refunded and the song stays dna. GET /v1/songs/{id}/shot-plan on a dna song answers 409 no_direction.

Without an SDK: send "mode": "dna" in the JSON body (or -F "mode=dna" with an upload), then POST /v1/songs/{id}/direction. Try the dna view without a key: GET https://api.songbrain.ai/v1/examples/sugar-rush?mode=dna.

SDK methods

Python uses snake_case and JS uses camelCase method names. Response fields are the API's own names in both.

PythonJavaScriptAPIKey
`analyze(file \audio_url=…, mode=None, test=False, idempotency_key=None, wait=True)``analyze({ file \audioUrl, mode, test, idempotencyKey, wait })`POST /v1/songs + pollingyes
add_direction(id, wait=True)addDirection(id, { wait })POST /v1/songs/{id}/direction + pollingyes
get_song(id, view, include)getSong(id, { view, include })GET /v1/songs/{id}yes
shot_plan(id)shotPlan(id)GET /v1/songs/{id}/shot-planyes
list_songs(limit, starting_after)listSongs({ limit, startingAfter })GET /v1/songsyes
iter_songs(page_size)iterSongs({ pageSize })GET /v1/songs, every pageyes
delete_song(id)deleteSong(id)DELETE /v1/songs/{id}yes
account()account()GET /v1/accountyes
test_webhook(url)testWebhook(url)POST /v1/webhooks/testyes
webhook_deliveries(limit)webhookDeliveries({ limit })GET /v1/webhooks/deliveriesyes
pricing()pricing()GET /v1/pricingno
examples()examples()GET /v1/examplesno
example(id, view, include, mode)example(id, { view, include, mode })GET /v1/examples/{id}no
example_shot_plan(id)exampleShotPlan(id)GET /v1/examples/{id}/shot-planno
webhooks.verify(body, header, secret)verifyWebhook(body, header, secret)Songbrain-Signature header–

Both SDKs:

  • send the key as Authorization: Bearer sb_live_…,
  • raise SongbrainError (status, code, message, request_id / requestId) and the subclasses AuthenticationError, InsufficientCredits, NotFound, RateLimited (with retry_after / retryAfter), AnalysisFailed and WaitTimeout,
  • send an Idempotency-Key with every new song and retry network errors, 429 and 5xx up to 3 times with backoff, honouring Retry-After,
  • keep the last rate-limit headers in last_rate_limit / lastRateLimit.

Package docs: python/README.md · js/README.md

Without an SDK

# 1. send a file (or JSON {"audio_url": "https://…"})

curl -X POST https://api.songbrain.ai/v1/songs \ -H "Authorization: Bearer $SONGBRAIN_API_KEY" \ -F "file=@song.mp3" -F "title=My Song"

→ 202 {"id": "…", "status": "processing", "eta_sec": 75, "billing": {…}}

2. poll until status is "done"

curl https://api.songbrain.ai/v1/songs/$ID -H "Authorization: Bearer $SONGBRAIN_API_KEY"

Options on document

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く