
Keyboardia
io.github.adewalev1.1.0更新於 Oct 9, 2026
Create, co-edit, analyze, publish, and export collaborative step-sequencer sessions through MCP.
概覽
讓助理透過遠端 MCP 端點建立、共同編輯、分析、發布並匯出協作式步進音序器音樂工作階段。
- 功能
- 將助理連接到 Keyboardia 這款多人步進音序器,使其能讀取工作階段目前的節奏、新增音軌、指定步進並變更速度,且與瀏覽器編輯的是同一個即時工作階段。它也能建立新工作階段並回傳分享連結、將已發布的工作階段混音為可編輯副本、依要求發布不可變快照,以及將工作階段匯出為 MIDI 檔案供 DAW 使用。關於調性、節奏關係與和弦等樂理問題,由 Key Assistant 所用的同一模組回答,並會說明不確定性。
- 適用情境
- 當你希望助理協助在 Keyboardia 中建立或修改節奏型、透過 UUID 共同編輯現有工作階段、混音或發布工作階段、匯出 MIDI 供 DAW 使用,或回答工作階段調性與節奏相關問題時,適合使用。
- 執行需求
- 遠端 MCP 端點 URL 中的工作階段 UUID。需要能存取該託管服務的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Keyboardia,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
其他 MCP 客戶端
把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"keyboardia": {
"type": "http",
"url": "https://keyboardia.dev/mcp"
}
}
}README
Keyboardia
A multiplayer step sequencer with polyrhythmic patterns, built for real-time collaboration.
Features
- Real-time Multiplayer - Up to 10 players can jam together on the same session
- Polyrhythmic Patterns - Each track can have 3-128 step counts (26 options including triplet-friendly values)
- 70 Sound Generators - 32 Web Audio synths, 11 Tone.js FM/AM synths, 27 sampled instruments
- 27 Sampled Instruments - Grand piano, 808 kit, acoustic drums, Hammond organ, kalimba, steel drums, strings, guitars, sax, and more
- Effects Chain - Reverb, delay, chorus, and distortion with limiter (full multiplayer sync)
- Parameter Locks - Per-step pitch, volume, and tied notes automation
- Chromatic Grid - Two view modes: "Events" (key intervals + used pitches) and "All" (49 pitches from -24 to +24)
- Scale Lock - Constrain chromatic grid to selected musical scale with out-of-scale warnings
- Scale Sidebar - Visualize scale notes with root/fifth emphasis and active usage highlighting
- Per-track Swing - Global and per-track swing settings for groove control
- Session Sharing - Share links, remix others' work, publish immutable sessions
- QR Code Sharing - Mobile-friendly session sharing
- Agent Rhythm Editing (Experimental) - Co-edit, create, remix, publish, export, and analyze sessions through stateless MCP
Use with an agent
Configure your MCP client with:
To co-edit music you already have, open a session and give the agent the UUID
from its https://keyboardia.dev/s/{session_id} URL. Agents can read the
current rhythm, add a track, assign specific steps, and change tempo. Their
edits use the same live session as connected browsers, and published sessions
stay read-only.
Agents can also start from nothing: create a new session and hand back its link, remix a published session into an editable copy without touching the original, publish the current result as an immutable snapshot when you ask, and export the session as a MIDI file for a DAW.
They can explain music too — ask what key a session is in, how its rhythms sit against each other, or what chord a moment forms, and the answer comes from the same music-theory module the Key Assistant uses, with its uncertainty stated rather than hidden.
See the stateless MCP rhythm-slice specification for the exact tool contract and current limitations. Directory maintainers can use the canonical MCP listing record, and hosted data handling is described in the MCP privacy notice.
Tech Stack
- Frontend: React 19, TypeScript, Vite
- Audio: Web Audio API, Tone.js
- Backend: Cloudflare Workers, Durable Objects, KV Storage
- Real-time: WebSockets with Hibernation API
Getting Started
Development
Debug Mode
Add ?debug=1 to the URL to enable debug features:
- Event tracing
- Audio state debugging
- Persistent log storage
- Bug pattern detection
See docs/DEVELOPMENT-TOOLS.md for comprehensive debugging documentation.
Project Structure
Key Files
Testing
Architecture
Audio Signal Chain
Synth Engines
- SynthEngine (
synth.ts) - Native Web Audio oscillators, 40+ presets - ToneSynthManager (
toneSynths.ts) - Tone.js FM/AM/Membrane synths - AdvancedSynthEngine (
advancedSynth.ts) - Dual-oscillator with filter envelope and LFO - SampledInstrument (
sampled-instrument.ts) - Sample-based playback (piano)
Multiplayer Architecture
- Each session is a single Durable Object instance
- WebSocket connections use Hibernation API for cost efficiency
- State changes broadcast to all connected clients
- Hybrid persistence: Mutations saved immediately to DO storage, KV updated on disconnect
Documentation
- ROADMAP.md - Implementation phases and status
- SYNTHESIS-ENGINE.md - Audio architecture spec
- SHARING-AND-PUBLISHING.md - Session persistence spec
- DEVELOPMENT-TOOLS.md - Debug tools reference
- UI-PHILOSOPHY.md - Design principles
- LESSONS-LEARNED.md - Debugging war stories
License
Bundled instrument samples are third-party content with their own licenses (CC0, public domain, and similar free-use terms), documented in app/public/instruments/LICENSE.md.
來源:README.md,提交 e9283e2
工具
0版本歷史
1- v1.1.0最新Sep 16, 2026
