# Roman Numeral Converter MCP MCP

> Roman Numeral Converter handles musical theory translations on demand. It takes a sequence of chords, like C-Am-F-G, and instantly converts them into their functional Roman numeral equivalents (I-vi-IV-V). You can also shift the entire progression to a new key while keeping all the underlying harmonic functions intact.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** music-theory, chords, transposition, roman-numerals, musicians

## Description

This MCP is for musicians and music theorists who need to translate between two systems: practical chord sheets and formal harmonic notation. Instead of manually cross-referencing books or writing out theoretical analysis, you give your agent a sequence of chords, and it handles the conversion instantly. You can turn 'C-Am-F-G' into 'I-vi-IV-V,' or vice versa. The system also manages automatic transposition, letting you move any progression to a new key without losing its musical structure. If you need to chain this analysis with other data—say, taking the resulting harmonic function and feeding it into a different workflow for metadata lookup—you know that Vinkius handles all of that securely through its zero-trust proxy. Your keys are used only in transit, meaning they never sit on disk, keeping your complex musical data safe throughout the entire analysis process.

## Prompt Examples

**Prompt:** 
```
Parse this progression: C-Am-F-G
```

**Response:** 
```
The parsed chords are: C, Am, F, G.
```

**Prompt:** 
```
What is the harmonic function of Am in the key of C?
```

**Response:** 
```
In the key of C, Am is the vi (minor) degree, which you can find using `resolve_harmonic_function`.
```

**Prompt:** 
```
Transpose I-vi-IV-V from C to G.
```

**Response:** 
```
The transposed progression in G is: G, Em, C, D, calculated via `transpose_progression`.
```

## Capabilities

### Analyze Chord Progressions
Convert a list of chords into their corresponding Roman numeral functional notation.

### Identify Harmonic Function
Determine the theoretical function (like tonic or subdominant) of any given chord within a specific key.

### Shift Key Signature
Transpose an entire chord progression from one musical key to another while preserving its harmonic relationship.

### Fetch Chord Details
Retrieve specific theoretical or structural data associated with individual chords.

## Use Cases

### Analyzing Key Changes for Composition
A composer needs to see how a signature progression (I-vi-IV-V) sounds if it moves from C major to E minor. They prompt the agent to 'Transpose I-vi-IV-V from C to E.' The MCP uses `transpose_progression` and returns the exact chords in the new key, letting them compose immediately.

### Writing a Theory Paper
A music theorist has dozens of chord examples. Instead of writing out every analysis by hand, they prompt the agent to 'Resolve the harmonic function for these 20 chords in G major.' The MCP uses `resolve_harmonic_function` repeatedly to build the full theoretical framework.

### Cleaning Up Raw Data Input
A student submits a chord list that is messy and includes typos. They first use `parse_progression_string` to clean up the input, getting a structured list of chords before running any other analysis.

### Cross-Referencing Chord Details
A student wants to know if an Am chord behaves differently in C major versus F minor. They use `get_chord_metadata` on the specific chord name, letting them compare its structural role across different contexts.

## Benefits

- Stop manual conversions. You can give it a progression like C-Am-F-G and get the Roman numeral equivalent (I-vi-IV-V) immediately.
- Need to change keys? Use `transpose_progression` to shift any chord sequence from one key to another without losing its harmonic integrity.
- `resolve_harmonic_function` figures out exactly what a chord's role is in the key, saving you hours of theoretical cross-referencing.
- The MCP handles initial cleanup with `parse_progression_string`, structuring messy input so subsequent analysis can run perfectly.
- You don't have to copy-paste results. You can chain this output into other workflows—like running the resulting harmonic function through a metadata lookup.

## How It Works

The bottom line is you feed it chords and get back a precise, theoretically accurate musical translation.

1. First, tell the MCP what you're working with: provide a chord progression (e.g., 'C-Am-F-G') and specify if you need it parsed or transposed.
2. Next, your agent runs the conversion against its database of musical theory rules, calculating the function or shifting the key in memory.
3. You get back the clean result: either the Roman numeral sequence (I-vi-IV-V) or the fully transposed chord list in the new key.

## Frequently Asked Questions

**What can this tool do?**
It parses chord progressions, identifies harmonic functions, and transposes sequences using `parse_progression_string` and `transpose_progression`. Tools available: `your_tool_name`.

**How do I use the transposition feature?**
Use `transpose_progression` by providing your original progression, the source key, and the target key.

**Does it support chord extensions?**
Yes, you can use `get_chord_metadata` to retrieve detailed information including extensions like 7, 9, or 11.

**What input format does the `parse_progression_string` tool require?**
It expects chords separated by hyphens, like C-Am-F-G. The MCP automatically recognizes common chord notations and handles them in sequence.

**If I use `resolve_harmonic_function` with an unusual or non-diatonic key, how does the system handle it?**
The tool won't fail; instead, it returns a specific error message and suggests possible alternative keys. You get clear feedback explaining why the function couldn't resolve.

**Does the Roman Numeral Converter store any chord data I send to `get_chord_metadata`?**
No, your musical chords are processed within a secure V8 sandbox and aren't saved. The system doesn't retain your information after the call is complete.

**Can I use the `transpose_progression` tool for progressions that span multiple octaves?**
Yes, the MCP handles octave shifts automatically while preserving the underlying harmonic function. Just make sure to input your progression clearly formatted.

**Do I need deep music theory knowledge to use this MCP?**
No. You just send the basic chord names you're working with, and your agent handles all the complex conversion work into Roman numerals for you.