Conversione audio in MIDI da un agente di intelligenza artificiale, tramite MCP.
Pubblicato nell'ottobre 2026
Trascrizione di Doseedo e la sua analisi musicale sono strumenti sul server MCP. Collegalo e un agente trascrive una registrazione a accordi — tono, inizio, fine, velocità, confidenza — con modelli per strumento dietro una superficie e risponde alle domande che li circondano: cosa chiave è questo in cosa tempo e contatore, dove sono i momenti di sconfortoquali sono i accordi, ed è la parte che ho appena scritto armonicamente corretta. Gli strumenti di analisi sono sincroni e gratuiti, il che li rende la griglia su cui un agente scrive prima di renderizzare una parte o inserire note in una sessione.
Gli strumenti
doseedo_transcribe— l'audio in ingresso (un caricamento o qualsiasi URL https, incluso un ramo separato), le note in uscita come JSON. I suggerimenti lo affinano:instrument("piano","sax","vocals","bass"),register,familyquando lo strumento è sconosciuto,polyphony—solo,poly, osectioncon unrosterdi sedie per una sezione di corni ("trumpet,trumpet,trombone,tenor_sax"). Contempo_bpmAnche la durata delle note viene restituita in battiti.want:"f0"restituisce il contorno continuo dell'altezza del suono anziché le singole note, per glissandi, vibrato e intonazione.doseedo_analyze_song— tonalità, bpm e mappa del tempo per battito, metro, tempi forti, sezioni e accordi di una registrazione, in un'unica chiamata sincrona.doseedo_detect_chords— uno schema di accordi con intervalli in secondi e battiti.doseedo_beat_grid— tempi di battuta e di levare, battiti per battuta, mappa dei tempi.doseedo_analyze_midi— l'armonia delle note che hai scritto, prima di eseguirle o posizionarle.
La trascrizione è un lavoro asincrono: la ricetta del server dice da 15 a 60 secondi, fino a due crediti e spesso nessuno, atteso con doseedo_wait_taskI quattro strumenti di analisi rispondono alla stessa chiamata e sono gratuiti.
Risultati concreti, su un supporto reale
Per rendere questo concreto anziché descritto, ecco doseedo_analyze_song Esecuzione su una traccia per pianoforte solo tratta dalla nostra jam session pubblica, registrata il 15/10/2026, ritagliata in base alla forma (la risposta completa conteneva 421 accordi e 25 punti di mappatura del tempo):
{
"status": "done",
"kind": "analyze_song",
"bpm": 91,
"key": { "name": "C# major", "root": 1, "scale": "major", "confidence": 0.769 },
"meter": "4/4",
"beats_per_bar": 4,
"chords": [
{ "chord": "F#maj7", "start": 21.03, "end": 24.09, "start_beat": 0, "end_beat": 5, "confidence": 0.73 },
{ "chord": "F#m7", "start": 24.09, "end": 24.79, "start_beat": 5, "end_beat": 6, "confidence": 0.83 },
{ "chord": "Bm", "start": 24.79, "end": 25.55, "start_beat": 6, "end_beat": 7, "confidence": 0.70 },
…
],
"tempo_map": [ { "bpm": 90.35, "time": 21.03 }, { "bpm": 85.91, "time": 53.03 }, { "bpm": 90.65, "time": 64.15 }, … ],
"downbeats": [ 22.19, 24.79, 27.52, 30.20, … ],
"sections": [ { "name": "Section A", "position_beats": 0 }, { "name": "Section A", "position_beats": 33.65 }, … ],
"dynamics": { "fade_in_sec": 21.03, "fade_out_start": 219.82 },
"truncated": [ { "path": "chords", "kept": 105, "total": 421 } ],
"next": "The full result is kept: GET https://api.doseedo.com/api/jobs/ con la tua chiave."}
Tre cose da leggere. Il I numeri di fiducia sono reali — 0,77 sulla tonalità, da 0,6 a 0,87 per accordo — e un agente dovrebbe trattare un accordo da 0,6 come una bozza. Il deriva della mappa del tempo (da 86 a 102 bpm nell'intera ripresa) perché un pianoforte solista che suona rubato non ha una griglia fissa, ed è proprio per questo che una parte scritta per questa registrazione dovrebbe usare la mappa, non il singolo bpm.E il brano ha una lunga introduzione silenziosa: fade_in_sec: 21 Ecco perché il primo accordo inizia a 21 secondi.
Eseguire sullo stesso stelo, doseedo_detect_chords — la classifica con il ritmo — ha sentito l'apertura come Ebm7 a 166,7 bpm (doppio tempo, la stessa armonia scritta dalla sua relativa minore) con una griglia diversa. Tale discrepanza è un'informazione veritiera, non un bug: una registrazione densa o rubato è il caso difficile per entrambi gli strumenti, e la nota della ricetta stessa dice di rilevare gli accordi su una traccia armonica separata di un mix, o su una registrazione pulita, per ottenere un grafico affidabile. Anche la prima chiamata al servizio di analisi in questa acquisizione è andata in timeout dopo 45 secondi di inattività del servizio; l'errore ha detto all'agente di attendere 30 secondi e riprovare una volta, e il secondo tentativo ha dato risposta in pochi secondi.
Cosa chiedere
> What key and tempo is ./ref.wav in, and where do the
sections change?
> Transcribe the sax solo in ./solo.wav — tenor, monophonic —
and show me the notes in beats at the song's tempo.
> Separate ./mix.wav, transcribe the bass stem, and put the
notes on the Bass track of my "Bridge Demo" session.
> Here's the horn section stem: two trumpets, a trombone and
a tenor. Give me each chair's part.
> Check the harmony of this progression I wrote before you
render it.
Il terzo suggerimento è il punto di avere questo sull'MCP: le note non si fermano a un file. L'agente le scrive in una traccia di sessione con set_midi_notes (note esatte, suonate dallo strumento della DAW), oppure le riproduce come audio con doseedo_render_midi su uno strumento modellato, oppure li passa a una sessione di creazione. Il MIDI rimane invariato: il server non allinea né corregge mai le note alle spalle dell'agente.
Note, non un file .mid : ecco perché
doseedo_transcribe restituisce le note come JSON strutturato anziché come file MIDI standard, perché è su questo che ragiona un agente: può filtrare per confidenza, quantizzare alla griglia doseedo_beat_grid restituito, dividere un accordo in voci o controllare il risultato rispetto a doseedo_analyze_midi prima che venga effettuato qualsiasi commit. Laddove l'obiettivo è un file, gli strumenti del progetto ne creano uno: doseedo_separate_stems con include_midi E doseedo_audio_to_session inserire MIDI per stem in un progetto nativo Logic o Ableton e il strumento web scarica un .mid direttamente. Dall'audio allo spartito musicale è la notazione della fine della stessa pipeline.
L'analisi è gratuita e sincrona; la trascrizione è a consumo (la ricetta prevede fino a due crediti, nessuno quando viene eseguita da un modello CPU); doseedo_quote prezzi uno qualsiasi di essi prima. Le chiamate sono revocabili per cliente da Impostazioni → Chiavi API.
Trascrivine uno dal tuo agente
Collega il server, indicagli una registrazione e chiedi in che tonalità è: quella è libera.
Il server Doseedo MCP →FAQ
Esiste un server MCP per la trascrizione da audio a MIDI ?
Sì. Il server MCP Doseedo espone doseedo _transcribe (trascrizione audio in note con suggerimenti su strumento, registro e polifonia, incluse le sezioni di fiati per posto) insieme a doseedo _analyze_song, doseedo _detect_chords, doseedo _beat_grid e doseedo _analyze_midi. Funziona con Claude, ChatGPT, Cursor, Gemini CLI, Codex e qualsiasi client MCP.
Che cosa restituisce la trascrizione?
Note in formato JSON : altezza, inizio e fine in secondi (e in battiti quando viene specificato un tempo), velocità e confidenza, oppure, con want:"f0", il contorno continuo dell'altezza. Per ottenere un file .mid, utilizzare lo strumento web oppure lasciare che la separazione o la creazione di una sessione scrivano il MIDI in un progetto.
È in grado di rilevare la tonalità, il tempo e gli accordi di una canzone?
Sì, doseedo _analyze_song restituisce tonalità, bpm con una mappa del tempo per battito, metro, tempi forti, sezioni e accordi in una singola chiamata sincrona; detect_chords e beat_grid restituiscono il grafico e la griglia separatamente. Queste funzioni non costano crediti.
Un agente può inserire le trascrizioni degli appunti nel mio software DAW?
Sì. Le scrive su una traccia di sessione con set_midi_notes, le renderizza come audio con render_midi su uno strumento modellato, oppure lascia che audio_to_session costruisca l'intero progetto con MIDI per ogni traccia. Con Dø Desktop in esecuzione, le note scritte in una sessione Logic appaiono nel progetto aperto.
Gestisce la polifonia e le sezioni?
"poly" indica la polifonia; "section" indica una sezione di corni per strumento, dato un elenco come "trumpet,trumpet,trombone,tenor_sax" o codici di registro. "solo" indica una singola linea monofonica.
Il server Doseedo MCP · un URL per ogni client
- Logic Promodifiche in tempo reale nel progetto aperto
- Ableton Livecostruire, leggere, convertire .als
- FL Studioleggere, convertire .flp
- Pro Toolsspostare file .ptx tra DAW
- REAPERleggere, modificare, convertire .rpp
- Qualsiasi agente di intelligenza artificialeciò che funziona oggi
- Claude e il codice di Claudetelefono, computer fisso, terminale
- ChatGPTcome server MCP personalizzato
- Cursoremcp.json, una voce
- Interfaccia a riga di comando Geminigemini mcp add
- Codice OpenAIcodex mcp aggiungi
- VS Code Copilotmcp.json, tipo http
- Tutti i 33 strumentiil riferimento
- Convertire i progettidieci formati DAW, 75 direzioni
- stems separativoce, batteria, basso, altro
- Da audio a MIDItrascrizione, accordi, tonalità
- Genera musicacanzoni, parti, cover
- Rimbalzo offlinetramite plugin reali
- Sostituisci il pacco batterial'audio rimane locale