MIDIRestyle
Este MCP permite que el agente trabaje con archivos MIDI. Le permite buscar en la biblioteca de escalas, leer el archivo MIDI, reestilizarlo y exportar el resultado.
Documentación
MIDIRestyle
Tu melodía, en la afinación de otra persona.
Introduce un archivo MIDI, elige un estilo musical objetivo, y MIDIRestyle lo convierte. Una melodía escrita en Jónico puede volver como pentatónica china, pelog javanés, maqam árabe, o cualquiera de las 171 escalas que incluye. El ritmo y el fraseo permanecen exactamente como los tocaste — solo se re-mapea el tono.
midirestyle.netlify.app · Descargar para Windows · Notas de versión
O simplemente pregunta — MIDIRestyle habla MCP
El mismo .exe funciona como un servidor de Model Context Protocol. Apunta
Claude — o cualquier cliente MCP — hacia él, y tu agente puede buscar en la biblioteca de escalas, leer tu MIDI,
re-estilizarlo y exportar el resultado. Nada extra que instalar, y tus archivos nunca salen de tu máquina.
Tres líneas en claude_desktop_config.json:
{ "mcpServers": {
"midirestyle": { "command": "C:\\Tools\\MIDIRestyle.exe", "args": ["--mcp"] }
} }
O una línea en Claude Code:
claude mcp add midirestyle -- "C:\Tools\MIDIRestyle.exe" --mcp
Ayuda ▸ Acceso de agente (MCP)… dentro de la aplicación muestra ambos fragmentos con la ruta real de este exe ya completada — vale la pena usarlo, porque un exe portátil puede vivir en cualquier lugar y ser renombrado.
Un host de agente inicia el servidor; nunca ejecutas --mcp a mano. Habla solo por stdin/stdout —
sin ventana, sin red, sin una segunda copia de la aplicación instalada.
Tú — toma
ballad_sketch.midy pruébalo en algunos estilos de Oriente Medio. Quédate con el que mejor conserve la forma de la melodía.
inspect_midi ballad_sketch.mid → 148 notes · D minor · 72 bpm · 4 tracks
list_scales query: "maqam" → 16 scales
describe_scale middleeast.arabic.maqam-rast → 7 degrees · ±50¢ from 12-TET · 2 bend clusters
restyle_midi → Maqam Rast → ballad_sketch.middleeast.arabic.maqam-rast.mid
restyle_midi → Maqam Hijaz → ballad_sketch.middleeast.arabic.maqam-hijaz-notated.mid
Agente — Hijaz es el indicado: su segunda disminuida aterriza justo en tu gancho, y el motivo descendente en los compases 5–8 sobrevive intacto. Rast lo suavizó demasiado. Escrito con pitch bend por canal, así que la afinación se mantiene en tu DAW.
Las herramientas que expone
| Herramienta | Qué hace |
|---|---|
inspect_midi | Pistas, notas, tempo, compás y la tonalidad detectada de un archivo en disco, como datos estructurados. |
list_scales | Navega y filtra las 171 escalas — por tradición, número de grados, si se notan, cuán lejos están del 12-TET. |
describe_scale | Una escala en detalle: grados en cents, su ortografía, su desviación, y cuánto costará en canales MIDI. |
restyle_midi | Ejecuta el propio pipeline de la aplicación de escritorio y escribe el .mid re-estilizado, incluido el pitch bend. |
export_musicxml | Escribe notación, para escalas que pueden expresarse honestamente en un pentagrama. |
Además, un prompt de choose_a_style que guía al usuario hacia una escala una pregunta a la vez.
Cada ruta pasada a las herramientas debe ser absoluta. Las salidas se guardan por defecto en <input>.<scale-id>.mid junto a
la entrada, y un archivo existente nunca se sobrescribe a menos que overwrite sea verdadero.
Cómo funciona
Tres pasos, sin tarea de teoría.
01 · Introduce un archivo MIDI — cualquier cosa que ya tengas: un boceto, una pista, un arreglo completo. MIDIRestyle lee las pistas, detecta la tonalidad y te muestra lo que encontró.
02 · Elige el estilo objetivo — busca en la biblioteca por nombre o tradición: maqam, melakarta, gamelan, wǔshēng, afinaciones de koto, los modos eclesiásticos. Navega con las flechas por la lista y la transformación se re-ejecuta con cada pulsación de tecla.
03 · Escúchalo convertido — reprodúcelo en la aplicación, alterna entre original y re-estilizado sobre la marcha, luego consérvalo, ajústalo o prueba otro.
Qué incluye
Más que un convertidor — un lugar para examinar el resultado.
- Vista de piano roll y pentagrama — ve el archivo como un piano roll con teclado y regla de compases, o como sistemas envueltos de notación grabada real con un cursor de reproducción que sigue la reproducción. Haz clic en el pentagrama para buscar.
- Rueda de escalas — la vista de grados dispone la escala como una rueda, con los grados en su ángulo real en cents contra las doce marcas de temperamento igual. Esa brecha es el punto: la tercera neutra del Maqam Rast se sitúa visiblemente entre una mayor y una menor. Su mobiliario permanece fijo mientras la reproducción lo recolorea, para que puedas observar en qué grados se apoya realmente la música.
- Comparar A/B con el original — alterna entre la fuente y la versión re-estilizada durante la reproducción, sin salir hacia un DAW.
- Exportación microtonal precisa — las escalas que no se asientan en 12-TET (maqam, dastgāh, slendro, pelog, tailandés de 7 iguales) se exportan con pitch bend por canal, un canal por cada desviación de cents distinta en lugar de por voz, para que la afinación sobreviva al viaje de ida y vuelta. La vista previa y el archivo exportado salen del mismo camino de código y no pueden discrepar.
- Salida MIDI y MusicXML — guarda el resultado como archivo MIDI, o exporta MusicXML para llevar la notación a Sibelius, MuseScore o Dorico.
- Portátil y privado — un único
.exeautocontenido. Sin instalador, sin cuenta, sin carga. Cópialo a una memoria USB y ejecútalo.
El re-estilizado es solo re-mapeo de tono — nunca toca el ritmo, la ornamentación ni la articulación.
La biblioteca de escalas
171 escalas vienen con la aplicación, agrupadas por tradición:
| Tradición | Escalas | Algunas de ellas |
|---|---|---|
| Asia del Sur | 82 | Los diez thaats, más las 72 melakarta carnáticas — generadas a partir de las posiciones Ri/Ga, Dha/Ni y Ma en lugar de escritas a mano |
| Oriente Medio | 16 | Maqam Rast, Bayati, Hijaz, Saba — en afinaciones notadas en cuartos de tono y de entonación justa |
| Türkiye | 15 | Makam Rast, Uşşak, Hüseyni, Buselik (AEU) |
| Asia Oriental | 13 | Gong, Shang, Jiao, Zhi, Yu (wǔshēng); japonés in, yō, hirajōshi, iwato, kumoi; coreano p'yŏngjo, kyemyŏnjo |
| Europa | 12 | Los siete modos eclesiásticos, menor armónica y melódica, doble armónica, menor húngara, doria ucraniana |
| Sudeste Asiático | 11 | Slendro y pelog medidos de gamelan nombrados, más el tailandés de 7 tonos, idealizado y medido |
| Persia | 10 | Dastgāh-e Shur, Homāyun, Māhur y otros, sobre los intervalos de Farhat |
| África | 9 | Kiñit etíope (tizita, bati, ambassel, anchihoye), equiheptatónico, equipentatónico, armónicos de música de arco |
| Américas | 3 | Hexatónica de blues, pentatónica menor y mayor |
Cada escala escrita a mano lleva una cita de fuente, y una prueba falla la compilación si falta una —
valores de cents incorrectos hacen una aplicación incorrecta, y ese no es el tipo de error que una prueba mecánica jamás
detectaría. También puedes crear las tuyas en el editor de escalas, o importar archivos Scala .scl.
Cómo obtenerlo
Descarga MIDIRestyle.exe desde la última versión
— un único archivo autocontenido, 51.2 MB, Windows x64, sin instalador. Cópialo en cualquier lugar (incluida una
memoria USB) y ejecútalo.
La configuración y la biblioteca de escalas escribible viven en una carpeta scales/ escrita junto al exe en el primer
inicio, con respaldo a %APPDATA% cuando esa ubicación no es escribible (una memoria de solo lectura, Program
Files). Establecer MIDIRESTYLE_DATA_ROOT a una ruta absoluta anula ambas.
Compilar desde el código fuente
Requiere el SDK de .NET 10 (fijado en global.json).
dotnet build # whole solution
dotnet test # all tests - do NOT add --nologo, see below
dotnet run --project src/MidiRestyle.App # launch the app
Una sola prueba o clase:
dotnet test --filter "FullyQualifiedName~ChannelAllocatorTests"
dotnet test --filter "FullyQualifiedName~ChannelAllocatorTests.RastAllocatesTwoChannels"
Nunca pases --nologo a dotnet test. El SDK de .NET 10 reenvía argumentos no reconocidos a la
aplicación de prueba subyacente, que rechaza la bandera e informa "Zero tests ran" incluso cuando cada
prueba pasó. Si dotnet test alguna vez informa cero, lee el bloque Standard output: por ensamblado —
ahí es donde está el error real.
La versión portátil
dotnet publish src/MidiRestyle.App -c Release -r win-x64 --self-contained true `
-p:PublishSingleFile=true `
-p:IncludeNativeLibrariesForSelfExtract=true `
-p:EnableCompressionInSingleFile=true
La carpeta de publicación debe terminar conteniendo exactamente un archivo — esa es toda la promesa de portabilidad.
Esto se aplica automáticamente: una compuerta integrada en MidiRestyle.App.csproj se ejecuta después de cada publicación
y falla la compilación ruidosamente si aparece un segundo archivo (una biblioteca nativa extraviada, un símbolo de depuración,
lo que sea). Atrapó un error real durante el desarrollo — consulta los comentarios del csproj para el mecanismo, y
CLAUDE.md para el historial completo.
Estado del proyecto
v1 está completa, con cinco versiones encima. Las doce fases de compilación están hechas — el modelo de dominio, la biblioteca de 171 escalas, la detección de tonalidad, el motor de re-estilizado, la asignación de canales para la exportación microtonal, la reproducción de audio con un interruptor A/B, y la publicación portátil de un solo archivo — así como las tres características que v1 difirió: exportación MusicXML, la vista de pentagrama y la vista de grados.
Desde entonces: v1.2 reconstruyó la notación como una página envuelta de sistemas con un cursor de reproducción que sigue y convirtió la vista de grados en una rueda de escalas; v1.3 añadió clic para buscar en el pentagrama y contornos reales de claves y silencios; v1.4 añadió la ventana Acerca de y agrupó los avisos de licencia de terceros; v1.5 puso conteos de compases en el panel de archivos, un teclado y una regla de compases en el piano roll, y reconstruyó la rueda de grados para que su mobiliario permanezca fijo y la reproducción solo la recoloree; y v1.6 añadió el servidor MCP integrado, para que el mismo exe pueda ser controlado por un agente.
Última verificación en verde en v1.6.0: 1572 pruebas, 0 advertencias, y una publicación portátil de exactamente un archivo de 51.2 MB.
Dónde vive la documentación real
Este README es el escaparate. Para algo más profundo:
.claude/plan/PLAN-midi-restyle.md— la especificación autoritativa.claude/STRUCTURE.md— mapa del diseño del repositorio.claude/PROGRESS.md— estado de implementación fase por fase y notas de traspasoCLAUDE.md— arquitectura y los invariantes estructurales detrás del diseño
Licencia
MIDIRestyle se publica bajo la Licencia MIT.
El .exe incluido es autocontenido, por lo que también redistribuye sus dependencias y el runtime de .NET.
Sus licencias y avisos de derechos de autor se reproducen completos en
THIRD-PARTY-NOTICES.txt — MIT para la mayoría, BSD para ANGLE y Skia,
y la SIL Open Font License para la tipografía Inter, que requiere que su licencia se
distribuya junto con la fuente.
Ese último requisito es por qué los avisos están incrustados en el ejecutable además de publicados aquí.
Una compilación de un solo archivo no deja espacio para un archivo compañero junto al .exe, así que el texto viaja
dentro de él y puede leerse desde Acerca de → avisos de terceros; un .exe copiado lleva sus avisos
consigo.