Servidor MCP

Zachary Roth Music

com.zacharyr0th.music/public
Medios y contenido Público y accesible MCP 2025-11-25

Qué hace este MCP

Analyzes and generates bounded cyclic musical scales, exports MusicXML, and searches public recordings, releases, tracks, and sheet-music resources.

analyze_cyclic_scale
Analyze Cyclic Scale
Use this when an agent needs to analyze one bounded cyclic interval word, including its pitch path, rotations, reversal partners, reflection class, and limited-transposition status. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['modulus', 'intervalWord'], 'properties': {'modulus': {'type': 'integer', 'maximum': 16, 'minimum': 5}, 'intervalWord': {'type': 'array', 'items': {'type': 'integer', 'maximum': 16, 'minimum': 1}, 'maxItems': 10, 'minItems': 2}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
calculate_equal_division_frequency
Calculate Equal Division Frequency
Use this when an agent needs to calculate one deterministic frequency in an equal division of the octave with an optional concert-root transposition. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['divisionsPerCycle', 'division'], 'properties': {'division': {'type': 'number', 'maximum': 16, 'minimum': 0}, 'baseFrequency': {'type': 'number', 'default': 261.63, 'maximum': 20000, 'minimum': 20}, 'rootSemitones': {'type': 'integer', 'default': 0, 'maximum': 11, 'minimum': 0}, 'divisionsPerCycle': {'type': 'integer', 'maximum': 16, 'minimum': 5}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
classify_cyclic_mode
Classify Cyclic Mode
Use this when an agent needs to classify one bounded cyclic mode by acting group: its rotation, reversal, and set classes; transposition-symmetry kernel; reflection structure; interval and Fourier content; evenness and generation; and every direct-sum factorization. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['modulus', 'intervalWord'], 'properties': {'modulus': {'type': 'integer', 'maximum': 16, 'minimum': 5}, 'intervalWord': {'type': 'array', 'items': {'type': 'integer', 'maximum': 16, 'minimum': 1}, 'maxItems': 10, 'minItems': 2}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
export_cyclic_scale_musicxml
Export Cyclic Scale Musicxml
Use this when an agent needs to create a bounded, two-measure MusicXML representation of a 12-division cyclic scale for local import, in the mixed, sharp, or flat accidental spelling. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['modulus', 'intervalWord'], 'properties': {'root': {'type': 'integer', 'default': 0, 'maximum': 11, 'minimum': 0}, 'modulus': {'type': 'number', 'const': 12}, 'accidentals': {'enum': ['mixed', 'sharp', 'flat'], 'type': 'string', 'default': 'mixed'}, 'intervalWord': {'type': 'array', 'items': {'type': 'integer', 'maximum': 16, 'minimum': 1}, 'maxItems': 10, 'minItems': 2}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
generate_cyclic_scales
Generate Cyclic Scales
Use this when an agent needs to generate at most 24 canonical cyclic interval words under bounded equal-division, cardinality, interval, reflection, and transpositional-symmetry constraints. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['modulus', 'notes', 'maxStep'], 'properties': {'notes': {'type': 'integer', 'maximum': 10, 'minimum': 2}, 'maxStep': {'type': 'integer', 'maximum': 8, 'minimum': 1}, 'modulus': {'type': 'integer', 'maximum': 16, 'minimum': 5}, 'reflection': {'enum': ['any', 'mixed', 'self', 'paired', 'external'], 'type': 'string', 'default': 'any'}, 'limitedTransposition': {'enum': ['any', 'yes', 'no'], 'type': 'string', 'default': 'any'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
get_composition
Get Composition
Use this when an agent needs to get public recordings matching a composition title. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
get_release
Get Release
Use this when an agent needs to get one public release by slug. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
get_sheet_music
Get Sheet Music
Use this when an agent needs to check for an explicitly published sheet-music resource. Never infers rights or availability. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
get_track
Get Track
Use this when an agent needs to get one public track by blob identifier or title. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
list_releases
List Releases
Use this when an agent needs to list public album and release records. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
search_music
Search Music
Use this when an agent needs to search the public music catalog. Do not infer ownership, licensing, or unpublished availability.
Solo lectura
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}
Añadido
export_cyclic_scale_musicxml
17 de September de 2026 a las 12:38
Añadido
calculate_equal_division_frequency
17 de September de 2026 a las 12:38
Añadido
classify_cyclic_mode
17 de September de 2026 a las 12:38
Añadido
analyze_cyclic_scale
17 de September de 2026 a las 12:38
Añadido
generate_cyclic_scales
17 de September de 2026 a las 12:38
Añadido
get_sheet_music
17 de September de 2026 a las 12:38
Añadido
get_composition
17 de September de 2026 a las 12:38
Añadido
get_track
17 de September de 2026 a las 12:38
Añadido
get_release
17 de September de 2026 a las 12:38
Añadido
list_releases
17 de September de 2026 a las 12:38
Añadido
search_music
17 de September de 2026 a las 12:38