Moontide

io.github.konni-arcadiaPublished by GitHub account konni-arcadiav2.4.3Updated Nov 7, 2026

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

VerifiedSTDIODesktop onlyDeveloper ToolsMedia & Design

Overview

AI-generated overview

Lets Claude write Strudel code that a local browser page plays as live, continuously changing music you steer by describing moods and changes.

What you can do
  • Write and revise Strudel music code that a browser page plays without stopping
  • Keep every played version and bring earlier ones back
  • Edit notes on a track timeline, use a song grid, mixer and jam view
  • Ramp tempo gradually over a number of bars
  • Play the same code on real MIDI instruments and set tone, part and scene settings
  • Receive requests from the page, including right-click context and motifs drawn in a Scratchpad
When to use it
Useful if you want an assistant to generate and continuously reshape live music while you listen, and to iterate by ear with short prompts like darker, add a bass or slower. It suits hobbyist and experimental music making rather than production work.
Requirements
Node 22 or later, Claude Code or Claude Desktop, Chrome (Chrome or Edge for MIDI), internet access because Strudel and its sounds load from the web, and speakers or headphones. The page opens on localhost port 5757 or another free port. No accounts, keys or environment variables are declared.
Before you install
Marked early with known bugs and an experimental Scratchpad, and only tested on one Mac setup with specific MIDI gear. The page loads Strudel and samples from the web, and MIDI instrument setting models are files you supply. The server listens on 127.0.0.1 only and sends nothing out. Support is not promised.

Installation

In SourceWeft

  1. Open Moontide in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

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.

bash
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.

Source: README.md at commit 697fcd5

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

5
  1. v2.4.3LatestNov 7, 2026
  2. v2.2.0Oct 17, 2026
  3. v2.1.0Oct 15, 2026
  4. v2.0.2Oct 12, 2026
  5. v2.0.1Oct 11, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts