moontide

mcp
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: AGPL-3.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Claude steers live music by writing Strudel code played in a browser page

README.md

Moontide

The moon guides the tide.

Early: Moontide is young and has known bugs, and its Scratchpad is early experimental (see the
known limits).

A hobby project: Claude plays live music for you. Describe a mood, a theme or an idea, and
Claude writes Strudel code that plays in your browser and changes without
ever stopping.

npm version
CI

Moontide demo: Claude starts a dungeon theme from a few words, then changes it on requests typed in the page

▶ Watch the demo on YouTube (3 minutes, with sound)

How this was made

Moontide is a personal project. Most of the code, research and documentation was
written by an AI coding assistant working under my direction. I set the goals, listened to
every change, tried it on my own instruments, judged the results by ear, and made the
decisions. I am responsible for what is here, errors included.

What it does

  • You talk ("start something dreamy in D minor", "darker", "add a bass"). Claude writes
    Strudel code, and a browser page plays it at once, without stopping the music.
  • The code is always visible and editable. Every version that played is kept, and Claude can
    bring any of them back.
  • The page shows the music in several views: a timeline of named tracks where you can edit
    notes, a Song grid, the history, a mixer and a jam view with the scale on a piano or a guitar.
  • A right-click on anything in the page sends Claude a request with that context.
  • Claude can move the tempo up or down over a number of bars, instead of jumping.
  • The same code can play real MIDI instruments from the page, and a
    Scratchpad (early experimental) lets you draw or play in a motif and send
    it to Claude.
  • On an instrument whose model describes them, Claude can set tone, part and scene
    settings that no program change carries, written in the code like a sound
    or a control. Moontide stores none of them. The models that describe settings are files of your own;
    none ships with Moontide.

Moontide does not start from scratch. The music engine is
Strudel, the JavaScript port of TidalCycles by Felix Roos, Alex McLean and the
Strudel contributors. Moontide is the bridge between Claude and a Strudel page.

Install

What you need: Node 22 or later, Claude Code or Claude Desktop, Chrome (Chrome or Edge
for MIDI), internet access (Strudel and its sounds load from the web), and speakers or headphones.

claude mcp add --scope user moontide -- npx -y moontide-mcp

Then start a new Claude session and ask for music. Claude Desktop, Windows, running from the
source code, updating and uninstalling are on the manual's
Install page.

First music

  1. Start a new Claude session. Nothing opens yet: Moontide waits until you want it.
  2. Ask for music, for example "Play something calm to start the day". Or say "start Moontide".
  3. The page opens in a new tab at http://localhost:5757, or on another port when 5757 is busy.
  4. Click once anywhere in the page. Browsers start sound only after a click.
  5. Ask for changes: "darker", "add a bass", "slower".

More in First music.

The manual

The manual is at https://konni-arcadia.github.io/moontide/. It is written in plain words,
and every page ends with a box that says what was checked and what was not.

The same pages can be read on GitHub, as Markdown, in the
site folder.

Status

Early and personal. It runs on one setup: a Mac, Chrome, Claude Code and Claude Desktop, and,
for MIDI, a Roland SC-55, the Munt MT-32 emulator and a Roland JUPITER-Xm. It has not been tried
anywhere else. The test suite runs on Windows, Linux and macOS in CI, but nobody has played
music on Windows or Linux yet. There are known bugs. Feedback is welcome, but support is not
something I can promise. The list is in
Known limits.
What is not yet checked by hand is listed at the end of each manual page and in the
changelog.

Network and privacy

The server listens on 127.0.0.1 only and sends nothing out. The page loads Strudel and its
samples from the web. Details: network, privacy, credits and license.

Contributing and security

Bug reports and ideas are welcome as issues (use the bug form). How pull requests are handled is in
CONTRIBUTING.md.

Security problems go through a private report, never a public issue. See
https://github.com/konni-arcadia/moontide/security/policy.

Credits

Built on Strudel by Felix Roos, Alex McLean and the Strudel contributors
(source: https://codeberg.org/uzu/strudel), on TidalCycles by Alex McLean and its community, on the
sample sets Strudel loads (including the TidalCycles Dirt-Samples and the Versilian Community
Sample Library), on the Model Context Protocol and its TypeScript SDK from Anthropic, and on the
acorn parser. The full list is on the
credits page.

License

Moontide plays Strudel, which is under AGPL-3.0-or-later. Moontide uses the same license. It
loads Strudel from unpkg at run time and does not ship it. The license text is in
LICENSE. Moontide is not
affiliated with, or endorsed by, the Strudel or TidalCycles projects, or Anthropic.


Konni — built with an AI coding assistant.

Yorumlar (0)

Sonuc bulunamadi