Skip to main content
Glama

theory_scale

Read-onlyIdempotent

Generates seven scale degrees, pitch classes, MIDI notes, and diatonic chords as numerals, triads, or sevenths for a chosen root and mode, helping you keep melodies and bass lines in key.

Instructions

The seven degrees of a key (names, pitch classes, MIDI notes in the middle-C octave) and its diatonic chords as numerals, triads and sevenths. Use it to stay in key when writing melodies and bass lines.

Input Schema

NameRequiredDescriptionDefault
modeNoMode (default major): major, minor, dorian, phrygian, lydian, mixolydian, locrian, harmonic_minor, melodic_minor, phrygian_dominant.
rootYesTonic: C, C#, Db, D … B.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare read-only, idempotent, non-open-world, non-destructive behavior. The description adds useful behavioral context by saying exactly what information is returned, which matters because there is no output schema; it could still say more about output structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, both useful: the first front-loads the returned musical data, and the second immediately gives a practical usage cue. There is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only lookup tool with no output schema, the description supplies the key return contents and a usage context. It is nearly complete, though a little more detail about the output shape would make it fully self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the root and mode parameters are already well documented in the schema. The description adds only the general idea of a key and the middle-C octave for MIDI notes, not additional parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the exact resource and contents: seven scale degrees with names, pitch classes, MIDI notes in the middle-C octave, plus diatonic chords as numerals, triads, and sevenths. It is clear what the tool provides, though it does not explicitly distinguish itself from nearby theory tools such as theory_chord or theory_progression.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a concrete use case: staying in key when writing melodies and bass lines. It does not explain when to avoid this tool or route to a sibling like theory_harmonize or theory_chord, so it falls short of full alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools