Posted
This AI ChatGPT-Astra LLM has become so powerful that it has independently composed a piece of film music for Synfire.
To do this, it has access to my computer and performs all the necessary actions.
You can see the actions taking place on the Synfire screen.
The task was to compose for film music , no further instructions
It is finished with 10 minutes
Suppose you are giving detailled instructions ?
Could it be that this AI, Astra LLM, could significantly speed up Synfire's software development?
So., 20.09.2026 - 19:50 Permalink
You mean it does the mouse clicks and all to control Synfire? The arrangement you uploaded includes all static figures (MIDI notes). I can hardly believe ChatGPT could have drawn these with the pencil tool, without it knowing how the symbols map to pitch.
I would be more convinced if it had used containers, dynamic figures, and the harmony parameter. That would have resulted in only a few short figures and the rest would unfold automatically.
Also, for these very simple forms you don't need AI. Sketching an arpeggio and drawing/recording a few lines gets the job done. AI would be more interesting for developments, unusual harmony, dense textures, long build-ups. Things that are more fiddly to do by hand.
So., 20.09.2026 - 20:57 Permalink
The AI asked what I wanted to create, and I chose film music.
Nothing else.
This is just a test, and of course it’s a simple version.
This AI doesn’t have access to Synfire’s API, so all those things you mentioned probably won’t work, but I haven’t tried it with this AI yet to see if it can do it without it?
The AI created the MIDI.
You can only push the AI to its limits if it can query Synfire’s code—which it can’t.
I don’t have the source code for Synfire Pro, so unfortunately I can’t experiment with it
That’s right—this AI can control Synfire, load the MIDI, and save a .cognac file.
It works via the Codex input for this Astra AI LLM.
So., 20.09.2026 - 21:18 Permalink
We already have a MCP interface to Synfire (lab version). Would be interesting to check if it can "write" meaningful Figures and Harmony parameters. That would be fun. But don't expect any cool music to emerge. A LLM has no judgment and taste (it can't even hear the music).
So., 20.09.2026 - 21:20 Permalink
I asked the AI to start drawing figures from the previous example, and it began with the piano track, and I can see the first two measures being drawn right before my eyes.
Unfortunately, the usage limit is reached, and it stops.
This is, of course, extremely computationally intensive for the AI to work this way, and it cannot analyze the code already present in Synfire to incorporate it.
This AI is essentially controlling my computer.
So., 20.09.2026 - 21:32 Permalink
"A LLM has no judgment and taste (it can't even hear the music)."
This LLM would then need to have access to enough musical information from composers around the world so that it can form a mental image of a composition
The question is, does this Astra LLM have that?
So., 20.09.2026 - 21:37 Permalink
"We already have a MCP interface to Synfire (lab version)." Maybe you can optimise the MCP with use of this Ai ?
Astra codex LLM seems to be strong, but users of Synfir cannot experiment with it , because there is no MCP
Can i get this MCP ? 
Mo., 21.09.2026 - 00:52 Permalink
The whole point of astra llm is that it can operate without an agent, although personally I think you're mad giving it that level of access. Although if Synfire release their agent access to synfire then you can use any LLM that is compatible without giving it access to your whole machine.
Mind you if all you want is a bunch of elevator music, it might be more economical to post a request on fiver for someone to compose some tunes for you.
Mo., 21.09.2026 - 08:45 Permalink
If you use a computer for music-related purposes, why wouldn’t you give an LLM access to your computer?
What could possibly go wrong with a backup?
I’m using my regular computer, so yeah, I don’t know what LLM did to the computer software with this test :-)
That’s right—if Synfire makes an agent available, then an LLM won’t need access to your computer, but who knows if that will ever happen?
The point here is to actually try composing using the intended Synfire approach, not to create other kinds of music as you suggest
Mo., 21.09.2026 - 10:02 Permalink
I think it's definitely interesting to see what Claude or Astra would do if they had MCP access to Synfire's containers, parameters, rendered output, etc. That's probably a one day project, most of the work sitting in the Synfire to JSON converter.
However the problem is not control of the software. It's lack of musical knowledge. LLMs can talk about music quite well (if you want to learn more about music theory, it's always worth a chat). What they can't do is look at a piano roll (rendered output) and tell whether those bars match the user's ideas or not.
I would be very surprised if that MCP experiment would be able to generate some non-trivial and authentic music. Probably it's just because people don't talk about this a lot in detail online (no training material). I strongly believe that anything beyond a mere imitation of stereotypes is still a human domain.
You also noticed that even simple elevator music already consumes tons of compute, water and energy. Humans are so much more effecient. Cognitone's philosophy is to help humans explore and build on their own ideas - not to replace them.
Mo., 21.09.2026 - 10:14 Permalink
I want to conduct this experiment with Astra because I’ve already used it myself to write statistical code for a factor model, and the LLM seems to have no limits.
This experiment aims to determine whether the Astra LLM is capable of composing in Synfire the way a human would.
You can describe the overall composition structure and then ask if it can be generated from a starting phrase with variations on it.
I am curious to see hoe SOl LLm is doing too, because i use ChatGPT plus and can use astra LLM via codex too, but limited use
Mo., 21.09.2026 - 18:25 Permalink
I want to do this api handling with SOL LLM , its also powerful and cannot control my computer
Mi., 23.09.2026 - 15:44 Permalink
We shold probably change the subject to "AI composing with MCP" now. I just did a very quick & dirty test (no time to dive into this right now). I added a rudimentary parameter creation tool to the MCP we already have and gave it to Claude Opus.
Yes, it's real fun to type instructions and see parameters appearing in Synfire like magic. But no, its super slow, chatty, and the results struggle to meet even the bar of evelator music.
Claude spent 8 minutes burning tokens, electricity, and water on a simple "cinematic piano intro", which is essentially a continuous arpeggio (green) and a (blue) melody you could sketch or record in 30 seconds. It spent a lot of thought on smooth transitions (dynamics, tempo change). The elaboration and thought process was superb (the fun part of this excercise). It's a language model after all. The result was a trivial ramp and not smooth at all.
I'm glad I invested an afternoon to test this now, as it is now pretty clear that, whatever a MCP might eventually help with, composing phrases it is not.
If you can play the keyboard at least somewhat, you'll do a better job than Claude hands down. Even without that skill you get 1000% better results by importing some classical piano music, harvesting it for phrases you like, slowing them down and thinning them out, and some drag & drop action.
An LLM can only know about music as much as humans have talked about it online or in books. How that talk maps to the intricate details and processes involved in writing music, is just not present in the training data.
Mi., 23.09.2026 - 17:59 Permalink
Here's a second try. Although it's amazing how Claude immediately understands the paradigms of Synfire (we should copy the MCP instructions to our user manual ;-), human beginners are much better by orders of magnitude.
The conversation required compression half way through (i.e. it exhausted the 1 million token context window!). Imagine the token orgy if Synfire had all its features hooked up to MCP. You'd need a $200/mo subscription to get something done.
Prompt: I have a blank new arrangement open for you to use. Create a smooth cinematic piano theme with multiple parts, slow development and variation, and interesting dark harmony.
Composing a cinematic piano theme in Synfire.Composing a cinematic piano theme in Synfire.
I'll help you build a cinematic piano theme in Synfire. Let me first load the Synfire tools and understand the current state of your arrangement.Synfire-Integration verwendet, geladene Tools
I've got the full picture: a blank 32-bar arrangement, a General MIDI soundset in the global rack (grand pianos, slow strings, warm pads), and you're currently in the Harmony editor.
Here's my plan before I start writing: a dark D minor cinematic theme at ~66 BPM, built as five nested sections that develop slowly — Intro → Theme → Variation → Climax → Outro — across three parts (piano right hand for the melody, piano left hand for flowing broken-chord accompaniment, and a soft sustained strings/pad layer for cinematic depth). The "dark" color comes from a lament progression (i–♭VI–iv), a Neapolitan ♭II (E♭maj7), and a Phrygian descent in the climax.
Let me first set the tempo, which will also confirm how instruments get created here.Synfire-Integration verwendet, geladene Tools
Everything's in place. The composition is fully written across all five sections and three parts, and I've confirmed it's stored correctly.
Here's what I built — a dark cinematic piano theme in D minor at 66 BPM, structured as a slow arc:
Intro (4 bars) — a distant, sparse entrance. Soft open fifths in the pad, a fragment of melody drifting in over Dm → B♭maj7 → A7.
Theme (8 bars) — the main lyrical idea: a descending piano line over a lament-flavored progression (Dm → B♭maj7 → Gm7 → A7), with the melody leaning on the C♯ leading tone over the dominant and touching the Neapolitan color of E♭maj7.
Variation (8 bars) — the same bones developed higher and more ornamented, eighth-note motion in the left hand, more harmonic restlessness (Dm7, E♭maj7, Asus4 → A7♭9).
Climax (8 bars) — octave-doubled melody at the peak, bold two-octave arpeggios underneath, full sustained strings, then a tapering descent.
Outro (4 bars) — everything thins out and fades, ending open and unresolved on the fifth rather than a clean home chord.
The darkness comes from a few deliberate choices: the descending lament progression, the Neapolitan E♭maj7 borrowed into the key, Phrygian color in the melody, and A7♭9 dominants that never quite let the tension settle.
One thing you need to do manually (Synfire leaves sound and range assignment to you): in the rack, assign Yamaha Grand Piano to both inst1 (right hand / melody) and inst2 (left hand / accompaniment), and Slow Strings or Warm Pad to inst3. Then set pitch ranges so the octaves land right — melody high (~C4–C6), left hand low (~C2–C4), pad in the middle. The melody is written in relative notation, so it's currently folding into a low register until you give it a proper range; once you do, the contour will open up as intended.
Once ranges are set, I can re-check the rendered notes and fine-tune anything that clashes — the melody over the E♭maj7 bars is the spot most worth a second look. Happy to also adjust tempo, dynamics, or section lengths if you want it darker, slower, or longer.
Here's the result (mp3 attached).

I mean it looks nice. Claude understands how Figure works and created 5 parts. There is visible variation and development. Synfire cares about harmony, so it's easy for the AI to avoid "ouch" mistakes. Rhythm however is super static and borders on annoying. With rhythm, it obviously it helps to have a body ;-)
The killer argument however: You can do this easily yourself and - if you are a beginner - learn a skill.
claude-1_0.mp3
Mi., 23.09.2026 - 18:09 Permalink
One thing surprised me though. Claude seems to be quite good at generating chord progressions (not the one above). If you give it enough hints. There's obviously a lot of that in its training data and if it can talk about harmony, it can also tell you the chords.
No MCP needed: Copy/paste or just typing works fine.
Mi., 23.09.2026 - 18:40 Permalink
Couldn't resist and asked it to improve the boring rhythm.
I've changed the sounds. Nice work so far. Only rhythm is really static and boring. We have a Shift parameter for rubato (which you can't yet access), but beyond that humanization, rhythm should be something more varied than straight quarter notes. How a bout some triplets or quintuplets here or there? Or a few early or late note onsets?
Working out fraction notation for triplet and quintuplet timing.
Good — glad the sounds are in. Let me first confirm how Synfire wants tuplet and displaced-onset notation before I rewrite anything, since I want early/late onsets and triplets to actually render rather than get quantized. Let me check what I already learned in the session.Hat einen Befehl ausgeführt
I didn't test tuplet notation in the earlier session — only straight divisions (1/8, 1/4, etc.). Let me check the ontology doc for how Synfire notates triplets and off-grid onsets.3 Befehle ausgeführ
Rather than guess at notation, I'll test it directly. Let me read the current melody figure in the Theme so I can rework its rhythm while keeping the pitch content.Synfire-Integration verwendet, geladene Tools
Tuplet and off-grid notation both work — the triplets (1/12), quintuplets (1/20), and the syncopated onset "3/4+1/16" all stored intact (Synfire even normalized 3/20 to the dotted form 1/10*). Let me confirm it renders to actual MIDI.Geladene Tools, synfire-Integration verwendet
Confirmed — it renders to clean MIDI with the triplets, the quintuplet, and the syncopated onset all placed correctly, and now in a proper register since you set the ranges. So Synfire notation is: eighth-triplet = 1/12, quarter-triplet = 1/6, quintuplet = 1/10 or 1/20, and off-grid onsets via +1/16 / +1/32. Now I'll rework the rhythm with that vocabulary. Starting with the melody (inst1), section by section.Synfire-Integration verwendet
Compound positions normalize correctly (the quarter-triplet lands right on 5/6, the late onset at 3/4+1/32). Now the Theme melody — syncopations, an eighth-triplet descent, a quarter-triplet turn, the C♯ leading-tone entrance pushed late, and a quintuplet flourish over the final A7♭9.Synfire-Integration verwendet
inst1 is fully reworked. Now the left hand (inst2), which was the most mechanical part — I'll break the straight broken-chords into a mix of rolling eighth-triplet arpeggios, syncopated patterns, and late-onset bass notes, varying the feel bar to bar. Starting with the Theme.Synfire-Integration verwendet
Verified — both parts render exactly as written, harmony fully intact. The rhythm is now varied throughout instead of straight quarters.
Here's what changed across all five sections:
Melody (right hand) now moves through eighth-note triplet runs, quarter-note triplet turns, and two quintuplet flourishes — one cascading over each A7♭9 cadence (Theme and Variation) and a fast descending quintuplet at the climax apex. The leading-tone entrances (the C♯ over A7) now come in slightly late, a written-in rubato lean, and phrases mix dotted, held, and syncopated values rather than even notes.
Left hand was the most mechanical part, so it got the biggest overhaul: the straight broken chords are now a rolling mix of continuous eighth-triplet arpeggios, syncopated off-beat patterns, and bass notes nudged a 32nd late. It builds from a two-note roll in the Intro to driving two-octave triplet arpeggios in the Climax, capped with a double-quintuplet run and accented octave stabs at the peak, then thins back out for the Outro.
A few notes:
I confirmed Synfire's tuplet notation by testing it live — eighth-triplet is 1/12, quarter-triplet 1/6, quintuplet 1/10/1/20, and off-grid onsets write as +1/16 or +1/32. All of it renders to real MIDI, so the variety is baked into the figures themselves, independent of the Shift/rubato parameter. When you do apply Shift, it'll layer micro-timing humanization on top of these structural rhythms.
I deliberately left the strings/pad (inst3) sustained — rhythmic chatter there would fight the melody and muddy the cinematic wash. If you want it to pulse or swell in time, I can add that.
Have a listen and tell me if it's the right amount — I can push further (more aggressive syncopation, swung feel, heavier tuplet density) or pull any section back toward simpler if it's too busy against the harmony.
_______________________________________________________________
Cool insights. And of course I enjoy how Claude loves Synfire's MCP tools. And again, yes it's magic to watch the Figures transform on screen (keep in mind that it gets to see wild nested JSON structures only).
But this AI has no feeling for rhythm beyond clever talk.
claude-2.mp3
Mi., 23.09.2026 - 19:16 Permalink
You should start experimenting with the AI in Synfire.
It really is amazing how intelligent an LLM can be.
Astra LLM seems to be very powerful.
You should also ask the AI questions: for example, “Can you create a rhythmic intro?” or “How can you do that in Synfire ?”
It’s a shame that Synfire users can’t experiment with this as well.
Mi., 23.09.2026 - 21:34 Permalink
Adding a feature just for quick experimentation is a risky bet. We need to make sure it is really useful first. That will take some more time.
Mi., 23.09.2026 - 23:30 Permalink
It depends. If this feature is separate from Synfire's standard functionality, then users can enable or disable it, just as they have with previous features in Synfire.
Do., 24.09.2026 - 01:19 Permalink
Have to say andre, I'm quite impressed with the tokens that claude generated, it really makes you believe it knows it's stuff. Equally impressive is it working through your mcp to control synfire, even if you havent exposed all of synfire's parameters yet.
What is less impressive is the quality of the actual music it produced and the cost of producing it.
I presume, no amount of work on the MCP will improve that, as the fault lies with the ai model, even if it gets access to additional parameters?
I think the ai models trained on audio do a much better job at producing bland generic music, probably because there is so much audio out there to train against.
I do think as you intermated, using an ai chat tool to discuss musical ideas such as harmony, tempo, rhythm, etc could be useful and much cheaper. It would require the composer to copy those bits and ideas they like and paste/transfer into synfire, but using MCP agents is a recipe for large bills or at the very least, rapid consumption of token credits.
Although an interesting experiment, personally I think your time is better spent elsewhere.
Do., 24.09.2026 - 15:33 Permalink
Yes, time is tight. This was still a necessary experiment because AI evolves so fast, we need to learn what it's good for early on. As a last test, I'll check out how it responds to "latin dance music" when I also give it a drum track and bass ... but won't hold my breath.
I see potential for MCP and AI models in scripting & search though. If we find a useful embedding (vectorization) for figures and parameters, we can have very fast similarity search in libraries, which is a big deal. Imagine you play something and Synfire opens a library with smilar material and selects a suitable phrase pool.
Or MCP control of Factories.
Do., 24.09.2026 - 15:40 Permalink
If this feature is separate from Synfire's standard functionality, then users can enable or disable it, just as they have with previous features in Synfire.
The feature needs to be at least somewhat complete to make sense - not the quick half-baked lab setup we have now. Such an investment needs justification.
Do., 24.09.2026 - 16:26 Permalink
That's a great development, and who knows what AI will bring in the future!
Note: If you can use this incredible strong Astra llm, I imagine it can figure out this connection for you right away in no time
Do., 24.09.2026 - 18:36 Permalink
The bossa nova was promising ... until I got this

Do., 24.09.2026 - 19:13 Permalink
Here's what it came up with for a fullly exhausted token budget:

Cool: Claude used the alias feature for the second verse and inserted child containers for breaks (which I hinted at). The harmony is nice. It feels like a song ..... from an arranger keyboard's automatic accompaniment 30 years ago ;-)
claude-3.mp3
Do., 24.09.2026 - 20:06 Permalink
This song snippet sounds promising, doesn't it?
I use a Sol llm Plus subscription and also use Astra, which uses up data quickly because of the low usage limit—as you've already noticed with a another package.
I hope Sol llm is enough because it's affordable to work with Synfire.
Fr., 25.09.2026 - 14:23 Permalink
With this result, there should be much more potential for composing in Synfire using AI.?
That AI can reason about everything, including how Synfire works.
But only using Sol LLM—that’s affordable.